at.dms.kjc
Class CEmittedTextType

java.lang.Object
  extended by at.dms.util.Utils
      extended by at.dms.kjc.CType
          extended by at.dms.kjc.CEmittedTextType
All Implemented Interfaces:
Constants, DeepCloneable, Serializable

public class CEmittedTextType
extends CType

See Also:
Serialized Form

Field Summary
 
Fields inherited from class at.dms.kjc.CType
instance, type
 
Fields inherited from class at.dms.util.Utils
EMPTY_LIST, getForLoopCallers
 
Fields inherited from interface at.dms.kjc.Constants
CMP_VERSION, JAV_CLASS, JAV_CLONE, JAV_CLONEABLE, JAV_CONSTRUCTOR, JAV_ERROR, JAV_EXCEPTION, JAV_INIT, JAV_LENGTH, JAV_NAME_SEPARATOR, JAV_OBJECT, JAV_OUTER_THIS, JAV_RUNTIME, JAV_RUNTIME_EXCEPTION, JAV_STATIC_INIT, JAV_STRING, JAV_STRINGBUFFER, JAV_THIS, JAV_THROWABLE, OPE_BAND, OPE_BNOT, OPE_BOR, OPE_BSR, OPE_BXOR, OPE_EQ, OPE_GE, OPE_GT, OPE_LE, OPE_LNOT, OPE_LT, OPE_MINUS, OPE_NE, OPE_PERCENT, OPE_PLUS, OPE_POSTDEC, OPE_POSTINC, OPE_PREDEC, OPE_PREINC, OPE_SIMPLE, OPE_SL, OPE_SLASH, OPE_SR, OPE_STAR, TID_ARRAY, TID_BIT, TID_BOOLEAN, TID_BYTE, TID_CHAR, TID_CLASS, TID_DOUBLE, TID_FLOAT, TID_INT, TID_LONG, TID_SHORT, TID_VECTOR, TID_VOID, VECTOR_EMPTY
 
