SourceForge.net Logo
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Examples

Numeric Class Reference

#include <Numeric.hpp>

Inheritance diagram for Numeric:

Inheritance graph
[legend]
List of all members.

Public Types

typedef RefCountPointer< const
Numeric
Ptr
enum  State {
  NEG_INF = 0, NEG_NUM = 1, NUM = 2, INF = 3,
  NaN = 4
}

Public Member Functions

virtual bool isNumericValue () const
virtual const XMLCh * getPrimitiveTypeName () const =0
virtual const XMLCh * getTypeURI () const =0
virtual const XMLCh * getTypeName () const =0
virtual const XMLCh * asString (const DynamicContext *context) const =0
virtual Numeric::Ptr promoteTypeIfApplicable (AnyAtomicType::AtomicObjectType typeIndex, const DynamicContext *context) const =0
virtual bool equals (const AnyAtomicType::Ptr &target, const DynamicContext *context) const
virtual bool lessThan (const Numeric::Ptr &other, const DynamicContext *context) const
 Returns true if this is less than other, false otherwise.
virtual bool greaterThan (const Numeric::Ptr &other, const DynamicContext *context) const
 Returns true if this is greater than other, false otherwise.
virtual int compare (const Numeric::Ptr &other, const DynamicContext *context) const
 Returns less than 0 if this is less that other, 0 if they are the same, and greater than 0 otherwise.
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 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 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 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 Numeric::Ptr mod (const Numeric::Ptr &other, const DynamicContext *context) const =0
 Returns the arithmetic product of its operands as a Numeric.
virtual Numeric::Ptr floor (const DynamicContext *context) const =0
 Returns the floor of this Numeric.
virtual Numeric::Ptr ceiling (const DynamicContext *context) const =0
 Returns the ceiling of this Numeric.
virtual Numeric::Ptr round (const DynamicContext *context) const =0
 Rounds this Numeric.
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 invert (const DynamicContext *context) const =0
 Returns the Additive inverse of this Numeric.
virtual bool isZero () const =0
 Does this Numeric have value 0?
virtual bool isPositive () const =0
 Is this Numeric positive?
virtual bool isNegative () const =0
 Is this Numeric negative?
virtual bool isNaN () const =0
virtual bool isInfinite () const =0
virtual AnyAtomicType::AtomicObjectType getPrimitiveTypeIndex () const =0
virtual const MAPM & asMAPM () const =0
virtual double asDouble () const
virtual int asInt () const
virtual State getState () const =0

Static Public Member Functions

void checkFloatLimits (Numeric::State &state, MAPM &value)
void checkDoubleLimits (Numeric::State &state, MAPM &value)
const XMLCh * asDecimalString (const MAPM &value, int significantDigits, const StaticContext *context)
const XMLCh * asDoubleString (State state, const MAPM &value, int significantDigits, const StaticContext *context)

Static Public Attributes

const XMLCh NaN_string []
const XMLCh NAN_string []
const XMLCh INF_string []
const XMLCh NegINF_string []
const XMLCh NegZero_string []
const XMLCh PosZero_string []

Protected Member Functions

virtual AnyAtomicType::Ptr castAsInternal (AtomicObjectType targetIndex, const XMLCh *targetURI, const XMLCh *targetType, const DynamicContext *context) const
const XMLCh * asDecimalString (int significantDigits, const StaticContext *context) const
const XMLCh * asDoubleString (int significantDigits, const StaticContext *context) const

Member Typedef Documentation

typedef RefCountPointer<const Numeric> Numeric::Ptr
 

Reimplemented from AnyAtomicType.

Reimplemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.


Member Enumeration Documentation

enum Numeric::State
 

Enumeration values:
NEG_INF 
NEG_NUM 
NUM 
INF 
NaN 


Member Function Documentation

virtual Numeric::Ptr Numeric::add const Numeric::Ptr other,
const DynamicContext context
const [pure virtual]
 

Returns a Numeric object which is the sum of this and other.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

const XMLCh* Numeric::asDecimalString int  significantDigits,
const StaticContext context
const [protected]
 

const XMLCh* Numeric::asDecimalString const MAPM &  value,
int  significantDigits,
const StaticContext context
[static]
 

virtual double Numeric::asDouble  )  const [virtual]
 

const XMLCh* Numeric::asDoubleString int  significantDigits,
const StaticContext context
const [protected]
 

const XMLCh* Numeric::asDoubleString State  state,
const MAPM &  value,
int  significantDigits,
const StaticContext context
[static]
 

virtual int Numeric::asInt  )  const [virtual]
 

virtual const MAPM& Numeric::asMAPM  )  const [pure virtual]
 

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual const XMLCh* Numeric::asString const DynamicContext context  )  const [pure virtual]
 

Implements AnyAtomicType.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual AnyAtomicType::Ptr Numeric::castAsInternal AtomicObjectType  targetIndex,
const XMLCh *  targetURI,
const XMLCh *  targetType,
const DynamicContext context
const [protected, virtual]
 

Reimplemented from AnyAtomicType.

virtual Numeric::Ptr Numeric::ceiling const DynamicContext context  )  const [pure virtual]
 

Returns the ceiling of this Numeric.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

void Numeric::checkDoubleLimits Numeric::State state,
MAPM &  value
[static]
 

void Numeric::checkFloatLimits Numeric::State state,
MAPM &  value
[static]
 

virtual int Numeric::compare const Numeric::Ptr other,
const DynamicContext context
const [virtual]
 

Returns less than 0 if this is less that other, 0 if they are the same, and greater than 0 otherwise.

virtual Numeric::Ptr Numeric::divide const Numeric::Ptr other,
const DynamicContext context
const [pure virtual]
 

Returns a Numeric object which is the quotient of this and other.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual bool Numeric::equals const AnyAtomicType::Ptr target,
const DynamicContext context
const [virtual]
 

Implements AnyAtomicType.

virtual Numeric::Ptr Numeric::floor const DynamicContext context  )  const [pure virtual]
 

Returns the floor of this Numeric.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual AnyAtomicType::AtomicObjectType Numeric::getPrimitiveTypeIndex  )  const [pure virtual]
 

Implements AnyAtomicType.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual const XMLCh* Numeric::getPrimitiveTypeName  )  const [pure virtual]
 

Implements AnyAtomicType.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual State Numeric::getState  )  const [pure virtual]
 

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual const XMLCh* Numeric::getTypeName  )  const [pure virtual]
 

Implements AnyAtomicType.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual const XMLCh* Numeric::getTypeURI  )  const [pure virtual]
 

Implements AnyAtomicType.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual bool Numeric::greaterThan const Numeric::Ptr other,
const DynamicContext context
const [virtual]
 

Returns true if this is greater than other, false otherwise.

virtual Numeric::Ptr Numeric::invert const DynamicContext context  )  const [pure virtual]
 

Returns the Additive inverse of this Numeric.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual bool Numeric::isInfinite  )  const [pure virtual]
 

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual bool Numeric::isNaN  )  const [pure virtual]
 

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual bool Numeric::isNegative  )  const [pure virtual]
 

Is this Numeric negative?

Implemented in ATDecimalOrDerived, and ATFloatOrDerived.

virtual bool Numeric::isNumericValue  )  const [inline, virtual]
 

Reimplemented from AnyAtomicType.

virtual bool Numeric::isPositive  )  const [pure virtual]
 

Is this Numeric positive?

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual bool Numeric::isZero  )  const [pure virtual]
 

Does this Numeric have value 0?

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual bool Numeric::lessThan const Numeric::Ptr other,
const DynamicContext context
const [virtual]
 

Returns true if this is less than other, false otherwise.

virtual Numeric::Ptr Numeric::mod const Numeric::Ptr other,
const DynamicContext context
const [pure virtual]
 

Returns the arithmetic product of its operands as a Numeric.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual Numeric::Ptr Numeric::multiply const Numeric::Ptr other,
const DynamicContext context
const [pure virtual]
 

Returns a Numeric object which is the product of this and other.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual Numeric::Ptr Numeric::promoteTypeIfApplicable AnyAtomicType::AtomicObjectType  typeIndex,
const DynamicContext context
const [pure virtual]
 

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual Numeric::Ptr Numeric::round const DynamicContext context  )  const [pure virtual]
 

Rounds this Numeric.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual Numeric::Ptr Numeric::roundHalfToEven const Numeric::Ptr precision,
const DynamicContext context
const [pure virtual]
 

Rounds this Numeric to the given precision, and rounds a half to even.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.

virtual Numeric::Ptr Numeric::subtract const Numeric::Ptr other,
const DynamicContext context
const [pure virtual]
 

Returns a Numeric object which is the difference of this and other.

Implemented in ATDecimalOrDerived, ATDoubleOrDerived, and ATFloatOrDerived.


Member Data Documentation

const XMLCh Numeric::INF_string[] [static]
 

const XMLCh Numeric::NAN_string[] [static]
 

const XMLCh Numeric::NaN_string[] [static]
 

const XMLCh Numeric::NegINF_string[] [static]
 

const XMLCh Numeric::NegZero_string[] [static]
 

const XMLCh Numeric::PosZero_string[] [static]
 


The documentation for this class was generated from the following file:
Generated on Fri Sep 25 06:55:41 2009 for XQilla Simple API by  doxygen 1.3.9.1