| Interface | Description |
|---|---|
| Function |
Methods for function implementation
|
| NumConverter<T> |
Interface that define methods for conversion of custom Object to BigDecimal
with which JCalc API knows to work.
|
| Operation | |
| Operator |
Method for implementing operator.
|
| Class | Description |
|---|---|
| AbstractCalculator<CALC> |
Abstract class that concrete calculator extends
|
| Cache |
Global cache for operator, function, NumConverter classes and instances
|
| Calc |
Calculator implementation with basic operations.
|
| CalcFactory |
Common used expressions
|
| CalcTrig |
Calculator implementation with trigonometric functions.
|
| CList |
List based on LinkedList that can hold object used by JCalc API.
|
| CListListener |
Listener used to detect changes of expression.
|
| FunctionData |
Data model for data forwarded to concrete function.
|
| LinkOperation | |
| Num |
Mutable wrapper object around BigDecimal object.
|
| OperationRegister |
Class used for local scope and global scope (Cache) registered operation methods (operators and functions).
|
| Properties |
Properties for
AbstractCalculator, Num
With ability to declare global properties on scope of running application by providing properties file in class path. |
| Enum | Description |
|---|---|
| Bracket |
Enum for declaring brackets like objects in infix and postfix notation.
|
| Rounding |
Map rounding between
BigDecimal rounding mode, and RoundingMode
JCalc API use BigDecimal rounding when it's possible, otherwise it use standard RoundingModey. |
| Exception | Description |
|---|---|
| CalculatorException |
Exception wrapper around RuntimeException.
|
| Annotation Type | Description |
|---|---|
| Implementation |
Link operator or function interface that contains overloaded methods to implements in
AbstractCalculator
with concrete class that implement calculation logic for annotated operator or function. |
| SingletonComponent |
Annotation properties for
NumConverter, Operator, Function implementation which
provide that only one instance of implementation can be instantiate. |
JCalc API 2014 Davor Sauer - Apache 2.0