Package com.saxonica.ee.bytecode
Class CalculatorCompiler
- java.lang.Object
-
- com.saxonica.ee.bytecode.CalculatorCompiler
-
- Direct Known Subclasses:
CalculatorCompiler.AnyDivAny
,CalculatorCompiler.AnyIdivAny
,CalculatorCompiler.AnyMinusAny
,CalculatorCompiler.AnyModAny
,CalculatorCompiler.AnyPlusAny
,CalculatorCompiler.AnyTimesAny
,CalculatorCompiler.DecimalDivDecimal
,CalculatorCompiler.DecimalIdivDecimal
,CalculatorCompiler.DecimalMinusDecimal
,CalculatorCompiler.DecimalModDecimal
,CalculatorCompiler.DecimalPlusDecimal
,CalculatorCompiler.DecimalTimesDecimal
,CalculatorCompiler.DoubleDivDouble
,CalculatorCompiler.DoubleMinusDouble
,CalculatorCompiler.DoubleModDouble
,CalculatorCompiler.DoublePlusDouble
,CalculatorCompiler.DoubleTimesDouble
,CalculatorCompiler.FloatDivFloat
,CalculatorCompiler.FloatIdivFloat
,CalculatorCompiler.FloatMinusFloat
,CalculatorCompiler.FloatModFloat
,CalculatorCompiler.FloatPlusFloat
,CalculatorCompiler.FloatTimesFloat
,CalculatorCompiler.IntegerDivInteger
,CalculatorCompiler.IntegerIdivInteger
,CalculatorCompiler.IntegerMinusInteger
,CalculatorCompiler.IntegerModInteger
,CalculatorCompiler.IntegerPlusInteger
,CalculatorCompiler.IntegerTimesInteger
public abstract class CalculatorCompiler extends java.lang.Object
This class generates bytecode for arithmetic expressions; it acts as a helper class to the ArithmeticCompiler class. There are many static subclasses for the different kinds of arithmetic expression
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CalculatorCompiler.AnyDivAny
Arithmetic: anyAtomicType div AnyAtomicTypestatic class
CalculatorCompiler.AnyIdivAny
Arithmetic: anyAtomicType idiv AnyAtomicTypestatic class
CalculatorCompiler.AnyMinusAny
Arithmetic: anyAtomicType - AnyAtomicTypestatic class
CalculatorCompiler.AnyModAny
static class
CalculatorCompiler.AnyPlusAny
Arithmetic: anyAtomicType + AnyAtomicTypestatic class
CalculatorCompiler.AnyTimesAny
Arithmetic: anyAtomicType * AnyAtomicTypestatic class
CalculatorCompiler.DecimalDivDecimal
Arithmetic: decimal / decimal (including types that promote to decimal, that is, integer)static class
CalculatorCompiler.DecimalIdivDecimal
Arithmetic: decimal % decimal (including types that promote to decimal, that is, integer)static class
CalculatorCompiler.DecimalMinusDecimal
Arithmetic: decimal - decimal (including types that promote to decimal, that is, integer)static class
CalculatorCompiler.DecimalModDecimal
Arithmetic: decimal % decimal (including types that promote to decimal, that is, integer)static class
CalculatorCompiler.DecimalPlusDecimal
Arithmetic: decimal + decimal (including types that promote to decimal, that is, integer)static class
CalculatorCompiler.DecimalTimesDecimal
Arithmetic: decimal * decimal (including types that promote to decimal, that is, integer)static class
CalculatorCompiler.DoubleDivDouble
Arithmetic: double / double (including types that promote to double)static class
CalculatorCompiler.DoubleMinusDouble
Arithmetic: double - double (including types that promote to double)static class
CalculatorCompiler.DoubleModDouble
Arithmetic: double % double (including types that promote to double)static class
CalculatorCompiler.DoublePlusDouble
Arithmetic: double + double (including types that promote to double)static class
CalculatorCompiler.DoubleTimesDouble
Arithmetic: double * double (including types that promote to double)static class
CalculatorCompiler.FloatDivFloat
Arithmetic: float div float (including types that promote to float)static class
CalculatorCompiler.FloatIdivFloat
Arithmetic: float idiv float (including types that promote to float)static class
CalculatorCompiler.FloatMinusFloat
Arithmetic: float - float (including types that promote to float)static class
CalculatorCompiler.FloatModFloat
Arithmetic: float mod float (including types that promote to float)static class
CalculatorCompiler.FloatPlusFloat
Arithmetic: float + float (including types that promote to float))static class
CalculatorCompiler.FloatTimesFloat
Arithmetic: float * float (including types that promote to float)static class
CalculatorCompiler.IntegerDivInteger
static class
CalculatorCompiler.IntegerIdivInteger
static class
CalculatorCompiler.IntegerMinusInteger
static class
CalculatorCompiler.IntegerModInteger
static class
CalculatorCompiler.IntegerPlusInteger
static class
CalculatorCompiler.IntegerTimesInteger
-
Constructor Summary
Constructors Constructor Description CalculatorCompiler()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract void
compute(Generator ga, javax.xml.transform.SourceLocator locator)
Generate bytecode to compute the result of the arithmetic expressionvoid
setCompilerService(CompilerService compiler)
void
setExpressions(Expression oper0, Expression oper1)
-
-
-
Method Detail
-
setCompilerService
public void setCompilerService(CompilerService compiler)
-
setExpressions
public void setExpressions(Expression oper0, Expression oper1)
-
compute
public abstract void compute(Generator ga, javax.xml.transform.SourceLocator locator)
Generate bytecode to compute the result of the arithmetic expression- Parameters:
ga
- the code generatorlocator
- the location of the arithmetic expression
-
-