22 #ifndef _ATFLOATORDERIVED_HPP
23 #define _ATFLOATORDERIVED_HPP
25 #include <xercesc/util/XercesDefs.hpp>
26 #include <xqilla/framework/XQillaExport.hpp>
83 virtual bool isNaN()
const = 0;
89 virtual bool isZero()
const = 0;
99 virtual const MAPM &
asMAPM()
const = 0;
104 #endif // _ATFLOATORDERIVED_HPP
virtual bool isInfinite() const =0
virtual Numeric::Ptr invert(const DynamicContext *context) const =0
Returns the Additive inverse of this Numeric.
virtual const XMLCh * getTypeName() const =0
virtual State getState() const =0
virtual Numeric::Ptr ceiling(const DynamicContext *context) const =0
Returns the ceiling of this Numeric.
virtual Numeric::Ptr add(const Numeric::Ptr &other, const DynamicContext *context) const =0
Returns a Numeric object which is the sum of this and other.
virtual bool isNaN() const =0
Super class of all the reference counted wrappers for Items.
Definition: ReferenceCounted.hpp:58
virtual bool isPositive() const =0
Is this Numeric positive?
Definition: Numeric.hpp:33
virtual Numeric::Ptr round(const DynamicContext *context) const =0
Rounds this Numeric.
AtomicObjectType
Definition: AnyAtomicType.hpp:36
virtual Numeric::Ptr divide(const Numeric::Ptr &other, const DynamicContext *context) const =0
Returns a Numeric object which is the quotient of this and other.
virtual AnyAtomicType::AtomicObjectType getPrimitiveTypeIndex() const =0
virtual bool isZero() const =0
Does this Numeric have value 0?
Definition: ATFloatOrDerived.hpp:29
virtual Numeric::Ptr subtract(const Numeric::Ptr &other, const DynamicContext *context) const =0
Returns a Numeric object which is the difference of this and other.
virtual const XMLCh * asString(const DynamicContext *context) const =0
virtual const XMLCh * getPrimitiveTypeName() const =0
virtual const XMLCh * getTypeURI() const =0
RefCountPointer< const ATFloatOrDerived > Ptr
Definition: ATFloatOrDerived.hpp:32
The execution time dynamic context interface.
Definition: DynamicContext.hpp:39
virtual Numeric::Ptr mod(const Numeric::Ptr &other, const DynamicContext *context) const =0
Returns the arithmetic product of its operands as a Numeric.
virtual bool isNegative() const =0
Is this Numeric negative?
virtual Numeric::Ptr roundHalfToEven(const Numeric::Ptr &precision, const DynamicContext *context) const =0
Rounds this Numeric to the given precision, and rounds a half to even.
virtual Numeric::Ptr floor(const DynamicContext *context) const =0
Returns the floor of this Numeric.
virtual Numeric::Ptr promoteTypeIfApplicable(AnyAtomicType::AtomicObjectType typeIndex, const DynamicContext *context) const =0
State
Definition: Numeric.hpp:124
virtual Numeric::Ptr multiply(const Numeric::Ptr &other, const DynamicContext *context) const =0
Returns a Numeric object which is the product of this and other.
virtual const MAPM & asMAPM() const =0