public class StaticTypesWriterController extends DelegatingController
WriterController
which handles static types and method
dispatch. In case of a "mixed mode" where only some methods are annotated with TypeChecked
then this writer will delegate to the classic writer controller.Modifier and Type | Field and Description |
---|---|
protected boolean |
isInStaticallyCheckedMethod |
optimizeForInt
Constructor and Description |
---|
StaticTypesWriterController(WriterController normalController) |
Modifier and Type | Method and Description |
---|---|
BinaryExpressionHelper |
getBinaryExpressionHelper() |
CallSiteWriter |
getCallSiteWriter() |
ClosureWriter |
getClosureWriter() |
InvocationWriter |
getInvocationWriter() |
CallSiteWriter |
getRegularCallSiteWriter() |
InvocationWriter |
getRegularInvocationWriter() |
StatementWriter |
getStatementWriter() |
TypeChooser |
getTypeChooser() |
UnaryExpressionHelper |
getUnaryExpressionHelper() |
void |
init(AsmClassGenerator asmClassGenerator,
GeneratorContext gcon,
org.objectweb.asm.ClassVisitor cv,
ClassNode cn) |
boolean |
isFastPath() |
void |
setConstructorNode(ConstructorNode cn) |
void |
setMethodNode(MethodNode mn) |
getAcg, getAssertionWriter, getBytecodeVersion, getClassName, getClassNode, getClassVisitor, getCompileStack, getConstructorNode, getContext, getCv, getInterfaceClassLoadingClass, getInternalBaseClassName, getInternalClassName, getLineNumber, getMethodNode, getMethodVisitor, getOperandStack, getOutermostClass, getReturnType, getSourceUnit, isConstructor, isInClosure, isInClosureConstructor, isInScriptBody, isNotClinit, isNotExplicitThisInClosure, isStaticConstructor, isStaticContext, isStaticMethod, resetLineNumber, setInterfaceClassLoadingClass, setLineNumber, setMethodVisitor, shouldOptimizeForInt, switchToFastPath, switchToSlowPath
getNextHelperMethodIndex
public StaticTypesWriterController(WriterController normalController)
public void init(AsmClassGenerator asmClassGenerator, GeneratorContext gcon, org.objectweb.asm.ClassVisitor cv, ClassNode cn)
init
in class DelegatingController
public void setMethodNode(MethodNode mn)
setMethodNode
in class DelegatingController
public void setConstructorNode(ConstructorNode cn)
setConstructorNode
in class DelegatingController
public boolean isFastPath()
isFastPath
in class DelegatingController
public CallSiteWriter getCallSiteWriter()
getCallSiteWriter
in class DelegatingController
public CallSiteWriter getRegularCallSiteWriter()
public StatementWriter getStatementWriter()
getStatementWriter
in class DelegatingController
public TypeChooser getTypeChooser()
getTypeChooser
in class DelegatingController
public InvocationWriter getInvocationWriter()
getInvocationWriter
in class DelegatingController
public InvocationWriter getRegularInvocationWriter()
public BinaryExpressionHelper getBinaryExpressionHelper()
getBinaryExpressionHelper
in class DelegatingController
public UnaryExpressionHelper getUnaryExpressionHelper()
getUnaryExpressionHelper
in class DelegatingController
public ClosureWriter getClosureWriter()
getClosureWriter
in class DelegatingController