public class Types
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static byte |
T_ARRAY |
static byte |
T_BOOLEAN |
static byte |
T_BYTE |
static byte |
T_CHAR |
static byte |
T_DOUBLE |
static byte |
T_FLOAT |
static byte |
T_INT |
static byte |
T_LONG |
static byte |
T_NONE |
static byte |
T_REFERENCE |
static byte |
T_SHORT |
static byte |
T_VOID |
Constructor and Description |
---|
Types() |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
asTypeName(java.lang.String type) |
static int |
booleanToInt(boolean b) |
static java.lang.String |
dequalify(java.lang.String typeName) |
static long |
doubleToLong(double d) |
static int |
floatToInt(float f) |
static java.lang.String |
getArgumentSignature(java.lang.String[] typeNames,
boolean qualified) |
static int |
getArgumentsSize(java.lang.String sig)
get size in stack slots (ints), excluding this
|
static java.lang.String[] |
getArgumentTypeNames(java.lang.String signature) |
static byte[] |
getArgumentTypes(java.lang.String signature) |
static java.lang.String |
getArrayElementType(java.lang.String type) |
static java.lang.String |
getBoxedType(byte type) |
static byte |
getBuiltinType(java.lang.String typeName) |
static byte |
getBuiltinTypeFromSignature(java.lang.String signature) |
static java.lang.String |
getClassNameFromSignature(java.lang.String signature) |
static java.lang.String |
getClassNameFromTypeName(java.lang.String typeName)
get the canonical representation of a type name, which happens to be
(1) the name of the builtin type (e.g.
|
static java.lang.String |
getComponentTerminal(java.lang.String type) |
static java.lang.String |
getDequalifiedArgumentSignature(java.lang.String sig) |
static java.lang.String |
getDequalifiedMethodSignature(java.lang.String mName) |
static java.lang.String |
getDequalifiedTypeName(java.lang.String sig) |
static java.lang.String |
getElementDescriptorOfType(int arrayType)
thoses are according to the arrayType codes of the newarray JVMS definition
|
static java.lang.String |
getJNIMangledMethodName(java.lang.reflect.Method m) |
static java.lang.String |
getJNIMangledMethodName(java.lang.String cls,
java.lang.String name,
java.lang.String signature) |
static java.lang.String |
getJNIMethodName(java.lang.String mangledName)
return the name part of a JNI mangled method name (which is of
course not completely safe - you should only use it if you know
this is a JNI name)
|
static java.lang.String |
getJNISignature(java.lang.String mangledName)
get the argument type part of the signature out of a
JNI mangled method name.
|
static java.lang.String |
getJNITypeCode(java.lang.String type)
type is supposed to be Class.getName conforming, i.e.
|
static int |
getNumberOfArguments(java.lang.String signature) |
static int |
getNumberOfStackSlots(java.lang.String signature,
boolean isStatic) |
static byte |
getReturnBuiltinType(java.lang.String signature) |
static java.lang.String |
getReturnTypeName(java.lang.String signature) |
static java.lang.String |
getReturnTypeSignature(java.lang.String signature) |
static java.lang.String |
getSignatureName(java.lang.String methodDecl)
return the JPF internal representation of a method signature that is given
in dot-notation (like javap),
e.g.
|
static byte |
getTypeCode(java.lang.String signature) |
static java.lang.String |
getTypeName(java.lang.String signature)
return the qualified signature name according to JLS 6.7 (e.g.
|
static java.lang.String |
getTypeSignature(java.lang.String type,
boolean asDotNotation) |
static int |
getTypeSize(byte typeCategory) |
static int |
getTypeSize(java.lang.String signature) |
static int |
getTypeSizeInBytes(java.lang.String signature)
what would be the info size in bytes, not words
(we ignore 64bit machines for now)
|
static byte |
getUnboxedType(java.lang.String typeName) |
static int |
hiDouble(double d) |
static int |
hiLong(long l) |
static boolean |
instanceOf(java.lang.String type,
java.lang.String ofType) |
static double |
intsToDouble(int l,
int h) |
static long |
intsToLong(int l,
int h) |
static boolean |
intToBoolean(int i) |
static float |
intToFloat(int i) |
static boolean |
isArray(java.lang.String type) |
static boolean |
isBasicType(java.lang.String typeName) |
static boolean |
isReference(java.lang.String type) |
static boolean |
isReferenceSignature(java.lang.String signature) |
static boolean |
isTypeCode(java.lang.String t) |
static int |
loDouble(double d) |
static int |
loLong(long l) |
static double |
longToDouble(long l) |
public static final byte T_NONE
public static final byte T_BOOLEAN
public static final byte T_BYTE
public static final byte T_CHAR
public static final byte T_SHORT
public static final byte T_INT
public static final byte T_LONG
public static final byte T_FLOAT
public static final byte T_DOUBLE
public static final byte T_REFERENCE
public static final byte T_ARRAY
public static final byte T_VOID
public static byte[] getArgumentTypes(java.lang.String signature)
public static java.lang.String[] getArgumentTypeNames(java.lang.String signature)
public static java.lang.String dequalify(java.lang.String typeName)
public static java.lang.String getDequalifiedMethodSignature(java.lang.String mName)
public static java.lang.String getDequalifiedArgumentSignature(java.lang.String sig)
public static java.lang.String getDequalifiedTypeName(java.lang.String sig)
public static java.lang.String getArgumentSignature(java.lang.String[] typeNames, boolean qualified)
public static int getArgumentsSize(java.lang.String sig)
public static java.lang.String getArrayElementType(java.lang.String type)
public static java.lang.String getComponentTerminal(java.lang.String type)
public static byte getBuiltinTypeFromSignature(java.lang.String signature)
public static java.lang.String getJNISignature(java.lang.String mangledName)
public static java.lang.String getJNIMangledMethodName(java.lang.reflect.Method m)
public static java.lang.String getJNIMangledMethodName(java.lang.String cls, java.lang.String name, java.lang.String signature)
public static java.lang.String getJNIMethodName(java.lang.String mangledName)
public static java.lang.String getJNITypeCode(java.lang.String type)
public static int getNumberOfStackSlots(java.lang.String signature, boolean isStatic)
public static int getNumberOfArguments(java.lang.String signature)
public static boolean isReferenceSignature(java.lang.String signature)
public static boolean isReference(java.lang.String type)
public static boolean isArray(java.lang.String type)
public static byte getReturnBuiltinType(java.lang.String signature)
public static java.lang.String getReturnTypeSignature(java.lang.String signature)
public static java.lang.String getReturnTypeName(java.lang.String signature)
public static java.lang.String getTypeSignature(java.lang.String type, boolean asDotNotation)
public static byte getBuiltinType(java.lang.String typeName)
public static java.lang.String getBoxedType(byte type)
public static byte getUnboxedType(java.lang.String typeName)
public static java.lang.String getClassNameFromSignature(java.lang.String signature)
public static java.lang.String getClassNameFromTypeName(java.lang.String typeName)
public static boolean isTypeCode(java.lang.String t)
public static boolean isBasicType(java.lang.String typeName)
public static byte getTypeCode(java.lang.String signature)
public static java.lang.String getTypeName(java.lang.String signature)
public static java.lang.String getElementDescriptorOfType(int arrayType)
public static int getTypeSizeInBytes(java.lang.String signature)
public static int getTypeSize(java.lang.String signature)
public static int getTypeSize(byte typeCategory)
public static java.lang.String asTypeName(java.lang.String type)
public static int booleanToInt(boolean b)
public static long doubleToLong(double d)
public static int floatToInt(float f)
public static int hiDouble(double d)
public static int hiLong(long l)
public static boolean instanceOf(java.lang.String type, java.lang.String ofType)
public static boolean intToBoolean(int i)
public static float intToFloat(int i)
public static double intsToDouble(int l, int h)
public static long intsToLong(int l, int h)
public static int loDouble(double d)
public static int loLong(long l)
public static double longToDouble(long l)
public static java.lang.String getSignatureName(java.lang.String methodDecl)