1 cananian 1.1.4.1 // HClassPrimitive.java, created Wed Dec 29 22:22:49 1999 by cananian 2 cananian 1.1.4.1 // Copyright (C) 1999 C. Scott Ananian <cananian@alumni.princeton.edu> 3 cananian 1.1.4.1 // Licensed under the terms of the GNU GPL; see COPYING for details. 4 cananian 1.1.4.1 package harpoon.ClassFile; 5 cananian 1.1.4.1 6 cananian 1.1.4.3 import java.lang.reflect.Modifier; 7 cananian 1.1.4.1 /** 8 cananian 1.1.4.1 * <code>HClassPrimitive</code> is a simple <code>HClass</code> 9 cananian 1.1.4.1 * implementation to represent primitive types. 10 cananian 1.1.4.1 * 11 cananian 1.1.4.1 * @author C. Scott Ananian <cananian@alumni.princeton.edu> 12 cananian 1.2 * @version $Id: HClassPrimitive.java,v 1.2 2002/02/25 21:03:03 cananian Exp $ 13 cananian 1.1.4.1 */ 14 cananian 1.1.4.1 class HClassPrimitive extends HClassImpl { 15 cananian 1.1.4.1 final String name, descriptor; 16 cananian 1.1.4.1 HClassPrimitive(final String name, final String descriptor) { 17 cananian 1.1.4.1 super(Loader.systemLinker); 18 cananian 1.1.4.1 this.name = name; this.descriptor = descriptor; 19 cananian 1.1.4.1 } 20 cananian 1.1.4.1 public String getName() { return this.name; } 21 cananian 1.1.4.1 public String getDescriptor() { return this.descriptor; } 22 cananian 1.1.4.1 23 cananian 1.1.4.1 public HField[] getDeclaredFields () { return new HField [0]; } 24 cananian 1.1.4.1 public HMethod[] getDeclaredMethods() { return new HMethod[0]; } 25 cananian 1.1.4.1 public int getModifiers() { 26 cananian 1.1.4.3 // this is what java.lang.Class returns. 27 cananian 1.1.4.3 return Modifier.PUBLIC | Modifier.ABSTRACT | Modifier.FINAL; 28 cananian 1.1.4.1 } 29 cananian 1.1.4.1 public HClass getSuperclass() { return null; } 30 cananian 1.1.4.1 public HClass[] getInterfaces() { return new HClass[0]; } 31 cananian 1.1.4.1 public boolean isPrimitive() { return true; } 32 cananian 1.1.4.1 } 33 cananian 1.1.4.1 // set emacs indentation style. 34 cananian 1.1.4.1 // Local Variables: 35 cananian 1.1.4.1 // c-basic-offset:2 36 cananian 1.2 // End: