# Package org.codehaus.groovy.classgen.asm

Helper classes for ASMClassGenerator. All classes in this package are for internal usage only.

- Interface Summary
  Interface | Description
  --- | ---
  ClosureWriter.UseExistingReference |
  MopWriter.Factory |
  TypeChooser | Interface for modules which are capable of resolving the type of an expression.
  WriterControllerFactory | A non static factory to get alternative writer controller to be stored in the meta data

- Class Summary
  Class | Description
  --- | ---
  AssertionWriter |
  BinaryBooleanExpressionHelper | Binary write operations specialised for Booleans
  BinaryDoubleExpressionHelper |
  BinaryExpressionHelper |
  BinaryExpressionMultiTypeDispatcher | This class is for internal use only! This class will dispatch to the right type adapters according to the kind of binary expression that is provided.
  BinaryExpressionWriter | Base class for writing primitive typed operations
  BinaryFloatExpressionHelper |
  BinaryIntExpressionHelper |
  BinaryLongExpressionHelper |
  BinaryObjectExpressionHelper |
  BytecodeDumper | An utility class which can be used in test cases to dump generated bytecode.
  BytecodeHelper | A helper class for bytecode generation with AsmClassGenerator.
  BytecodeVariable | Represents compile time variable metadata while compiling a method.
  CallSiteWriter | This class represents non public API used by AsmClassGenerator.
  ClosureWriter |
  CompileStack | This class is a helper for AsmClassGenerator.
  CompileStack.BlockRecorder |
  CompileStack.LabelRange |
  DelegatingController | This class will delegate all calls to a WriterController given in the constructor.
  ExpressionAsVariableSlot | Helper class that takes an Expression and if visited will load it normally, storing the result in a helper variable, which then can be requested after the visit is completed.
  InvocationWriter |
  MethodCaller | A helper class to invoke methods more easily in ASM
  MethodCallerMultiAdapter |
  MopWriter |
  OperandStack |
  OptimizingStatementWriter | A class to write out the optimized statements
  OptimizingStatementWriter.ClassNodeSkip |
  OptimizingStatementWriter.StatementMeta |
  StatementMetaTypeChooser | A `TypeChooser` which is aware of statement metadata.
  StatementWriter |
  UnaryExpressionHelper | A helper class used to generate bytecode for unary expressions.
  VariableSlotLoader |
  WriterController |