Package: org.codehaus.groovy.classgen.asm

## [Java] Class UnaryExpressionHelper

- org.codehaus.groovy.classgen.asm.UnaryExpressionHelper

-     public class UnaryExpressionHelper
      extends Object

  A helper class used to generate bytecode for unary expressions. AST transformations willing to use a custom unary expression helper may set the WriterControllerFactory node metadata on a class node to provide a custom WriterController which would in turn use a custom expression helper.

  See Also:
    BinaryExpressionHelper

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `protected WriterController` | `controller` | The controller coordinating all bytecode writers for the current class.

  - ### Constructor Summary

    Constructors
    Constructor and description
    `UnaryExpressionHelper(WriterController controller)` Creates an unary expression helper with the given controller.

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public void` | `writeBitwiseNegate(BitwiseNegationExpression expression)` Generates bytecode for a bitwise negation expression.
    `` | `public void` | `writeNotExpression(NotExpression expression)` Generates bytecode for a logical not expression.
    `` | `public void` | `writeUnaryMinus(UnaryMinusExpression expression)` Generates bytecode for a unary minus expression.
    `` | `public void` | `writeUnaryPlus(UnaryPlusExpression expression)` Generates bytecode for a unary plus expression.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### protected final WriterController controller

      The controller coordinating all bytecode writers for the current class.

  - ### Constructor Detail

    - #### public UnaryExpressionHelper(WriterController controller)

      Creates an unary expression helper with the given controller.

      Parameters:
        `controller` - the writer controller

  - ### Method Detail

    - #### public void writeBitwiseNegate(BitwiseNegationExpression expression)

      Generates bytecode for a bitwise negation expression.

      Parameters:
        `expression` - the bitwise negation expression

    - #### public void writeNotExpression(NotExpression expression)

      Generates bytecode for a logical not expression.

      Parameters:
        `expression` - the not expression

    - #### public void writeUnaryMinus(UnaryMinusExpression expression)

      Generates bytecode for a unary minus expression.

      Parameters:
        `expression` - the unary minus expression

    - #### public void writeUnaryPlus(UnaryPlusExpression expression)

      Generates bytecode for a unary plus expression.

      Parameters:
        `expression` - the unary plus expression