[Java] Class StaticTypesWriterController

  • org.codehaus.groovy.classgen.asm.sc.StaticTypesWriterController

An alternative 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.

Field Summary

Fields
Modifiers Name Description
protected boolean isInStaticallyCheckedMethod
Inherited fields
Fields inherited from class Fields
class WriterController optimizeForInt

Constructor Summary

Constructors
Constructor and description
StaticTypesWriterController (WriterController normalController)

Methods Summary

Methods
Type Params Return Type Name 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)

Inherited Methods Summary

Inherited Methods
Methods inherited from class Name
class DelegatingController getAcg, getAssertionWriter, getBinaryExpressionHelper, getBytecodeVersion, getCallSiteWriter, getClassName, getClassNode, getClassVisitor, getClosureWriter, getCompileStack, getConstructorNode, getContext, getCv, getInterfaceClassLoadingClass, getInternalBaseClassName, getInternalClassName, getInvocationWriter, getLineNumber, getMethodNode, getMethodVisitor, getOperandStack, getOutermostClass, getReturnType, getSourceUnit, getStatementWriter, getTypeChooser, getUnaryExpressionHelper, init, isConstructor, isFastPath, isInClosure, isInClosureConstructor, isInScriptBody, isNotClinit, isNotExplicitThisInClosure, isStaticConstructor, isStaticContext, isStaticMethod, resetLineNumber, setConstructorNode, setInterfaceClassLoadingClass, setLineNumber, setMethodNode, setMethodVisitor, shouldOptimizeForInt, switchToFastPath, switchToSlowPath
class WriterController getAcg, getAssertionWriter, getBinaryExpressionHelper, getBytecodeVersion, getCallSiteWriter, getClassName, getClassNode, getClassVisitor, getClosureWriter, getCompileStack, getConstructorNode, getContext, getCv, getInterfaceClassLoadingClass, getInternalBaseClassName, getInternalClassName, getInvocationWriter, getLineNumber, getMethodNode, getMethodVisitor, getNextHelperMethodIndex, getOperandStack, getOutermostClass, getReturnType, getSourceUnit, getStatementWriter, getSuperMethodNames, getTypeChooser, getUnaryExpressionHelper, init, isConstructor, isFastPath, isInClosure, isInClosureConstructor, isInScriptBody, isNotClinit, isNotExplicitThisInClosure, isStaticConstructor, isStaticContext, isStaticMethod, resetLineNumber, setConstructorNode, setInterfaceClassLoadingClass, setLineNumber, setMethodNode, setMethodVisitor, shouldOptimizeForInt, switchToFastPath, switchToSlowPath

Field Detail

protected boolean isInStaticallyCheckedMethod

Constructor Detail

public StaticTypesWriterController(WriterController normalController)

Method Detail

@Override public BinaryExpressionHelper getBinaryExpressionHelper()

@Override public CallSiteWriter getCallSiteWriter()

@Override public ClosureWriter getClosureWriter()

@Override public InvocationWriter getInvocationWriter()

public CallSiteWriter getRegularCallSiteWriter()

public InvocationWriter getRegularInvocationWriter()

@Override public StatementWriter getStatementWriter()

@Override public TypeChooser getTypeChooser()

@Override public UnaryExpressionHelper getUnaryExpressionHelper()

@Override public void init(AsmClassGenerator asmClassGenerator, GeneratorContext gcon, org.objectweb.asm.ClassVisitor cv, ClassNode cn)

@Override public boolean isFastPath()

@Override public void setConstructorNode(ConstructorNode cn)

@Override public void setMethodNode(MethodNode mn)

© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/2.5.14/html/gapi/org/codehaus/groovy/classgen/asm/sc/StaticTypesWriterController.html