com.vladium.util
Class Descriptors

java.lang.Object
  extended by com.vladium.util.Descriptors

public abstract class Descriptors
extends java.lang.Object

Author:
Vlad Roubtsov, (C) 2003

Field Summary
static char JAVA_NAME_SEPARATOR
           
private static boolean RENAME_INNER_CLASSES
           
static char VM_NAME_SEPARATOR
           
 
Constructor Summary
private Descriptors()
           
 
Method Summary
static java.lang.String combine(java.lang.String packageName, java.lang.String name, char separator)
           
static java.lang.String combineJavaName(java.lang.String packageName, java.lang.String name)
           
static java.lang.String combineVMName(java.lang.String packageName, java.lang.String name)
           
static java.lang.String javaNameToVMName(java.lang.String javaName)
          Converts a Java package/class name to how it would be represented in the VM.
static java.lang.String methodVMNameToJavaName(java.lang.String className, java.lang.String methodVMName, java.lang.String descriptor, boolean renameInits, boolean shortTypeNames, boolean appendReturnType)
          NOTE: With 'shortTypeNames'=true the output is potentially lossy (truncates package name) and can result in method signature collisions in very rare circumstances (e.g., java.awt.List = java.util.List).
private static int typeDescriptorToJavaName(char[] descriptor, int start, boolean shortTypeNames, java.lang.StringBuffer out)
           
static java.lang.String vmNameToJavaName(java.lang.String vmName)
          Converts a JVM package/class name to how it would be represented in Java.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

JAVA_NAME_SEPARATOR

public static final char JAVA_NAME_SEPARATOR
See Also:
Constant Field Values

VM_NAME_SEPARATOR

public static final char VM_NAME_SEPARATOR
See Also:
Constant Field Values

RENAME_INNER_CLASSES

private static final boolean RENAME_INNER_CLASSES
See Also:
Constant Field Values
Constructor Detail

Descriptors

private Descriptors()
Method Detail

combine

public static java.lang.String combine(java.lang.String packageName,
                                       java.lang.String name,
                                       char separator)

combineJavaName

public static java.lang.String combineJavaName(java.lang.String packageName,
                                               java.lang.String name)

combineVMName

public static java.lang.String combineVMName(java.lang.String packageName,
                                             java.lang.String name)

javaNameToVMName

public static java.lang.String javaNameToVMName(java.lang.String javaName)
Converts a Java package/class name to how it would be represented in the VM.

Example:


 javaNameToVMName("java.lang.Object") = "java/lang/Object"
 

See Also:
vmNameToJavaName(java.lang.String)

vmNameToJavaName

public static java.lang.String vmNameToJavaName(java.lang.String vmName)
Converts a JVM package/class name to how it would be represented in Java.

Example:


 vmNameToJavaName("java/lang/Object") = "java.lang.Object"
 

See Also:
javaNameToVMName(java.lang.String)

methodVMNameToJavaName

public static java.lang.String methodVMNameToJavaName(java.lang.String className,
                                                      java.lang.String methodVMName,
                                                      java.lang.String descriptor,
                                                      boolean renameInits,
                                                      boolean shortTypeNames,
                                                      boolean appendReturnType)
NOTE: With 'shortTypeNames'=true the output is potentially lossy (truncates package name) and can result in method signature collisions in very rare circumstances (e.g., java.awt.List = java.util.List).

Return type info is also lost.

Returns:
method name (signature), no package prefix, no return type

typeDescriptorToJavaName

private static int typeDescriptorToJavaName(char[] descriptor,
                                            int start,
                                            boolean shortTypeNames,
                                            java.lang.StringBuffer out)