Package org.codehaus.groovy.classgen.asm

# Class WriterController

java.lang.Object
org.codehaus.groovy.classgen.asm.WriterController

Direct Known Subclasses:
  `DelegatingController`

public class WriterController extends Object

## Field Summary

Fields
Modifier and Type
Field
Description
`boolean`
`optimizeForInt`

## Constructor Summary

Constructors
Constructor
Description
`WriterController()`

## Method Summary

Modifier and Type
Method
Description
`AsmClassGenerator`
`getAcg()`
`AssertionWriter`
`getAssertionWriter()`
`BinaryExpressionHelper`
`getBinaryExpressionHelper()`
`int`
`getBytecodeVersion()`
`CallSiteWriter`
`getCallSiteWriter()`
`String`
`getClassName()`
`ClassNode`
`getClassNode()`
`org.objectweb.asm.ClassVisitor`
`getClassVisitor()`
`ClosureWriter`
`getClosureWriter()`
`CompileStack`
`getCompileStack()`
`ConstructorNode`
`getConstructorNode()`
`GeneratorContext`
`getContext()`
`org.objectweb.asm.ClassVisitor`
`getCv()`
`InterfaceHelperClassNode`
`getInterfaceClassLoadingClass()`
`String`
`getInternalBaseClassName()`
`String`
`getInternalClassName()`
`InvocationWriter`
`getInvocationWriter()`
`int`
`getLineNumber()`
`MethodNode`
`getMethodNode()`
`org.objectweb.asm.MethodVisitor`
`getMethodVisitor()`
`int`
`getNextHelperMethodIndex()`
`OperandStack`
`getOperandStack()`
`ClassNode`
`getOutermostClass()`
`ClassNode`
`getReturnType()`
`SourceUnit`
`getSourceUnit()`
`StatementWriter`
`getStatementWriter()`
`List<String>`
`getSuperMethodNames()`
`TypeChooser`
`getTypeChooser()`
`UnaryExpressionHelper`
`getUnaryExpressionHelper()`
`void`
`init(AsmClassGenerator asmClassGenerator, GeneratorContext gcon, org.objectweb.asm.ClassVisitor cv, ClassNode cn)`
`boolean`
`isConstructor()`
`boolean`
`isFastPath()`
`boolean`
`isInClosure()`
`boolean`
`isInClosureConstructor()`
`boolean`
`isInScriptBody()`
`boolean`
`isNotClinit()`
`boolean`
`isNotExplicitThisInClosure(boolean implicitThis)`
`boolean`
`isStaticConstructor()`
`boolean`
`isStaticContext()`
`boolean`
`isStaticMethod()`
`void`
`resetLineNumber()`
`void`
`setConstructorNode(ConstructorNode cn)`
`void`
`setInterfaceClassLoadingClass(InterfaceHelperClassNode ihc)`
`void`
`setLineNumber(int n)`
`void`
`setMethodNode(MethodNode mn)`
`void`
`setMethodVisitor(org.objectweb.asm.MethodVisitor methodVisitor)`
`boolean`
`shouldOptimizeForInt()`
`void`
`switchToFastPath()`
`void`
`switchToSlowPath()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### optimizeForInt

public boolean optimizeForInt

## Constructor Details

### WriterController

public WriterController()

## Method Details

### init

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

### getAcg

public AsmClassGenerator getAcg()

### setMethodVisitor

public void setMethodVisitor(org.objectweb.asm.MethodVisitor methodVisitor)

### getMethodVisitor

public org.objectweb.asm.MethodVisitor getMethodVisitor()

### getCompileStack

public CompileStack getCompileStack()

### getOperandStack

public OperandStack getOperandStack()

### getClassNode

public ClassNode getClassNode()

### getCallSiteWriter

public CallSiteWriter getCallSiteWriter()

### getClassVisitor

public org.objectweb.asm.ClassVisitor getClassVisitor()

### getClosureWriter

public ClosureWriter getClosureWriter()

### getCv

public org.objectweb.asm.ClassVisitor getCv()

### getInternalClassName

public String getInternalClassName()

### getInvocationWriter

public InvocationWriter getInvocationWriter()

### getBinaryExpressionHelper

public BinaryExpressionHelper getBinaryExpressionHelper()

### getUnaryExpressionHelper

public UnaryExpressionHelper getUnaryExpressionHelper()

### getAssertionWriter

public AssertionWriter getAssertionWriter()

### getTypeChooser

public TypeChooser getTypeChooser()

### getInternalBaseClassName

public String getInternalBaseClassName()

### getMethodNode

public MethodNode getMethodNode()

### setMethodNode

public void setMethodNode(MethodNode mn)

### getConstructorNode

public ConstructorNode getConstructorNode()

### setConstructorNode

public void setConstructorNode(ConstructorNode cn)

### isNotClinit

public boolean isNotClinit()

### getSourceUnit

public SourceUnit getSourceUnit()

### isStaticContext

public boolean isStaticContext()

### isInClosure

public boolean isInClosure()

### isInClosureConstructor

public boolean isInClosureConstructor()

### isNotExplicitThisInClosure

public boolean isNotExplicitThisInClosure(boolean implicitThis)

### isStaticMethod

public boolean isStaticMethod()

### getReturnType

public ClassNode getReturnType()

### isStaticConstructor

public boolean isStaticConstructor()

### isConstructor

public boolean isConstructor()

### isInScriptBody

public boolean isInScriptBody()

Returns:
  true if we are in a script body, where all variables declared are no longer local variables but are properties

### getClassName

public String getClassName()

### getOutermostClass

public ClassNode getOutermostClass()

### getContext

public GeneratorContext getContext()

### setInterfaceClassLoadingClass

public void setInterfaceClassLoadingClass(InterfaceHelperClassNode ihc)

### getInterfaceClassLoadingClass

public InterfaceHelperClassNode getInterfaceClassLoadingClass()

### shouldOptimizeForInt

public boolean shouldOptimizeForInt()

### getStatementWriter

public StatementWriter getStatementWriter()

### switchToFastPath

public void switchToFastPath()

### switchToSlowPath

public void switchToSlowPath()

### isFastPath

public boolean isFastPath()

### getBytecodeVersion

public int getBytecodeVersion()

### getLineNumber

public int getLineNumber()

### setLineNumber

public void setLineNumber(int n)

### resetLineNumber

public void resetLineNumber()

### getNextHelperMethodIndex

public int getNextHelperMethodIndex()

### getSuperMethodNames

public List<String> getSuperMethodNames()