📄 factory.java
字号:
ConstructorSignatureImpl ret = new ConstructorSignatureImpl(stringRep); ret.setLookupClassLoader(lookupClassLoader); return ret; } public ConstructorSignature makeConstructorSig(String modifiers, String declaringType, String paramTypes, String paramNames, String exceptionTypes) { int modifiersAsInt = Integer.parseInt(modifiers, 16); Class declaringTypeClass = makeClass(declaringType,lookupClassLoader); StringTokenizer st = new StringTokenizer(paramTypes, ":"); int numParams = st.countTokens(); Class[] paramTypeClasses = new Class[numParams]; for(int i = 0; i < numParams; i++) paramTypeClasses[i] = makeClass(st.nextToken(),lookupClassLoader); st = new StringTokenizer(paramNames, ":"); numParams = st.countTokens(); String[] paramNamesArray = new String[numParams]; for(int i = 0; i < numParams; i++) paramNamesArray[i] = st.nextToken(); st = new StringTokenizer(exceptionTypes, ":"); numParams = st.countTokens(); Class[] exceptionTypeClasses = new Class[numParams]; for(int i = 0; i < numParams; i++) exceptionTypeClasses[i] = makeClass(st.nextToken(),lookupClassLoader); ConstructorSignatureImpl ret = new ConstructorSignatureImpl(modifiersAsInt, declaringTypeClass, paramTypeClasses, paramNamesArray, exceptionTypeClasses); ret.setLookupClassLoader(lookupClassLoader); return ret; } public ConstructorSignature makeConstructorSig(int modifiers, Class declaringType, Class[] parameterTypes, String[] parameterNames, Class[] exceptionTypes) { ConstructorSignatureImpl ret = new ConstructorSignatureImpl(modifiers,declaringType,parameterTypes,parameterNames,exceptionTypes); ret.setLookupClassLoader(lookupClassLoader); return ret; } public FieldSignature makeFieldSig(String stringRep) { FieldSignatureImpl ret = new FieldSignatureImpl(stringRep); ret.setLookupClassLoader(lookupClassLoader); return ret; } public FieldSignature makeFieldSig(String modifiers, String name, String declaringType, String fieldType) { int modifiersAsInt = Integer.parseInt(modifiers, 16); Class declaringTypeClass = makeClass(declaringType,lookupClassLoader); Class fieldTypeClass = makeClass(fieldType,lookupClassLoader); FieldSignatureImpl ret = new FieldSignatureImpl(modifiersAsInt, name, declaringTypeClass, fieldTypeClass); ret.setLookupClassLoader(lookupClassLoader); return ret; } public FieldSignature makeFieldSig(int modifiers, String name, Class declaringType, Class fieldType) { FieldSignatureImpl ret = new FieldSignatureImpl(modifiers,name,declaringType,fieldType); ret.setLookupClassLoader(lookupClassLoader); return ret; } public AdviceSignature makeAdviceSig(String stringRep) { AdviceSignatureImpl ret = new AdviceSignatureImpl(stringRep); ret.setLookupClassLoader(lookupClassLoader); return ret; } public AdviceSignature makeAdviceSig(String modifiers, String name, String declaringType, String paramTypes, String paramNames, String exceptionTypes, String returnType) { int modifiersAsInt = Integer.parseInt(modifiers, 16); Class declaringTypeClass = makeClass(declaringType,lookupClassLoader); StringTokenizer st = new StringTokenizer(paramTypes, ":"); int numParams = st.countTokens(); Class[] paramTypeClasses = new Class[numParams]; for(int i = 0; i < numParams; i++) paramTypeClasses[i] = makeClass(st.nextToken(),lookupClassLoader); st = new StringTokenizer(paramNames, ":"); numParams = st.countTokens(); String[] paramNamesArray = new String[numParams]; for(int i = 0; i < numParams; i++) paramNamesArray[i] = st.nextToken(); st = new StringTokenizer(exceptionTypes, ":"); numParams = st.countTokens(); Class[] exceptionTypeClasses = new Class[numParams]; for(int i = 0; i < numParams; i++) exceptionTypeClasses[i] = makeClass(st.nextToken(),lookupClassLoader);; Class returnTypeClass = makeClass(returnType,lookupClassLoader); AdviceSignatureImpl ret = new AdviceSignatureImpl(modifiersAsInt, name, declaringTypeClass, paramTypeClasses, paramNamesArray, exceptionTypeClasses, returnTypeClass); ret.setLookupClassLoader(lookupClassLoader); return ret; } public AdviceSignature makeAdviceSig(int modifiers, String name, Class declaringType, Class[] parameterTypes, String[] parameterNames, Class[] exceptionTypes, Class returnType) { AdviceSignatureImpl ret = new AdviceSignatureImpl(modifiers,name,declaringType,parameterTypes,parameterNames,exceptionTypes,returnType); ret.setLookupClassLoader(lookupClassLoader); return ret; } public InitializerSignature makeInitializerSig(String stringRep) { InitializerSignatureImpl ret = new InitializerSignatureImpl(stringRep); ret.setLookupClassLoader(lookupClassLoader); return ret; } public InitializerSignature makeInitializerSig(String modifiers, String declaringType) { int modifiersAsInt = Integer.parseInt(modifiers, 16); Class declaringTypeClass = makeClass(declaringType,lookupClassLoader); InitializerSignatureImpl ret = new InitializerSignatureImpl(modifiersAsInt, declaringTypeClass); ret.setLookupClassLoader(lookupClassLoader); return ret; } public InitializerSignature makeInitializerSig(int modifiers, Class declaringType) { InitializerSignatureImpl ret = new InitializerSignatureImpl(modifiers,declaringType); ret.setLookupClassLoader(lookupClassLoader); return ret; } public CatchClauseSignature makeCatchClauseSig(String stringRep) { CatchClauseSignatureImpl ret = new CatchClauseSignatureImpl(stringRep); ret.setLookupClassLoader(lookupClassLoader); return ret; } public CatchClauseSignature makeCatchClauseSig(String declaringType, String parameterType, String parameterName) { Class declaringTypeClass = makeClass(declaringType,lookupClassLoader); StringTokenizer st = new StringTokenizer(parameterType, ":"); Class parameterTypeClass = makeClass(st.nextToken(),lookupClassLoader); st = new StringTokenizer(parameterName, ":"); String parameterNameForReturn = st.nextToken(); CatchClauseSignatureImpl ret = new CatchClauseSignatureImpl(declaringTypeClass, parameterTypeClass, parameterNameForReturn); ret.setLookupClassLoader(lookupClassLoader); return ret; } public CatchClauseSignature makeCatchClauseSig(Class declaringType, Class parameterType, String parameterName) { CatchClauseSignatureImpl ret = new CatchClauseSignatureImpl(declaringType,parameterType,parameterName); ret.setLookupClassLoader(lookupClassLoader); return ret; } public LockSignature makeLockSig(String stringRep) { LockSignatureImpl ret = new LockSignatureImpl(stringRep); ret.setLookupClassLoader(lookupClassLoader); return ret; } public LockSignature makeLockSig() { Class declaringTypeClass = makeClass("Ljava/lang/Object;",lookupClassLoader); LockSignatureImpl ret = new LockSignatureImpl(declaringTypeClass); ret.setLookupClassLoader(lookupClassLoader); return ret; } public LockSignature makeLockSig(Class declaringType) { LockSignatureImpl ret = new LockSignatureImpl(declaringType); ret.setLookupClassLoader(lookupClassLoader); return ret; } public UnlockSignature makeUnlockSig(String stringRep) { UnlockSignatureImpl ret = new UnlockSignatureImpl(stringRep); ret.setLookupClassLoader(lookupClassLoader); return ret; } public UnlockSignature makeUnlockSig() { Class declaringTypeClass = makeClass("Ljava/lang/Object;",lookupClassLoader); UnlockSignatureImpl ret = new UnlockSignatureImpl(declaringTypeClass); ret.setLookupClassLoader(lookupClassLoader); return ret; } public UnlockSignature makeUnlockSig(Class declaringType) { UnlockSignatureImpl ret = new UnlockSignatureImpl(declaringType); ret.setLookupClassLoader(lookupClassLoader); return ret; } public SourceLocation makeSourceLoc(int line, int col) { return new SourceLocationImpl(lexicalClass, this.filename, line); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -