org.codehaus.groovy.classgen.asm
Class BinaryExpressionMultiTypeDispatcher
java.lang.Object
org.codehaus.groovy.classgen.asm.BinaryExpressionHelper
org.codehaus.groovy.classgen.asm.BinaryExpressionMultiTypeDispatcher
- Direct Known Subclasses:
- StaticTypesBinaryExpressionMultiTypeDispatcher
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.
|
Method Summary |
protected void |
assignToArray(Expression orig,
Expression receiver,
Expression index,
Expression rhsValueLoader)
|
protected boolean |
doPrimtiveCompare(ClassNode leftType,
ClassNode rightType,
BinaryExpression binExp)
|
protected void |
evaluateBinaryExpression(java.lang.String message,
BinaryExpression binExp)
|
protected void |
evaluateBinaryExpressionWithAssignment(java.lang.String method,
BinaryExpression binExp)
|
protected void |
evaluateCompareExpression(MethodCaller compareMethod,
BinaryExpression binExp)
|
protected int |
getOperandType(ClassNode type)
|
protected BinaryExpressionWriter[] |
initializeDelegateHelpers()
|
protected void |
writePostOrPrefixMethod(int op,
java.lang.String method,
Expression expression,
Expression orig)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
binExpWriter
protected BinaryExpressionWriter[] binExpWriter
typeMap
public static java.util.Map<ClassNode,java.lang.Integer> typeMap
typeMapKeyNames
public static final java.lang.String[] typeMapKeyNames
BinaryExpressionMultiTypeDispatcher
public BinaryExpressionMultiTypeDispatcher(WriterController wc)
initializeDelegateHelpers
protected BinaryExpressionWriter[] initializeDelegateHelpers()
getOperandType
protected int getOperandType(ClassNode type)
doPrimtiveCompare
protected boolean doPrimtiveCompare(ClassNode leftType,
ClassNode rightType,
BinaryExpression binExp)
evaluateCompareExpression
protected void evaluateCompareExpression(MethodCaller compareMethod,
BinaryExpression binExp)
- Overrides:
evaluateCompareExpression in class BinaryExpressionHelper
evaluateBinaryExpression
protected void evaluateBinaryExpression(java.lang.String message,
BinaryExpression binExp)
- Overrides:
evaluateBinaryExpression in class BinaryExpressionHelper
evaluateBinaryExpressionWithAssignment
protected void evaluateBinaryExpressionWithAssignment(java.lang.String method,
BinaryExpression binExp)
- Overrides:
evaluateBinaryExpressionWithAssignment in class BinaryExpressionHelper
assignToArray
protected void assignToArray(Expression orig,
Expression receiver,
Expression index,
Expression rhsValueLoader)
- Overrides:
assignToArray in class BinaryExpressionHelper
writePostOrPrefixMethod
protected void writePostOrPrefixMethod(int op,
java.lang.String method,
Expression expression,
Expression orig)
- Overrides:
writePostOrPrefixMethod in class BinaryExpressionHelper