public abstract class Types
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
private static class |
Types.methodDescriptorCompiler |
private static class |
Types.signatureCompiler |
private static class |
Types.typeDescriptorCompiler |
private static class |
Types.typeDescriptorCompiler2 |
Constructor and Description |
---|
Types() |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
accessFlagsToString(int flags,
boolean isClass) |
static java.lang.String[] |
descriptorToParameterTypes(java.lang.String methoddescriptor) |
static java.lang.String |
descriptorToReturnType(java.lang.String methoddescriptor) |
static java.lang.Class |
descriptorToType(java.lang.String typedescriptor)
Converts a VM descriptor to the corresponding type.
|
static java.lang.String |
fullMethodDescriptorToFullUserName(java.lang.String classJavaName,
java.lang.String methodName,
java.lang.String methoddescriptor) |
static java.lang.String |
fullMethodDescriptorToUserName(java.lang.String classJavaName,
java.lang.String methodName,
java.lang.String methoddescriptor) |
static java.lang.String |
getClassPackageName(java.lang.Class c)
Returns 'c''s package name [does not include trailing '.'] or ""
if 'c' is in the default package.
|
static java.lang.String |
javaNameToVMName(java.lang.String javaName)
Converts Java-styled package/class name to how it would be
represented in the VM.
|
static java.lang.String |
methodDescriptorToUserName(java.lang.String methoddescriptor) |
static java.lang.String |
signatureToDescriptor(java.lang.Class[] parameterTypes,
java.lang.Class returnType)
Converts a method signature (parameter types + return type) to its VM descriptor
representation.
|
static java.lang.String |
signatureToDescriptor(java.lang.reflect.Method method)
Converts a method signature to its VM descriptor representation.
|
static java.lang.String |
signatureToMethodDescriptor(java.lang.String[] parameterTypeDescriptors,
java.lang.String returnTypeDescriptor) |
private static java.lang.String |
simpleClassName(java.lang.String classJavaName) |
static java.lang.String |
typeDescriptorToUserName(java.lang.String typedescriptor) |
static java.lang.String |
typeToDescriptor(java.lang.Class type)
Converts a type (a Class) to its VM descriptor representation.
|
static java.lang.String |
vmNameToJavaName(java.lang.String vmName)
Converts a VM-styled package/class name to how it would be
represented in Java.
|
public static java.lang.String getClassPackageName(java.lang.Class c)
public static java.lang.String accessFlagsToString(int flags, boolean isClass)
public static java.lang.String javaNameToVMName(java.lang.String javaName)
Example:
javaNameToVMName("java.lang.Object") = "java/lang/Object"
vmNameToJavaName(java.lang.String)
public static java.lang.String vmNameToJavaName(java.lang.String vmName)
Example:
vmNameToJavaName("java/lang/Object") = "java.lang.Object"
javaNameToVMName(java.lang.String)
public static java.lang.String signatureToDescriptor(java.lang.reflect.Method method)
Example:
signatureToDescriptor(new Object().getClass().getMethod("equals" ,new Class[0])) = "(Ljava/lang/Object;)Z"
Equivalent to
signatureToDescriptor(method.getParameterTypes (), method.getReturnType ())
.
public static java.lang.String signatureToDescriptor(java.lang.Class[] parameterTypes, java.lang.Class returnType)
public static java.lang.String typeToDescriptor(java.lang.Class type)
Example:
typeToDescriptor(Object.class) = "Ljava/lang/Object;"
typeToDescriptor(boolean.class) = "Z"
Note the invariant typeToDescriptor(descriptorToType(desc)) == desc.
descriptorToType(java.lang.String)
public static java.lang.Class descriptorToType(java.lang.String typedescriptor) throws java.lang.ClassNotFoundException
Example:
descriptorToType("[[I") = int[][].class
descriptorToType("B") = byte.class
Note the invariant descriptorToType(typeToDescriptor(c)) == c.
java.lang.ClassNotFoundException
descriptorToType(java.lang.String)
public static java.lang.String descriptorToReturnType(java.lang.String methoddescriptor)
public static java.lang.String[] descriptorToParameterTypes(java.lang.String methoddescriptor)
public static java.lang.String signatureToMethodDescriptor(java.lang.String[] parameterTypeDescriptors, java.lang.String returnTypeDescriptor)
public static java.lang.String typeDescriptorToUserName(java.lang.String typedescriptor)
public static java.lang.String methodDescriptorToUserName(java.lang.String methoddescriptor)
public static java.lang.String fullMethodDescriptorToUserName(java.lang.String classJavaName, java.lang.String methodName, java.lang.String methoddescriptor)
public static java.lang.String fullMethodDescriptorToFullUserName(java.lang.String classJavaName, java.lang.String methodName, java.lang.String methoddescriptor)
private static java.lang.String simpleClassName(java.lang.String classJavaName)