StaticTypesBinaryExpressionMultiTypeDispatcher (groovy 2.4.15 API)
Date: 2018-03-23

Package: org.codehaus.groovy.classgen.asm.sc

## [Java] Class StaticTypesBinaryExpressionMultiTypeDispatcher

- org.codehaus.groovy.classgen.asm.sc.StaticTypesBinaryExpressionMultiTypeDispatcher

- All Implemented Interfaces and Traits:
    org.objectweb.asm.Opcodes

      public class StaticTypesBinaryExpressionMultiTypeDispatcher
      extends BinaryExpressionMultiTypeDispatcher

  A specialized version of the multi type binary expression dispatcher which is aware of static compilation. It is able to generate optimized bytecode for some operations using JVM instructions when available.

  Authors:
    Cedric Champeau
    Jochen Theodorou

- - Inherited fields
    Fields inherited from class | Fields
    --- | ---
    `class BinaryExpressionMultiTypeDispatcher` | `binExpWriter, typeMap, typeMapKeyNames`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `StaticTypesBinaryExpressionMultiTypeDispatcher (WriterController wc)`

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `protected void` | `assignToArray(Expression parent, Expression receiver, Expression index, Expression rhsValueLoader)`
    `` | `void` | `evaluateEqual(BinaryExpression expression, boolean defineVariable)`
    `` | `protected void` | `writePostOrPrefixMethod(int op, String method, Expression expression, Expression orig)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class BinaryExpressionMultiTypeDispatcher` | `BinaryExpressionMultiTypeDispatcher, assignToArray, doPrimitiveCompare, doPrimtiveCompare, evaluateBinaryExpression, evaluateBinaryExpressionWithAssignment, evaluateCompareExpression, getOperandType, initializeDelegateHelpers, writePostOrPrefixMethod`
    `class BinaryExpressionHelper` | `assignToArray, eval, evaluateArrayAssignmentWithOperator, evaluateBinaryExpression, evaluateBinaryExpressionWithAssignment, evaluateCompareExpression, evaluateEqual, evaluatePostfixMethod, evaluatePrefixMethod, evaluateTernary, getController, getIsCaseMethod, writePostOrPrefixMethod`
    `class Object` | `wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll`

- - ### Constructor Detail

    - #### public StaticTypesBinaryExpressionMultiTypeDispatcher(WriterController wc)

  - ### Method Detail

    - #### protected void assignToArray(Expression parent, Expression receiver, Expression index, Expression rhsValueLoader)

    - #### @Override public void evaluateEqual(BinaryExpression expression, boolean defineVariable)

    - #### @Override protected void writePostOrPrefixMethod(int op, String method, Expression expression, Expression orig)