Package: org.codehaus.groovy.classgen.asm

## [Java] Class LambdaWriter

- org.codehaus.groovy.classgen.asm.LambdaWriter

-     public class LambdaWriter
      extends ClosureWriter

  Generates bytecode for lambda expressions.

- - Inherited fields
    Fields inherited from class | Fields
    --- | ---
    `class ClosureWriter` | `GENERATED_CLOSURE_CLASS, OUTER_INSTANCE, PACKED_METHOD_PREFIX, THIS_OBJECT, controller`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `LambdaWriter(WriterController controller)` Creates a lambda writer with the given controller.

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `protected Parameter[]` | `getLambdaSharedVariables(LambdaExpression expression)` Gets the shared variables for a lambda expression.
    `` | `public void` | `writeLambda(LambdaExpression expression)` Generates bytecode for a lambda expression.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class ClosureWriter` | `addConstructor, addFieldsForLocalVariables, addGeneratedClosureConstructorCall, addSerialVersionUIDField, createBlockStatementForConstructor, createClosureClass, getClosureSharedVariables, getOrAddClosureClass, isPackTriggered, loadReference, loadThis, markHoistedBody, packedClosureUsesDelegateGuard, readOnlyCaptureType, removeInitialValues, triggerDeclineReason, writeClosure, writePackedDispatcher`

- - ### Constructor Detail

    - #### public LambdaWriter(WriterController controller)

      Creates a lambda writer with the given controller.

      Parameters:
        `controller` - the writer controller

  - ### Method Detail

    - #### protected Parameter[] getLambdaSharedVariables(LambdaExpression expression)

      Gets the shared variables for a lambda expression.

      Parameters:
        `expression` - the lambda expression
      Returns:
        the shared variables

    - #### public void writeLambda(LambdaExpression expression)

      Generates bytecode for a lambda expression.

      Parameters:
        `expression` - the lambda expression to generate bytecode for