Package org.biojava.utils.bytecode
Class CodeUtils
- java.lang.Object
-
- org.biojava.utils.bytecode.CodeUtils
-
-
Field Summary
Fields Modifier and Type Field Description static intACC_ABSTRACTstatic intACC_FINALstatic intACC_INTERFACEstatic intACC_NATIVEstatic intACC_PRIVATEstatic intACC_PROTECTEDstatic intACC_PUBLICstatic intACC_STATICstatic intACC_STRICTstatic intACC_SUPERstatic intACC_SYNCHRONIZEDstatic intACC_TRANSIENTstatic intACC_VOLATILEstatic CodeGeneratorDO_NOTHINGstatic CodeClass[]EMPTY_LISTstatic CodeClassTYPE_BOOLEANstatic CodeClassTYPE_BYTEstatic CodeClassTYPE_CHARstatic CodeClassTYPE_DOUBLEstatic CodeClassTYPE_FLOATstatic CodeClassTYPE_INTstatic CodeClassTYPE_LONGstatic CodeClassTYPE_OBJECTstatic CodeClassTYPE_SHORTstatic CodeClassTYPE_VOID
-
Constructor Summary
Constructors Constructor Description CodeUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static StringclassListToString(CodeClass[] classes)Format an array of classes as a comma-seperated list.static booleanisFloatType(CodeClass cc)Returns true if the class is a floating point number.static booleanisIntegerType(CodeClass cc)Returns true if the class is an integer number.static intwordsForType(CodeClass cc)Number of words needed for local variables of this type.
-
-
-
Field Detail
-
ACC_PUBLIC
public static final int ACC_PUBLIC
- See Also:
- Constant Field Values
-
ACC_PRIVATE
public static final int ACC_PRIVATE
- See Also:
- Constant Field Values
-
ACC_PROTECTED
public static final int ACC_PROTECTED
- See Also:
- Constant Field Values
-
ACC_STATIC
public static final int ACC_STATIC
- See Also:
- Constant Field Values
-
ACC_FINAL
public static final int ACC_FINAL
- See Also:
- Constant Field Values
-
ACC_SUPER
public static final int ACC_SUPER
- See Also:
- Constant Field Values
-
ACC_SYNCHRONIZED
public static final int ACC_SYNCHRONIZED
- See Also:
- Constant Field Values
-
ACC_VOLATILE
public static final int ACC_VOLATILE
- See Also:
- Constant Field Values
-
ACC_TRANSIENT
public static final int ACC_TRANSIENT
- See Also:
- Constant Field Values
-
ACC_NATIVE
public static final int ACC_NATIVE
- See Also:
- Constant Field Values
-
ACC_INTERFACE
public static final int ACC_INTERFACE
- See Also:
- Constant Field Values
-
ACC_ABSTRACT
public static final int ACC_ABSTRACT
- See Also:
- Constant Field Values
-
ACC_STRICT
public static final int ACC_STRICT
- See Also:
- Constant Field Values
-
TYPE_FLOAT
public static final CodeClass TYPE_FLOAT
-
TYPE_DOUBLE
public static final CodeClass TYPE_DOUBLE
-
TYPE_SHORT
public static final CodeClass TYPE_SHORT
-
TYPE_BOOLEAN
public static final CodeClass TYPE_BOOLEAN
-
TYPE_OBJECT
public static final CodeClass TYPE_OBJECT
-
EMPTY_LIST
public static final CodeClass[] EMPTY_LIST
-
DO_NOTHING
public static final CodeGenerator DO_NOTHING
-
-
Constructor Detail
-
CodeUtils
public CodeUtils()
-
-
Method Detail
-
classListToString
public static String classListToString(CodeClass[] classes)
Format an array of classes as a comma-seperated list.The names of each class in classes will be seperated by a comma and a space and will use CodeClass.getName() to produce strings for each one. Their names will be present in the return value in the same order they are found in the classes array
- Parameters:
classes- the array of classes to format- Returns:
- a String containing the list of class names
-
wordsForType
public static int wordsForType(CodeClass cc)
Number of words needed for local variables of this type.Longs and doubles require 2 words (64 bits), where as everything else needs 1 word (32 bits). Void needs no words. This just hides that knowledge.
- Parameters:
cc- the CodeClass to check word size for- Returns:
- number of words needed for this type
-
isFloatType
public static boolean isFloatType(CodeClass cc)
Returns true if the class is a floating point number.Double and Float are floating point numbers. All other classes are not.
- Parameters:
cc- the class to check- Returns:
- true if the class can be used to represent floating point numbers
-
isIntegerType
public static boolean isIntegerType(CodeClass cc)
Returns true if the class is an integer number.All numeric types are integer (whole number) types, except for the floating point types. All other classes are not integer types.
- Parameters:
cc- the class to check- Returns:
- true if the class can be used to represent integer numbers
-
-