Package javassist.compiler
Class MemberResolver
- java.lang.Object
-
- javassist.compiler.MemberResolver
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMemberResolver.Method
-
Field Summary
Fields Modifier and Type Field Description private ClassPoolclassPoolprivate static java.lang.StringINVALIDprivate java.util.Map<java.lang.String,java.lang.String>invalidNamesprivate static java.util.Map<ClassPool,java.lang.ref.Reference<java.util.Map<java.lang.String,java.lang.String>>>invalidNamesMapprivate static intNOprivate static intYES-
Fields inherited from interface javassist.compiler.TokenId
ABSTRACT, AND_E, ANDAND, ARRAY, ARSHIFT, ARSHIFT_E, assignOps, BadToken, BLOCK, BOOLEAN, BREAK, BYTE, CALL, CASE, CATCH, CHAR, CharConstant, CLASS, CONST, CONTINUE, DECL, DEFAULT, DIV_E, DO, DOUBLE, DoubleConstant, ELSE, EQ, EXOR_E, EXPR, EXTENDS, FALSE, FINAL, FINALLY, FLOAT, FloatConstant, FOR, GE, GOTO, Identifier, IF, IMPLEMENTS, IMPORT, INSTANCEOF, INT, IntConstant, INTERFACE, LABEL, LE, LONG, LongConstant, LSHIFT, LSHIFT_E, MEMBER, MINUS_E, MINUSMINUS, MOD_E, MUL_E, NATIVE, NEQ, NEW, NULL, opNames, OR_E, OROR, PACKAGE, PLUS_E, PLUSPLUS, PRIVATE, PROTECTED, PUBLIC, RETURN, RSHIFT, RSHIFT_E, SHORT, STATIC, STRICT, StringL, SUPER, SWITCH, SYNCHRONIZED, THIS, THROW, THROWS, TRANSIENT, TRUE, TRY, VOID, VOLATILE, WHILE
-
-
Constructor Summary
Constructors Constructor Description MemberResolver(ClassPool cp)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private intcompareSignature(java.lang.String desc, int[] argTypes, int[] argDims, java.lang.String[] argClassNames)static intdescToType(char c)private static voidfatal()ClassPoolgetClassPool()static intgetInvalidMapSize()private java.util.Map<java.lang.String,java.lang.String>getInvalidNames()static intgetModifiers(ASTList mods)static CtClassgetSuperclass(CtClass c)static CtClassgetSuperInterface(CtClass c, java.lang.String interfaceName)(package private) static java.lang.StringgetTypeName(int type)static java.lang.StringjavaToJvmName(java.lang.String classname)static java.lang.StringjvmToJavaName(java.lang.String classname)CtClasslookupClass(int type, int dim, java.lang.String classname)CtClasslookupClass(java.lang.String name, boolean notCheckInner)CtClasslookupClass(Declarator decl)private CtClasslookupClass0(java.lang.String classname, boolean notCheckInner)CtClasslookupClassByJvmName(java.lang.String jvmName)CtClasslookupClassByName(ASTList name)CtFieldlookupField(java.lang.String className, Symbol fieldName)CtFieldlookupFieldByJvmName(java.lang.String jvmClassName, Symbol fieldName)CtFieldlookupFieldByJvmName2(java.lang.String jvmClassName, Symbol fieldSym, ASTree expr)Only used by fieldAccess() in MemberCodeGen and TypeChecker.private MemberResolver.MethodlookupMethod(CtClass clazz, java.lang.String methodName, int[] argTypes, int[] argDims, java.lang.String[] argClassNames, boolean onlyExact)MemberResolver.MethodlookupMethod(CtClass clazz, CtClass currentClass, MethodInfo current, java.lang.String methodName, int[] argTypes, int[] argDims, java.lang.String[] argClassNames)java.lang.StringresolveClassName(ASTList name)java.lang.StringresolveJvmClassName(java.lang.String jvmName)private CtClasssearchImports(java.lang.String orgName)
-
-
-
Field Detail
-
classPool
private ClassPool classPool
-
YES
private static final int YES
- See Also:
- Constant Field Values
-
NO
private static final int NO
- See Also:
- Constant Field Values
-
INVALID
private static final java.lang.String INVALID
- See Also:
- Constant Field Values
-
invalidNamesMap
private static java.util.Map<ClassPool,java.lang.ref.Reference<java.util.Map<java.lang.String,java.lang.String>>> invalidNamesMap
-
invalidNames
private java.util.Map<java.lang.String,java.lang.String> invalidNames
-
-
Constructor Detail
-
MemberResolver
public MemberResolver(ClassPool cp)
-
-
Method Detail
-
getClassPool
public ClassPool getClassPool()
-
fatal
private static void fatal() throws CompileError- Throws:
CompileError
-
lookupMethod
public MemberResolver.Method lookupMethod(CtClass clazz, CtClass currentClass, MethodInfo current, java.lang.String methodName, int[] argTypes, int[] argDims, java.lang.String[] argClassNames) throws CompileError
- Throws:
CompileError
-
lookupMethod
private MemberResolver.Method lookupMethod(CtClass clazz, java.lang.String methodName, int[] argTypes, int[] argDims, java.lang.String[] argClassNames, boolean onlyExact) throws CompileError
- Throws:
CompileError
-
compareSignature
private int compareSignature(java.lang.String desc, int[] argTypes, int[] argDims, java.lang.String[] argClassNames) throws CompileError- Throws:
CompileError
-
lookupFieldByJvmName2
public CtField lookupFieldByJvmName2(java.lang.String jvmClassName, Symbol fieldSym, ASTree expr) throws NoFieldException
Only used by fieldAccess() in MemberCodeGen and TypeChecker.- Parameters:
jvmClassName- a JVM class name. e.g. java/lang/String- Throws:
NoFieldException- See Also:
lookupClass(String, boolean)
-
lookupFieldByJvmName
public CtField lookupFieldByJvmName(java.lang.String jvmClassName, Symbol fieldName) throws CompileError
- Parameters:
jvmClassName- a JVM class name. e.g. java/lang/String- Throws:
CompileError
-
lookupField
public CtField lookupField(java.lang.String className, Symbol fieldName) throws CompileError
- Parameters:
className- a qualified class name. e.g. java.lang.String- Throws:
CompileError
-
lookupClassByName
public CtClass lookupClassByName(ASTList name) throws CompileError
- Throws:
CompileError
-
lookupClassByJvmName
public CtClass lookupClassByJvmName(java.lang.String jvmName) throws CompileError
- Throws:
CompileError
-
lookupClass
public CtClass lookupClass(Declarator decl) throws CompileError
- Throws:
CompileError
-
lookupClass
public CtClass lookupClass(int type, int dim, java.lang.String classname) throws CompileError
- Parameters:
classname- jvm class name.- Throws:
CompileError
-
getTypeName
static java.lang.String getTypeName(int type) throws CompileError- Throws:
CompileError
-
lookupClass
public CtClass lookupClass(java.lang.String name, boolean notCheckInner) throws CompileError
- Parameters:
name- a qualified class name. e.g. java.lang.String- Throws:
CompileError
-
getInvalidMapSize
public static int getInvalidMapSize()
-
getInvalidNames
private java.util.Map<java.lang.String,java.lang.String> getInvalidNames()
-
searchImports
private CtClass searchImports(java.lang.String orgName) throws CompileError
- Throws:
CompileError
-
lookupClass0
private CtClass lookupClass0(java.lang.String classname, boolean notCheckInner) throws NotFoundException
- Throws:
NotFoundException
-
resolveClassName
public java.lang.String resolveClassName(ASTList name) throws CompileError
- Throws:
CompileError
-
resolveJvmClassName
public java.lang.String resolveJvmClassName(java.lang.String jvmName) throws CompileError- Throws:
CompileError
-
getSuperclass
public static CtClass getSuperclass(CtClass c) throws CompileError
- Throws:
CompileError
-
getSuperInterface
public static CtClass getSuperInterface(CtClass c, java.lang.String interfaceName) throws CompileError
- Throws:
CompileError
-
javaToJvmName
public static java.lang.String javaToJvmName(java.lang.String classname)
-
jvmToJavaName
public static java.lang.String jvmToJavaName(java.lang.String classname)
-
descToType
public static int descToType(char c) throws CompileError- Throws:
CompileError
-
getModifiers
public static int getModifiers(ASTList mods)
-
-