Class StaticTypesWriterController
java.lang.Object
org.codehaus.groovy.classgen.asm.WriterController
org.codehaus.groovy.classgen.asm.DelegatingController
org.codehaus.groovy.classgen.asm.sc.StaticTypesWriterController
public class StaticTypesWriterController extends DelegatingController
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 Modifier and Type Field Description protected boolean
isInStaticallyCheckedMethod
Fields inherited from class org.codehaus.groovy.classgen.asm.WriterController
optimizeForInt
-
Constructor Summary
Constructors Constructor Description StaticTypesWriterController(WriterController controller)
-
Method Summary
Modifier and Type Method Description BinaryExpressionHelper
getBinaryExpressionHelper()
CallSiteWriter
getCallSiteWriter()
ClosureWriter
getClosureWriter()
InvocationWriter
getInvocationWriter()
LambdaWriter
getLambdaWriter()
MethodReferenceExpressionWriter
getMethodReferenceExpressionWriter()
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)
Methods inherited from class org.codehaus.groovy.classgen.asm.DelegatingController
getAcg, getAssertionWriter, getBytecodeVersion, getClassName, getClassNode, getClassVisitor, getCompileStack, getConstructorNode, getContext, getCv, getInterfaceClassLoadingClass, getInternalBaseClassName, getInternalClassName, getLineNumber, getMethodNode, getMethodPointerExpressionWriter, getMethodVisitor, getOperandStack, getOutermostClass, getReturnType, getSourceUnit, isConstructor, isInGeneratedFunction, isInGeneratedFunctionConstructor, isInScriptBody, isNotClinit, isStaticConstructor, isStaticContext, isStaticMethod, resetLineNumber, setInterfaceClassLoadingClass, setLineNumber, setMethodVisitor, shouldOptimizeForInt, switchToFastPath, switchToSlowPath
Methods inherited from class org.codehaus.groovy.classgen.asm.WriterController
getNextHelperMethodIndex, getSuperMethodNames
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
isInStaticallyCheckedMethod
protected boolean isInStaticallyCheckedMethod
-
-
Constructor Details
-
StaticTypesWriterController
-
-
Method Details
-
init
public void init(AsmClassGenerator asmClassGenerator, GeneratorContext gcon, org.objectweb.asm.ClassVisitor cv, ClassNode cn)- Overrides:
init
in classDelegatingController
-
setMethodNode
- Overrides:
setMethodNode
in classDelegatingController
-
setConstructorNode
- Overrides:
setConstructorNode
in classDelegatingController
-
isFastPath
public boolean isFastPath()- Overrides:
isFastPath
in classDelegatingController
-
getCallSiteWriter
- Overrides:
getCallSiteWriter
in classDelegatingController
-
getRegularCallSiteWriter
-
getStatementWriter
- Overrides:
getStatementWriter
in classDelegatingController
-
getTypeChooser
- Overrides:
getTypeChooser
in classDelegatingController
-
getInvocationWriter
- Overrides:
getInvocationWriter
in classDelegatingController
-
getRegularInvocationWriter
-
getBinaryExpressionHelper
- Overrides:
getBinaryExpressionHelper
in classDelegatingController
-
getMethodReferenceExpressionWriter
- Overrides:
getMethodReferenceExpressionWriter
in classDelegatingController
-
getUnaryExpressionHelper
- Overrides:
getUnaryExpressionHelper
in classDelegatingController
-
getClosureWriter
- Overrides:
getClosureWriter
in classDelegatingController
-
getLambdaWriter
- Overrides:
getLambdaWriter
in classDelegatingController
-