org.codehaus.groovy.classgen.asm
Class BinaryDoubleExpressionHelper

java.lang.Object
  extended by org.codehaus.groovy.classgen.asm.BinaryExpressionWriter
      extended by org.codehaus.groovy.classgen.asm.BinaryLongExpressionHelper
          extended by org.codehaus.groovy.classgen.asm.BinaryDoubleExpressionHelper

public class BinaryDoubleExpressionHelper
extends BinaryLongExpressionHelper

Author:
Jochen "blackdrag" Theodorou

Field Summary
 
Fields inherited from class org.codehaus.groovy.classgen.asm.BinaryExpressionWriter
stdCompareCodes
 
Constructor Summary
BinaryDoubleExpressionHelper(WriterController controller)
           
 
Method Summary
protected  MethodCaller getArrayGetCaller()
           
protected  MethodCaller getArraySetCaller()
           
protected  int getBitwiseOperationBytecode(int op)
           
protected  int getCompareCode()
           
protected  ClassNode getDevisionOpResultType()
           
protected  ClassNode getNormalOpResultType()
           
protected  int getShiftOperationBytecode(int type)
           
protected  int getStandardOperationBytecode(int type)
           
protected  boolean supportsDivision()
           
protected  boolean writeBitwiseOp(int op, boolean simulate)
          writes some the bitwise operations. type is one of BITWISE_OR, BITWISE_AND, BIWISE_XOR
protected  void writeMinusMinus(org.objectweb.asm.MethodVisitor mv)
           
protected  void writePlusPlus(org.objectweb.asm.MethodVisitor mv)
           
protected  boolean writeShiftOp(int type, boolean simulate)
          Write shifting operations.
 
Methods inherited from class org.codehaus.groovy.classgen.asm.BinaryLongExpressionHelper
doubleTwoOperands, removeTwoOperands
 
Methods inherited from class org.codehaus.groovy.classgen.asm.BinaryExpressionWriter
arrayGet, arraySet, getArrayGetResultType, write, writeDivision, writePostOrPrefixMethod, writeSpaceship, writeStdCompare, writeStdOperators
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BinaryDoubleExpressionHelper

public BinaryDoubleExpressionHelper(WriterController controller)
Method Detail

getArrayGetCaller

protected MethodCaller getArrayGetCaller()
Overrides:
getArrayGetCaller in class BinaryLongExpressionHelper

getArraySetCaller

protected MethodCaller getArraySetCaller()
Overrides:
getArraySetCaller in class BinaryLongExpressionHelper

writeBitwiseOp

protected boolean writeBitwiseOp(int op,
                                 boolean simulate)
Description copied from class: BinaryExpressionWriter
writes some the bitwise operations. type is one of BITWISE_OR, BITWISE_AND, BIWISE_XOR

Overrides:
writeBitwiseOp in class BinaryExpressionWriter
Parameters:
op - the token type
Returns:
true if a successful bitwise operation write

getBitwiseOperationBytecode

protected int getBitwiseOperationBytecode(int op)
Overrides:
getBitwiseOperationBytecode in class BinaryLongExpressionHelper

getCompareCode

protected int getCompareCode()
Overrides:
getCompareCode in class BinaryLongExpressionHelper

getNormalOpResultType

protected ClassNode getNormalOpResultType()
Overrides:
getNormalOpResultType in class BinaryLongExpressionHelper

writeShiftOp

protected boolean writeShiftOp(int type,
                               boolean simulate)
Description copied from class: BinaryExpressionWriter
Write shifting operations. Type is one of LEFT_SHIFT, RIGHT_SHIFT, or RIGHT_SHIFT_UNSIGNED

Overrides:
writeShiftOp in class BinaryExpressionWriter
Parameters:
type - the token type
Returns:
true on a successful shift operation write

getShiftOperationBytecode

protected int getShiftOperationBytecode(int type)
Overrides:
getShiftOperationBytecode in class BinaryLongExpressionHelper

getStandardOperationBytecode

protected int getStandardOperationBytecode(int type)
Overrides:
getStandardOperationBytecode in class BinaryLongExpressionHelper

writeMinusMinus

protected void writeMinusMinus(org.objectweb.asm.MethodVisitor mv)
Overrides:
writeMinusMinus in class BinaryLongExpressionHelper

writePlusPlus

protected void writePlusPlus(org.objectweb.asm.MethodVisitor mv)
Overrides:
writePlusPlus in class BinaryLongExpressionHelper

getDevisionOpResultType

protected ClassNode getDevisionOpResultType()
Overrides:
getDevisionOpResultType in class BinaryLongExpressionHelper

supportsDivision

protected boolean supportsDivision()
Overrides:
supportsDivision in class BinaryExpressionWriter

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