Fields inherited from interface at.dms.classfile.Constants
ACC_ABSTRACT, ACC_FINAL, ACC_INLINE, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, ATT_CODE, ATT_CONSTANTVALUE, ATT_DEPRECATED, ATT_EXCEPTIONS, ATT_GENERIC, ATT_INNERCLASSES, ATT_LINENUMBERTABLE, ATT_LOCALVARIABLETABLE, ATT_SOURCEFILE, ATT_SYNTHETIC, CST_CLASS, CST_DOUBLE, CST_FIELD, CST_FLOAT, CST_INTEGER, CST_INTERFACEMETHOD, CST_LONG, CST_METHOD, CST_NAMEANDTYPE, CST_STRING, CST_UTF8, ENV_DEBUG_MODE, ENV_USE_CACHE, JAVA_MAGIC, JAVA_MAJOR, JAVA_MINOR, MAX_CODE_PER_METHOD, opc_aaload, opc_aastore, opc_aconst_null, opc_aload, opc_aload_0, opc_aload_1, opc_aload_2, opc_aload_3, opc_anewarray, opc_areturn, opc_arraylength, opc_astore, opc_astore_0, opc_astore_1, opc_astore_2, opc_astore_3, opc_athrow, opc_baload, opc_bastore, opc_bipush, opc_caload, opc_castore, opc_checkcast, opc_d2f, opc_d2i, opc_d2l, opc_dadd, opc_daload, opc_dastore, opc_dcmpg, opc_dcmpl, opc_dconst_0, opc_dconst_1, opc_ddiv, opc_dload, opc_dload_0, opc_dload_1, opc_dload_2, opc_dload_3, opc_dmul, opc_dneg, opc_drem, opc_dreturn, opc_dstore, opc_dstore_0, opc_dstore_1, opc_dstore_2, opc_dstore_3, opc_dsub, opc_dup, opc_dup_x1, opc_dup_x2, opc_dup2, opc_dup2_x1, opc_dup2_x2, opc_f2d, opc_f2i, opc_f2l, opc_fadd, opc_faload, opc_fastore, opc_fcmpg, opc_fcmpl, opc_fconst_0, opc_fconst_1, opc_fconst_2, opc_fdiv, opc_fload, opc_fload_0, opc_fload_1, opc_fload_2, opc_fload_3, opc_fmul, opc_fneg, opc_frem, opc_freturn, opc_fstore, opc_fstore_0, opc_fstore_1, opc_fstore_2, opc_fstore_3, opc_fsub, opc_getfield, opc_getstatic, opc_goto, opc_goto_w, opc_i2b, opc_i2c, opc_i2d, opc_i2f, opc_i2l, opc_i2s, opc_iadd, opc_iaload, opc_iand, opc_iastore, opc_iconst_0, opc_iconst_1, opc_iconst_2, opc_iconst_3, opc_iconst_4, opc_iconst_5, opc_iconst_m1, opc_idiv, opc_if_acmpeq, opc_if_acmpne, opc_if_icmpeq, opc_if_icmpge, opc_if_icmpgt, opc_if_icmple, opc_if_icmplt, opc_if_icmpne, opc_ifeq, opc_ifge, opc_ifgt, opc_ifle, opc_iflt, opc_ifne, opc_ifnonnull, opc_ifnull, opc_iinc, opc_iload, opc_iload_0, opc_iload_1, opc_iload_2, opc_iload_3, opc_imul, opc_ineg, opc_instanceof, opc_invokeinterface, opc_invokespecial, opc_invokestatic, opc_invokevirtual, opc_ior, opc_irem, opc_ireturn, opc_ishl, opc_ishr, opc_istore, opc_istore_0, opc_istore_1, opc_istore_2, opc_istore_3, opc_isub, opc_iushr, opc_ixor, opc_jsr, opc_jsr_w, opc_l2d, opc_l2f, opc_l2i, opc_ladd, opc_laload, opc_land, opc_lastore, opc_lcmp, opc_lconst_0, opc_lconst_1, opc_ldc, opc_ldc_w, opc_ldc2_w, opc_ldiv, opc_lload, opc_lload_0, opc_lload_1, opc_lload_2, opc_lload_3, opc_lmul, opc_lneg, opc_lookupswitch, opc_lor, opc_lrem, opc_lreturn, opc_lshl, opc_lshr, opc_lstore, opc_lstore_0, opc_lstore_1, opc_lstore_2, opc_lstore_3, opc_lsub, opc_lushr, opc_lxor, opc_monitorenter, opc_monitorexit, opc_multianewarray, opc_new, opc_newarray, opc_nop, opc_pop, opc_pop2, opc_putfield, opc_putstatic, opc_ret, opc_return, opc_saload, opc_sastore, opc_sipush, opc_swap, opc_tableswitch, opc_wide, opc_xxxunusedxxx, POO_ASCII_CONSTANT, POO_CLASS_CONSTANT, POO_DOUBLE_CONSTANT, POO_FLOAT_CONSTANT, POO_INTEGER_CONSTANT, POO_LONG_CONSTANT, POO_NAT_CONSTANT, POO_REF_CONSTANT, POO_STRING_CONSTANT, TYP_ADDRESS, TYP_DOUBLE, TYP_FLOAT, TYP_INT, TYP_LONG, TYP_REFERENCE, TYP_VOID
 
Constructor Summary
CEmittedTextType()
           
CEmittedTextType(int typeId)
           
CEmittedTextType(Object[] parts)
           
CEmittedTextType(String typeString)
           
 
Method Summary
protected  void appendSignature(SimpleStringBuffer buffer)
          Appends the VM signature of this type to the specified buffer.
 void checkType(CContext context)
          check that type is valid necessary to resolve String into java/lang/String
 Object deepClone()
          Returns a deep clone of this object.
