Groovy 2.2.1

org.codehaus.groovy.classgen.asm
[Java] Class BinaryExpressionMultiTypeDispatcher

java.lang.Object
  org.codehaus.groovy.classgen.asm.BinaryExpressionHelper
      org.codehaus.groovy.classgen.asm.BinaryExpressionMultiTypeDispatcher

public class BinaryExpressionMultiTypeDispatcher
extends BinaryExpressionHelper

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.

Authors:
Jochen "blackdrag" Theodorou
Roshan Dawrani


Field Summary
protected BinaryExpressionWriter[] binExpWriter

static Map typeMap

static String[] typeMapKeyNames

 
Method Summary
def BinaryExpressionMultiTypeDispatcher(WriterController wc)

protected void assignToArray(Expression orig, Expression receiver, Expression index, Expression rhsValueLoader)

protected boolean doPrimtiveCompare(ClassNode leftType, ClassNode rightType, BinaryExpression binExp)

protected void evaluateBinaryExpression(String message, BinaryExpression binExp)

protected void evaluateBinaryExpressionWithAssignment(String method, BinaryExpression binExp)

protected void evaluateCompareExpression(MethodCaller compareMethod, BinaryExpression binExp)

protected int getOperandType(ClassNode type)

protected BinaryExpressionWriter[] initializeDelegateHelpers()

protected void writePostOrPrefixMethod(int op, String method, Expression expression, Expression orig)

 
Methods inherited from class BinaryExpressionHelper
assignToArray, eval, evaluateArrayAssignmentWithOperator, evaluateBinaryExpression, evaluateBinaryExpressionWithAssignment, evaluateCompareExpression, evaluateEqual, evaluatePostfixMethod, evaluatePrefixMethod, evaluateTernary, getController, getIsCaseMethod, writePostOrPrefixMethod
 
Methods inherited from class Object
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll
 

Field Detail

binExpWriter

protected BinaryExpressionWriter[] binExpWriter


typeMap

public static Map typeMap


typeMapKeyNames

public static final String[] typeMapKeyNames


 
Method Detail

BinaryExpressionMultiTypeDispatcher

public def BinaryExpressionMultiTypeDispatcher(WriterController wc)


assignToArray

@Override
protected void assignToArray(Expression orig, Expression receiver, Expression index, Expression rhsValueLoader)


doPrimtiveCompare

protected boolean doPrimtiveCompare(ClassNode leftType, ClassNode rightType, BinaryExpression binExp)


evaluateBinaryExpression

@Override
protected void evaluateBinaryExpression(String message, BinaryExpression binExp)


evaluateBinaryExpressionWithAssignment

@OverridegetController().getCompileStack().popLHS();
protected void evaluateBinaryExpressionWithAssignment(String method, BinaryExpression binExp)


evaluateCompareExpression

@Override
protected void evaluateCompareExpression(MethodCaller compareMethod, BinaryExpression binExp)


getOperandType

protected int getOperandType(ClassNode type)


initializeDelegateHelpers

protected BinaryExpressionWriter[] initializeDelegateHelpers()


writePostOrPrefixMethod

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


 

Copyright © 2003-2013 The Codehaus. All rights reserved.