Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.saxonica.bytecode
Class CalculatorCompiler

    java.lang.Object
      com.saxonica.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 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
`static class` | `CalculatorCompiler.AnyDivAny` Arithmetic: anyAtomicType div AnyAtomicType
`static class` | `CalculatorCompiler.AnyIdivAny` Arithmetic: anyAtomicType idiv AnyAtomicType
`static class` | `CalculatorCompiler.AnyMinusAny` Arithmetic: anyAtomicType - AnyAtomicType
`static class` | `CalculatorCompiler.AnyModAny`
`static class` | `CalculatorCompiler.AnyPlusAny` Arithmetic: anyAtomicType + AnyAtomicType
`static class` | `CalculatorCompiler.AnyTimesAny` Arithmetic: anyAtomicType * AnyAtomicType
`static 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
`CalculatorCompiler()`

Method Summary
`abstract void` | `compute(Generator ga, SourceLocator locator)`
`void` | `setCompilerService(CompilerService compiler)`
`void` | `setExpressions(Expression oper0, Expression oper1)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CalculatorCompiler

    public CalculatorCompiler()

Method Detail

### setCompilerService

    public void setCompilerService(CompilerService compiler)

### setExpressions

    public void setExpressions(Expression oper0,
                               Expression oper1)

### compute

    public abstract void compute(Generator ga,
                                 SourceLocator locator)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.