protected  void deepCloneInto(CEmittedTextType other)
          Clones all fields of this into
 Object[] getParts()
           
 int getSize()
          Returns the stack size used by a value of this type.
 int getSizeInC()
          Returns the stack size (conservative estimate of maximum number of bytes needed in C on 32-bit machine) used by a value of this type.
 boolean isAssignableTo(CType dest)
          Can this type be converted to the specified type by assignment conversion (JLS 5.2) ?
 boolean isCastableTo(CType dest)
          Can this type be converted to the specified type by casting conversion (JLS 5.5) ?
 String toString()
          Transforms this type to a string
 
Methods inherited from class at.dms.kjc.CType
checked, deepCloneInto, equals, genMethodSignature, getArrayLoadOpcode, getArrayStoreOpcode, getCClass, getLoadOpcode, getReturnOpcode, getSignature, getStoreOpcode, getTypeID, isArrayType, isCheckedException, isClassType, isFloatingPoint, isNumeric, isOrdinal, isPrimitive, isReference, parseMethodSignature, parseSignature
 
Methods inherited from class at.dms.util.Utils
asPercent, cellMathEquivalent, cMathEquivalent, cppMathEquivalent, deepCloneInto, equalArrays, fail, getEnvironmentVariable, getExpression, hasPeeks, initArray, initArray, initLiteralArray, intArrayToList, isMathMethod, isUniform, kopi_assert, kopi_assert, makeCountdownForLoop, makeDotFileName, makeForLoop, makeForLoop, makeForLoop, makeForLoopFieldIndex, makeForLoopLocalIndex, nextPow2, passThruParens, peelMarkers, popBeforePeek, readFile, removeUnusedPops, replaceAll, setupDotFileName, simplifyMathMethod, splitQualifiedName, splitQualifiedName, toArray, toIntArray, toVector, voidToInt, writeFile
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CEmittedTextType

public CEmittedTextType()

CEmittedTextType

public CEmittedTextType(int typeId)

CEmittedTextType

public CEmittedTextType(String typeString)

CEmittedTextType

public CEmittedTextType(Object[] parts)
Method Detail

getParts

public Object[] getParts()

appendSignature

protected void appendSignature(SimpleStringBuffer buffer)
Description copied from class: CType
Appends the VM signature of this type to the specified buffer.

Specified by:
appendSignature in class CType

checkType

public void checkType(CContext context)
               throws UnpositionedError
Description copied from class: CType
check that type is valid necessary to resolve String into java/lang/String

Specified by:
checkType in class CType
Throws:
UnpositionedError - this error will be positioned soon

getSize

public int getSize()
Description copied from class: CType
Returns the stack size used by a value of this type.

Specified by:
getSize in class CType

getSizeInC

public int getSizeInC()
Description copied from class: CType
Returns the stack size (conservative estimate of maximum number of bytes needed in C on 32-bit machine) used by a value of this type.

Specified by:
getSizeInC in class CType

isAssignableTo

public boolean isAssignableTo(CType dest)
Description copied from class: CType
Can this type be converted to the specified type by assignment conversion (JLS 5.2) ?

Specified by:
isAssignableTo in class CType
Parameters:
dest - the destination type
Returns:
true iff the conversion is valid

isCastableTo

public boolean isCastableTo(CType dest)
Description copied from class: CType
Can this type be converted to the specified type by casting conversion (JLS 5.5) ?

Specified by:
isCastableTo in class CType
Parameters:
dest - the destination type
Returns:
true iff the conversion is valid

toString

public String toString()
Description copied from class: CType
Transforms this type to a string

Specified by:
toString in class CType

deepClone

public Object deepClone()
Returns a deep clone of this object.

Specified by:
deepClone in interface DeepCloneable
Overrides:
deepClone in class CType

deepCloneInto

protected void deepCloneInto(CEmittedTextType other)
Clones all fields of this into
pre
other