public class javassist.compiler.Javac extends java.lang.Object
{
javassist.compiler.JvstCodeGen gen;
javassist.compiler.SymbolTable stable;
private javassist.bytecode.Bytecode bytecode;
public static final java.lang.String param0Name;
public static final java.lang.String resultVarName;
public static final java.lang.String proceedName;
public void <init>(javassist.CtClass)
{
javassist.bytecode.ConstPool v;
javassist.bytecode.Bytecode v;
javassist.bytecode.ClassFile v;
javassist.compiler.Javac v;
javassist.CtClass v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.CtClass;
v = new javassist.bytecode.Bytecode;
v = virtualinvoke v.<javassist.CtClass: javassist.bytecode.ClassFile getClassFile2()>();
v = virtualinvoke v.<javassist.bytecode.ClassFile: javassist.bytecode.ConstPool getConstPool()>();
specialinvoke v.<javassist.bytecode.Bytecode: void <init>(javassist.bytecode.ConstPool,int,int)>(v, 0, 0);
specialinvoke v.<javassist.compiler.Javac: void <init>(javassist.bytecode.Bytecode,javassist.CtClass)>(v, v);
return;
}
public void <init>(javassist.bytecode.Bytecode, javassist.CtClass)
{
javassist.compiler.JvstCodeGen v;
javassist.bytecode.Bytecode v;
javassist.compiler.Javac v;
javassist.CtClass v;
javassist.compiler.SymbolTable v;
javassist.ClassPool v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.bytecode.Bytecode;
v := @parameter: javassist.CtClass;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new javassist.compiler.JvstCodeGen;
v = virtualinvoke v.<javassist.CtClass: javassist.ClassPool getClassPool()>();
specialinvoke v.<javassist.compiler.JvstCodeGen: void <init>(javassist.bytecode.Bytecode,javassist.CtClass,javassist.ClassPool)>(v, v, v);
v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen> = v;
v = new javassist.compiler.SymbolTable;
specialinvoke v.<javassist.compiler.SymbolTable: void <init>()>();
v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable> = v;
v.<javassist.compiler.Javac: javassist.bytecode.Bytecode bytecode> = v;
return;
}
public javassist.bytecode.Bytecode getBytecode()
{
javassist.compiler.Javac v;
javassist.bytecode.Bytecode v;
v := @this: javassist.compiler.Javac;
v = v.<javassist.compiler.Javac: javassist.bytecode.Bytecode bytecode>;
return v;
}
public javassist.CtMember compile(java.lang.String) throws javassist.compiler.CompileError
{
javassist.bytecode.BadBytecode v;
javassist.CtClass v;
javassist.compiler.Lex v;
java.lang.String v, v, v;
javassist.compiler.SymbolTable v;
boolean v;
javassist.compiler.CompileError v, v;
javassist.CannotCompileException v;
javassist.bytecode.ClassFile v;
javassist.compiler.Javac v;
javassist.compiler.Parser v;
javassist.CtField v;
javassist.bytecode.MethodInfo v;
javassist.CtBehavior v;
javassist.compiler.ast.ASTList v;
javassist.ClassPool v;
v := @this: javassist.compiler.Javac;
v := @parameter: java.lang.String;
v = new javassist.compiler.Parser;
v = new javassist.compiler.Lex;
specialinvoke v.<javassist.compiler.Lex: void <init>(java.lang.String)>(v);
specialinvoke v.<javassist.compiler.Parser: void <init>(javassist.compiler.Lex)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.Parser: javassist.compiler.ast.ASTList parseMember1(javassist.compiler.SymbolTable)>(v);
label:
v = v instanceof javassist.compiler.ast.FieldDecl;
if v == 0 goto label;
v = specialinvoke v.<javassist.compiler.Javac: javassist.CtField compileField(javassist.compiler.ast.FieldDecl)>(v);
label:
return v;
label:
v = specialinvoke v.<javassist.compiler.Javac: javassist.CtBehavior compileMethod(javassist.compiler.Parser,javassist.compiler.ast.MethodDecl)>(v, v);
v = virtualinvoke v.<javassist.CtBehavior: javassist.CtClass getDeclaringClass()>();
v = virtualinvoke v.<javassist.CtBehavior: javassist.bytecode.MethodInfo getMethodInfo2()>();
v = virtualinvoke v.<javassist.CtClass: javassist.ClassPool getClassPool()>();
v = virtualinvoke v.<javassist.CtClass: javassist.bytecode.ClassFile getClassFile2()>();
virtualinvoke v.<javassist.bytecode.MethodInfo: void rebuildStackMapIf6(javassist.ClassPool,javassist.bytecode.ClassFile)>(v, v);
label:
return v;
label:
v := @caughtexception;
v = new javassist.compiler.CompileError;
v = virtualinvoke v.<javassist.bytecode.BadBytecode: java.lang.String getMessage()>();
specialinvoke v.<javassist.compiler.CompileError: void <init>(java.lang.String)>(v);
throw v;
label:
v := @caughtexception;
v = new javassist.compiler.CompileError;
v = virtualinvoke v.<javassist.CannotCompileException: java.lang.String getMessage()>();
specialinvoke v.<javassist.compiler.CompileError: void <init>(java.lang.String)>(v);
throw v;
catch javassist.bytecode.BadBytecode from label to label with label;
catch javassist.bytecode.BadBytecode from label to label with label;
catch javassist.CannotCompileException from label to label with label;
catch javassist.CannotCompileException from label to label with label;
}
private javassist.CtField compileField(javassist.compiler.ast.FieldDecl) throws javassist.compiler.CompileError, javassist.CannotCompileException
{
javassist.compiler.ast.Declarator v;
javassist.compiler.JvstCodeGen v, v;
javassist.compiler.ast.Symbol v;
javassist.compiler.Javac$CtFieldWithInit v;
javassist.compiler.Javac v;
javassist.CtClass v, v;
javassist.compiler.MemberResolver v;
javassist.compiler.ast.ASTree v, v;
javassist.compiler.ast.FieldDecl v;
int v;
java.lang.String v;
javassist.compiler.ast.ASTList v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.compiler.ast.FieldDecl;
v = virtualinvoke v.<javassist.compiler.ast.FieldDecl: javassist.compiler.ast.Declarator getDeclarator()>();
v = new javassist.compiler.Javac$CtFieldWithInit;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = v.<javassist.compiler.JvstCodeGen: javassist.compiler.MemberResolver resolver>;
v = virtualinvoke v.<javassist.compiler.MemberResolver: javassist.CtClass lookupClass(javassist.compiler.ast.Declarator)>(v);
v = virtualinvoke v.<javassist.compiler.ast.Declarator: javassist.compiler.ast.Symbol getVariable()>();
v = virtualinvoke v.<javassist.compiler.ast.Symbol: java.lang.String get()>();
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: javassist.CtClass getThisClass()>();
specialinvoke v.<javassist.compiler.Javac$CtFieldWithInit: void <init>(javassist.CtClass,java.lang.String,javassist.CtClass)>(v, v, v);
v = virtualinvoke v.<javassist.compiler.ast.FieldDecl: javassist.compiler.ast.ASTList getModifiers()>();
v = staticinvoke <javassist.compiler.MemberResolver: int getModifiers(javassist.compiler.ast.ASTList)>(v);
virtualinvoke v.<javassist.compiler.Javac$CtFieldWithInit: void setModifiers(int)>(v);
v = virtualinvoke v.<javassist.compiler.ast.FieldDecl: javassist.compiler.ast.ASTree getInit()>();
if v == null goto label;
v = virtualinvoke v.<javassist.compiler.ast.FieldDecl: javassist.compiler.ast.ASTree getInit()>();
virtualinvoke v.<javassist.compiler.Javac$CtFieldWithInit: void setInit(javassist.compiler.ast.ASTree)>(v);
label:
return v;
}
private javassist.CtBehavior compileMethod(javassist.compiler.Parser, javassist.compiler.ast.MethodDecl) throws javassist.compiler.CompileError
{
javassist.CtMethod v;
javassist.compiler.ast.Declarator v;
javassist.compiler.ast.MethodDecl v, v;
javassist.CtClass v, v, v;
javassist.bytecode.CodeAttribute v, v;
javassist.CtConstructor v;
javassist.NotFoundException v;
boolean v, v;
javassist.compiler.CompileError v;
javassist.bytecode.MethodInfo v, v;
javassist.compiler.ast.Symbol v;
javassist.compiler.ast.Stmnt v;
javassist.compiler.MemberResolver v;
int v, v;
java.lang.String v, v;
javassist.compiler.SymbolTable v;
javassist.compiler.JvstCodeGen v, v, v, v, v, v, v, v;
javassist.compiler.Javac v;
javassist.compiler.Parser v;
javassist.bytecode.Bytecode v, v;
javassist.CtClass[] v, v;
javassist.compiler.ast.ASTList v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.compiler.Parser;
v := @parameter: javassist.compiler.ast.MethodDecl;
v = virtualinvoke v.<javassist.compiler.ast.MethodDecl: javassist.compiler.ast.ASTList getModifiers()>();
v = staticinvoke <javassist.compiler.MemberResolver: int getModifiers(javassist.compiler.ast.ASTList)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: javassist.CtClass[] makeParamList(javassist.compiler.ast.MethodDecl)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: javassist.CtClass[] makeThrowsList(javassist.compiler.ast.MethodDecl)>(v);
v = staticinvoke <javassist.Modifier: boolean isStatic(int)>(v);
virtualinvoke v.<javassist.compiler.Javac: int recordParams(javassist.CtClass[],boolean)>(v, v);
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.Parser: javassist.compiler.ast.MethodDecl parseMethod2(javassist.compiler.SymbolTable,javassist.compiler.ast.MethodDecl)>(v, v);
label:
v = virtualinvoke v.<javassist.compiler.ast.MethodDecl: boolean isConstructor()>();
if v == 0 goto label;
v = new javassist.CtConstructor;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: javassist.CtClass getThisClass()>();
specialinvoke v.<javassist.CtConstructor: void <init>(javassist.CtClass[],javassist.CtClass)>(v, v);
virtualinvoke v.<javassist.CtConstructor: void setModifiers(int)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.ast.MethodDecl: void accept(javassist.compiler.ast.Visitor)>(v);
v = virtualinvoke v.<javassist.CtConstructor: javassist.bytecode.MethodInfo getMethodInfo()>();
v = v.<javassist.compiler.Javac: javassist.bytecode.Bytecode bytecode>;
v = virtualinvoke v.<javassist.bytecode.Bytecode: javassist.bytecode.CodeAttribute toCodeAttribute()>();
virtualinvoke v.<javassist.bytecode.MethodInfo: void setCodeAttribute(javassist.bytecode.CodeAttribute)>(v);
virtualinvoke v.<javassist.CtConstructor: void setExceptionTypes(javassist.CtClass[])>(v);
label:
return v;
label:
v = virtualinvoke v.<javassist.compiler.ast.MethodDecl: javassist.compiler.ast.Declarator getReturn()>();
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = v.<javassist.compiler.JvstCodeGen: javassist.compiler.MemberResolver resolver>;
v = virtualinvoke v.<javassist.compiler.MemberResolver: javassist.CtClass lookupClass(javassist.compiler.ast.Declarator)>(v);
virtualinvoke v.<javassist.compiler.Javac: int recordReturnType(javassist.CtClass,boolean)>(v, 0);
v = new javassist.CtMethod;
v = virtualinvoke v.<javassist.compiler.ast.Declarator: javassist.compiler.ast.Symbol getVariable()>();
v = virtualinvoke v.<javassist.compiler.ast.Symbol: java.lang.String get()>();
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: javassist.CtClass getThisClass()>();
specialinvoke v.<javassist.CtMethod: void <init>(javassist.CtClass,java.lang.String,javassist.CtClass[],javassist.CtClass)>(v, v, v, v);
virtualinvoke v.<javassist.CtMethod: void setModifiers(int)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void setThisMethod(javassist.CtMethod)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.ast.MethodDecl: void accept(javassist.compiler.ast.Visitor)>(v);
v = virtualinvoke v.<javassist.compiler.ast.MethodDecl: javassist.compiler.ast.Stmnt getBody()>();
if v == null goto label;
v = virtualinvoke v.<javassist.CtMethod: javassist.bytecode.MethodInfo getMethodInfo()>();
v = v.<javassist.compiler.Javac: javassist.bytecode.Bytecode bytecode>;
v = virtualinvoke v.<javassist.bytecode.Bytecode: javassist.bytecode.CodeAttribute toCodeAttribute()>();
virtualinvoke v.<javassist.bytecode.MethodInfo: void setCodeAttribute(javassist.bytecode.CodeAttribute)>(v);
goto label;
label:
v = v | 1024;
virtualinvoke v.<javassist.CtMethod: void setModifiers(int)>(v);
label:
virtualinvoke v.<javassist.CtMethod: void setExceptionTypes(javassist.CtClass[])>(v);
label:
return v;
label:
v := @caughtexception;
v = new javassist.compiler.CompileError;
v = virtualinvoke v.<javassist.NotFoundException: java.lang.String toString()>();
specialinvoke v.<javassist.compiler.CompileError: void <init>(java.lang.String)>(v);
throw v;
catch javassist.NotFoundException from label to label with label;
catch javassist.NotFoundException from label to label with label;
}
public javassist.bytecode.Bytecode compileBody(javassist.CtBehavior, java.lang.String) throws javassist.compiler.CompileError
{
javassist.compiler.ast.Stmnt v;
javassist.CtClass v, v;
javassist.compiler.Lex v;
int v;
javassist.NotFoundException v;
java.lang.String v, v;
javassist.compiler.SymbolTable v, v;
boolean v, v, v, v, v, v, v, v, v;
javassist.compiler.CompileError v, v;
javassist.compiler.JvstCodeGen v, v;
javassist.compiler.Javac v;
javassist.compiler.Parser v;
javassist.bytecode.Bytecode v, v;
javassist.CtBehavior v;
javassist.CtClass[] v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.CtBehavior;
v := @parameter: java.lang.String;
label:
v = virtualinvoke v.<javassist.CtBehavior: int getModifiers()>();
v = virtualinvoke v.<javassist.CtBehavior: javassist.CtClass[] getParameterTypes()>();
v = staticinvoke <javassist.Modifier: boolean isStatic(int)>(v);
virtualinvoke v.<javassist.compiler.Javac: int recordParams(javassist.CtClass[],boolean)>(v, v);
v = v instanceof javassist.CtMethod;
if v == 0 goto label;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void setThisMethod(javassist.CtMethod)>(v);
v = virtualinvoke v.<javassist.CtMethod: javassist.CtClass getReturnType()>();
goto label;
label:
v = <javassist.CtClass: javassist.CtClass voidType>;
label:
virtualinvoke v.<javassist.compiler.Javac: int recordReturnType(javassist.CtClass,boolean)>(v, 0);
v = <javassist.CtClass: javassist.CtClass voidType>;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v != null goto label;
v = v.<javassist.compiler.Javac: javassist.bytecode.Bytecode bytecode>;
staticinvoke <javassist.compiler.Javac: void makeDefaultBody(javassist.bytecode.Bytecode,javassist.CtClass)>(v, v);
goto label;
label:
v = new javassist.compiler.Parser;
v = new javassist.compiler.Lex;
specialinvoke v.<javassist.compiler.Lex: void <init>(java.lang.String)>(v);
specialinvoke v.<javassist.compiler.Parser: void <init>(javassist.compiler.Lex)>(v);
v = new javassist.compiler.SymbolTable;
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
specialinvoke v.<javassist.compiler.SymbolTable: void <init>(javassist.compiler.SymbolTable)>(v);
v = virtualinvoke v.<javassist.compiler.Parser: javassist.compiler.ast.Stmnt parseStatement(javassist.compiler.SymbolTable)>(v);
v = virtualinvoke v.<javassist.compiler.Parser: boolean hasMore()>();
if v == 0 goto label;
v = new javassist.compiler.CompileError;
specialinvoke v.<javassist.compiler.CompileError: void <init>(java.lang.String)>("the method/constructor body must be surrounded by {}");
throw v;
label:
v = 0;
v = v instanceof javassist.CtConstructor;
if v == 0 goto label;
v = virtualinvoke v.<javassist.CtConstructor: boolean isClassInitializer()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
label:
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void atMethodBody(javassist.compiler.ast.Stmnt,boolean,boolean)>(v, v, v);
label:
v = v.<javassist.compiler.Javac: javassist.bytecode.Bytecode bytecode>;
label:
return v;
label:
v := @caughtexception;
v = new javassist.compiler.CompileError;
v = virtualinvoke v.<javassist.NotFoundException: java.lang.String toString()>();
specialinvoke v.<javassist.compiler.CompileError: void <init>(java.lang.String)>(v);
throw v;
catch javassist.NotFoundException from label to label with label;
}
private static void makeDefaultBody(javassist.bytecode.Bytecode, javassist.CtClass)
{
byte v;
javassist.bytecode.Bytecode v;
int v;
javassist.CtClass v;
boolean v;
v := @parameter: javassist.bytecode.Bytecode;
v := @parameter: javassist.CtClass;
v = v instanceof javassist.CtPrimitiveType;
if v == 0 goto label;
v = virtualinvoke v.<javassist.CtPrimitiveType: int getReturnOp()>();
if v != 175 goto label;
v = 14;
goto label;
label:
if v != 174 goto label;
v = 11;
goto label;
label:
if v != 173 goto label;
v = 9;
goto label;
label:
if v != 177 goto label;
v = 0;
goto label;
label:
v = 3;
goto label;
label:
v = 176;
v = 1;
label:
if v == 0 goto label;
virtualinvoke v.<javassist.bytecode.Bytecode: void addOpcode(int)>(v);
label:
virtualinvoke v.<javassist.bytecode.Bytecode: void addOpcode(int)>(v);
return;
}
public boolean recordLocalVariables(javassist.bytecode.CodeAttribute, int) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
javassist.compiler.Javac v;
javassist.bytecode.CodeAttribute v;
int v, v, v, v, v, v, v;
javassist.bytecode.AttributeInfo v;
java.lang.String v, v;
javassist.compiler.SymbolTable v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.bytecode.CodeAttribute;
v := @parameter: int;
v = virtualinvoke v.<javassist.bytecode.CodeAttribute: javassist.bytecode.AttributeInfo getAttribute(java.lang.String)>("LocalVariableTable");
if v != null goto label;
return 0;
label:
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: int tableLength()>();
v = 0;
label:
if v >= v goto label;
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: int startPc(int)>(v);
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: int codeLength(int)>(v);
if v > v goto label;
v = v + v;
if v >= v goto label;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: java.lang.String descriptor(int)>(v);
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: java.lang.String variableName(int)>(v);
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: int index(int)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void recordVariable(java.lang.String,java.lang.String,int,javassist.compiler.SymbolTable)>(v, v, v, v);
label:
v = v + 1;
goto label;
label:
return 1;
}
public boolean recordParamNames(javassist.bytecode.CodeAttribute, int) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
javassist.compiler.Javac v;
javassist.bytecode.CodeAttribute v;
int v, v, v, v;
javassist.bytecode.AttributeInfo v;
java.lang.String v, v;
javassist.compiler.SymbolTable v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.bytecode.CodeAttribute;
v := @parameter: int;
v = virtualinvoke v.<javassist.bytecode.CodeAttribute: javassist.bytecode.AttributeInfo getAttribute(java.lang.String)>("LocalVariableTable");
if v != null goto label;
return 0;
label:
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: int tableLength()>();
v = 0;
label:
if v >= v goto label;
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: int index(int)>(v);
if v >= v goto label;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: java.lang.String descriptor(int)>(v);
v = virtualinvoke v.<javassist.bytecode.LocalVariableAttribute: java.lang.String variableName(int)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void recordVariable(java.lang.String,java.lang.String,int,javassist.compiler.SymbolTable)>(v, v, v, v);
label:
v = v + 1;
goto label;
label:
return 1;
}
public int recordParams(javassist.CtClass[], boolean) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
int v;
javassist.compiler.Javac v;
javassist.CtClass[] v;
javassist.compiler.SymbolTable v;
boolean v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.CtClass[];
v := @parameter: boolean;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: int recordParams(javassist.CtClass[],boolean,java.lang.String,java.lang.String,java.lang.String,javassist.compiler.SymbolTable)>(v, v, "$", "$args", "$$", v);
return v;
}
public int recordParams(java.lang.String, javassist.CtClass[], boolean, int, boolean) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
javassist.compiler.Javac v;
int v, v;
javassist.CtClass[] v;
java.lang.String v;
javassist.compiler.SymbolTable v;
boolean v, v;
v := @this: javassist.compiler.Javac;
v := @parameter: java.lang.String;
v := @parameter: javassist.CtClass[];
v := @parameter: boolean;
v := @parameter: int;
v := @parameter: boolean;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: int recordParams(javassist.CtClass[],boolean,java.lang.String,java.lang.String,java.lang.String,boolean,int,java.lang.String,javassist.compiler.SymbolTable)>(v, v, "$", "$args", "$$", v, v, v, v);
return v;
}
public void setMaxLocals(int)
{
int v;
javassist.compiler.Javac v;
javassist.compiler.JvstCodeGen v;
v := @this: javassist.compiler.Javac;
v := @parameter: int;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void setMaxLocals(int)>(v);
return;
}
public int recordReturnType(javassist.CtClass, boolean) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v, v;
javassist.compiler.Javac v;
javassist.CtClass v;
int v;
java.lang.String v;
javassist.compiler.SymbolTable v;
boolean v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.CtClass;
v := @parameter: boolean;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void recordType(javassist.CtClass)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
if v == 0 goto label;
v = "$_";
goto label;
label:
v = null;
label:
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: int recordReturnType(javassist.CtClass,java.lang.String,java.lang.String,javassist.compiler.SymbolTable)>(v, "$r", v, v);
return v;
}
public void recordType(javassist.CtClass)
{
javassist.compiler.Javac v;
javassist.CtClass v;
javassist.compiler.JvstCodeGen v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.CtClass;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void recordType(javassist.CtClass)>(v);
return;
}
public int recordVariable(javassist.CtClass, java.lang.String) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
int v;
javassist.compiler.Javac v;
java.lang.String v;
javassist.CtClass v;
javassist.compiler.SymbolTable v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.CtClass;
v := @parameter: java.lang.String;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.JvstCodeGen: int recordVariable(javassist.CtClass,java.lang.String,javassist.compiler.SymbolTable)>(v, v, v);
return v;
}
public void recordProceed(java.lang.String, java.lang.String) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
javassist.compiler.Javac v;
javassist.compiler.Javac$1 v;
javassist.compiler.ast.ASTree v;
javassist.compiler.Parser v;
javassist.compiler.Lex v;
java.lang.String v, v;
javassist.compiler.SymbolTable v;
v := @this: javassist.compiler.Javac;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = new javassist.compiler.Parser;
v = new javassist.compiler.Lex;
specialinvoke v.<javassist.compiler.Lex: void <init>(java.lang.String)>(v);
specialinvoke v.<javassist.compiler.Parser: void <init>(javassist.compiler.Lex)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.Parser: javassist.compiler.ast.ASTree parseExpression(javassist.compiler.SymbolTable)>(v);
v = new javassist.compiler.Javac$1;
specialinvoke v.<javassist.compiler.Javac$1: void <init>(javassist.compiler.Javac,java.lang.String,javassist.compiler.ast.ASTree)>(v, v, v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void setProceedHandler(javassist.compiler.ProceedHandler,java.lang.String)>(v, "$proceed");
return;
}
public void recordStaticProceed(java.lang.String, java.lang.String) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
javassist.compiler.Javac v;
javassist.compiler.Javac$2 v;
java.lang.String v, v;
v := @this: javassist.compiler.Javac;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = new javassist.compiler.Javac$2;
specialinvoke v.<javassist.compiler.Javac$2: void <init>(javassist.compiler.Javac,java.lang.String,java.lang.String)>(v, v, v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void setProceedHandler(javassist.compiler.ProceedHandler,java.lang.String)>(v, "$proceed");
return;
}
public void recordSpecialProceed(java.lang.String, java.lang.String, java.lang.String, java.lang.String, int) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
javassist.compiler.Javac$3 v;
javassist.compiler.Javac v;
javassist.compiler.ast.ASTree v;
javassist.compiler.Parser v;
javassist.compiler.Lex v;
int v;
java.lang.String v, v, v, v;
javassist.compiler.SymbolTable v;
v := @this: javassist.compiler.Javac;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: int;
v = new javassist.compiler.Parser;
v = new javassist.compiler.Lex;
specialinvoke v.<javassist.compiler.Lex: void <init>(java.lang.String)>(v);
specialinvoke v.<javassist.compiler.Parser: void <init>(javassist.compiler.Lex)>(v);
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = virtualinvoke v.<javassist.compiler.Parser: javassist.compiler.ast.ASTree parseExpression(javassist.compiler.SymbolTable)>(v);
v = new javassist.compiler.Javac$3;
specialinvoke v.<javassist.compiler.Javac$3: void <init>(javassist.compiler.Javac,javassist.compiler.ast.ASTree,int,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v, v, v);
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void setProceedHandler(javassist.compiler.ProceedHandler,java.lang.String)>(v, "$proceed");
return;
}
public void recordProceed(javassist.compiler.ProceedHandler)
{
javassist.compiler.Javac v;
javassist.compiler.JvstCodeGen v;
javassist.compiler.ProceedHandler v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.compiler.ProceedHandler;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void setProceedHandler(javassist.compiler.ProceedHandler,java.lang.String)>(v, "$proceed");
return;
}
public void compileStmnt(java.lang.String) throws javassist.compiler.CompileError
{
javassist.compiler.JvstCodeGen v;
javassist.compiler.Javac v;
javassist.compiler.ast.Stmnt v;
javassist.compiler.Parser v;
javassist.compiler.Lex v;
java.lang.String v;
javassist.compiler.SymbolTable v, v;
boolean v;
v := @this: javassist.compiler.Javac;
v := @parameter: java.lang.String;
v = new javassist.compiler.Parser;
v = new javassist.compiler.Lex;
specialinvoke v.<javassist.compiler.Lex: void <init>(java.lang.String)>(v);
specialinvoke v.<javassist.compiler.Parser: void <init>(javassist.compiler.Lex)>(v);
v = new javassist.compiler.SymbolTable;
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
specialinvoke v.<javassist.compiler.SymbolTable: void <init>(javassist.compiler.SymbolTable)>(v);
label:
v = virtualinvoke v.<javassist.compiler.Parser: boolean hasMore()>();
if v == 0 goto label;
v = virtualinvoke v.<javassist.compiler.Parser: javassist.compiler.ast.Stmnt parseStatement(javassist.compiler.SymbolTable)>(v);
if v == null goto label;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.ast.Stmnt: void accept(javassist.compiler.ast.Visitor)>(v);
goto label;
label:
return;
}
public void compileExpr(java.lang.String) throws javassist.compiler.CompileError
{
javassist.compiler.Javac v;
java.lang.String v;
javassist.compiler.SymbolTable v;
javassist.compiler.ast.ASTree v;
v := @this: javassist.compiler.Javac;
v := @parameter: java.lang.String;
v = v.<javassist.compiler.Javac: javassist.compiler.SymbolTable stable>;
v = staticinvoke <javassist.compiler.Javac: javassist.compiler.ast.ASTree parseExpr(java.lang.String,javassist.compiler.SymbolTable)>(v, v);
virtualinvoke v.<javassist.compiler.Javac: void compileExpr(javassist.compiler.ast.ASTree)>(v);
return;
}
public static javassist.compiler.ast.ASTree parseExpr(java.lang.String, javassist.compiler.SymbolTable) throws javassist.compiler.CompileError
{
javassist.compiler.Lex v;
java.lang.String v;
javassist.compiler.SymbolTable v;
javassist.compiler.ast.ASTree v;
javassist.compiler.Parser v;
v := @parameter: java.lang.String;
v := @parameter: javassist.compiler.SymbolTable;
v = new javassist.compiler.Parser;
v = new javassist.compiler.Lex;
specialinvoke v.<javassist.compiler.Lex: void <init>(java.lang.String)>(v);
specialinvoke v.<javassist.compiler.Parser: void <init>(javassist.compiler.Lex)>(v);
v = virtualinvoke v.<javassist.compiler.Parser: javassist.compiler.ast.ASTree parseExpression(javassist.compiler.SymbolTable)>(v);
return v;
}
public void compileExpr(javassist.compiler.ast.ASTree) throws javassist.compiler.CompileError
{
javassist.compiler.Javac v;
javassist.compiler.JvstCodeGen v;
javassist.compiler.ast.ASTree v;
v := @this: javassist.compiler.Javac;
v := @parameter: javassist.compiler.ast.ASTree;
if v == null goto label;
v = v.<javassist.compiler.Javac: javassist.compiler.JvstCodeGen gen>;
virtualinvoke v.<javassist.compiler.JvstCodeGen: void compileExpr(javassist.compiler.ast.ASTree)>(v);
label:
return;
}
}