Qore's arbitrary-precision number value type, dynamically-allocated only, reference counted.  
 More...
 | 
| 
DLLEXPORT  | QoreNumberNode () | 
|   | creates a new numbering-point value and assigns it to 0 
  | 
|   | 
| DLLEXPORT  | QoreNumberNode (const char *str) | 
|   | creates a new number value and assigns the initial value to it  More...
  | 
|   | 
| DLLEXPORT  | QoreNumberNode (const char *str, unsigned prec) | 
|   | creates a new number value and assigns the initial value to it  More...
  | 
|   | 
| 
DLLEXPORT  | QoreNumberNode (const QoreNumberNode &old) | 
|   | creates a copy of the object 
  | 
|   | 
| 
DLLEXPORT  | QoreNumberNode (const QoreValue n) | 
|   | creates a new number value from the node, if not possible then the new number will be assigned 0 
  | 
|   | 
| DLLEXPORT  | QoreNumberNode (double f) | 
|   | creates a new number value and assigns the initial value to it  More...
  | 
|   | 
| DLLEXPORT  | QoreNumberNode (int64 i) | 
|   | creates a new number value and assigns the initial value to it  More...
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | doDivideBy (const QoreNumberNode &n, ExceptionSink *xsink) const | 
|   | divide this value by the argument return the result (can throw a division-by-zero exception) 
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | doDivideBy (double d, ExceptionSink *xsink) const | 
|   | divide this value by the argument return the result (can throw a division-by-zero exception) 
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | doDivideBy (int64 i, ExceptionSink *xsink) const | 
|   | divide this value by the argument return the result (can throw a division-by-zero exception) 
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | doMinus (const QoreNumberNode &n) const | 
|   | subtract the argument from this value and return the result 
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | doMultiply (const QoreNumberNode &n) const | 
|   | multiply the argument to this value and return the result 
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | doPlus (const QoreNumberNode &n) const | 
|   | add the argument to this value and return the result 
  | 
|   | 
| 
DLLEXPORT bool  | equals (const QoreNumberNode &n) const | 
|   | returns true if the current object is equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | equals (double n) const | 
|   | returns true if the current object is equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | equals (int64 n) const | 
|   | returns true if the current object is equal to the argument 
  | 
|   | 
| virtual DLLEXPORT QoreString *  | getAsString (bool &del, int foff, class ExceptionSink *xsink) const | 
|   | returns a QoreString giving the string representation of the number value, sets del to true  More...
  | 
|   | 
| virtual DLLEXPORT int  | getAsString (QoreString &str, int foff, class ExceptionSink *xsink) const | 
|   | concatenate the string representation of the number value to an existing QoreString  More...
  | 
|   | 
| virtual DLLEXPORT class DateTime *  | getDateTimeRepresentation (bool &del) const | 
|   | returns the DateTime representation of this value and sets del to true  More...
  | 
|   | 
| virtual DLLEXPORT void  | getDateTimeRepresentation (DateTime &dt) const | 
|   | assigns the date representation of the value to the DateTime reference passed  More...
  | 
|   | 
| 
DLLEXPORT unsigned  | getPrec () const | 
|   | returns the precision of the number 
  | 
|   | 
| virtual DLLEXPORT QoreString *  | getStringRepresentation (bool &del) const | 
|   | returns the number value converted to a string and sets del to true  More...
  | 
|   | 
| virtual DLLEXPORT void  | getStringRepresentation (QoreString &str) const | 
|   | concatentates the number value to an existing QoreString reference, default implementation does nothing  More...
  | 
|   | 
| virtual DLLEXPORT const char *  | getTypeName () const | 
|   | returns the type name as a c string  More...
  | 
|   | 
| 
DLLEXPORT bool  | greaterThan (const QoreNumberNode &n) const | 
|   | returns true if the current object is greater than the argument 
  | 
|   | 
| 
DLLEXPORT bool  | greaterThan (double n) const | 
|   | returns true if the current object is greater than the argument 
  | 
|   | 
| 
DLLEXPORT bool  | greaterThan (int64 n) const | 
|   | returns true if the current object is greater than the argument 
  | 
|   | 
| 
DLLEXPORT bool  | greaterThanOrEqual (const QoreNumberNode &n) const | 
|   | returns true if the current object is greater than or equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | greaterThanOrEqual (double n) const | 
|   | returns true if the current object is greater than or equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | greaterThanOrEqual (int64 n) const | 
|   | returns true if the current object is greater than or equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | inf () const | 
|   | returns true if the number is +/-inf 
  | 
|   | 
| virtual DLLEXPORT bool  | is_equal_hard (const AbstractQoreNode *v, ExceptionSink *xsink) const | 
|   | tests for equality without type conversions (hard compare)  More...
  | 
|   | 
| virtual DLLEXPORT bool  | is_equal_soft (const AbstractQoreNode *v, ExceptionSink *xsink) const | 
|   | tests for equality with possible type conversion (soft compare)  More...
  | 
|   | 
| 
DLLEXPORT bool  | lessThan (const QoreNumberNode &n) const | 
|   | returns true if the current object is less than the argument 
  | 
|   | 
| 
DLLEXPORT bool  | lessThan (double n) const | 
|   | returns true if the current object is less than the argument 
  | 
|   | 
| 
DLLEXPORT bool  | lessThan (int64 n) const | 
|   | returns true if the current object is less than the argument 
  | 
|   | 
| 
DLLEXPORT bool  | lessThanOrEqual (const QoreNumberNode &n) const | 
|   | returns true if the current object is less than or equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | lessThanOrEqual (double n) const | 
|   | returns true if the current object is less than or equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | lessThanOrEqual (int64 n) const | 
|   | returns true if the current object is less than or equal to the argument 
  | 
|   | 
| 
DLLEXPORT bool  | nan () const | 
|   | returns true if the number is NaN 
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | negate () const | 
|   | returns the negative of the current object (this) 
  | 
|   | 
| 
DLLEXPORT QoreNumberNode *  | numberRefSelf () const | 
|   | returns a pointer to this with the reference count incremented 
  | 
|   | 
| 
DLLEXPORT bool  | ordinary () const | 
|   | returns true if the number is an ordinary number (neither NaN nor an infinity) 
  | 
|   | 
| 
virtual DLLLOCAL int  | parseInit (QoreValue &val, QoreParseContext &parse_context) | 
|   | returns the type information 
  | 
|   | 
| virtual DLLEXPORT AbstractQoreNode *  | realCopy () const | 
|   | returns a copy of the object; the caller owns the reference count  More...
  | 
|   | 
| 
DLLEXPORT int  | sign () const | 
|   | returns -1 if the number is negative, 0 if zero, or 1 if the number is positive 
  | 
|   | 
| DLLEXPORT void  | toString (QoreString &str, int fmt=QORE_NF_DEFAULT) const | 
|   | concatenates the string value corresponding to the number to the string given  More...
  | 
|   | 
| 
DLLEXPORT bool  | zero () const | 
|   | returns true if the number is zero 
  | 
|   | 
| 
DLLLOCAL  | SimpleValueQoreNode (qore_type_t t, bool n_there_can_be_only_one=false) | 
|   | creates the object by assigning the type code and setting the "value" flag, unsetting the "needs_eval" flag, and setting "there_can_be_only_one" 
  | 
|   | 
| 
DLLLOCAL  | SimpleQoreNode (const SimpleQoreNode &v) | 
|   | copy constructor 
  | 
|   | 
| 
DLLLOCAL  | SimpleQoreNode (qore_type_t t, bool n_value, bool n_needs_eval, bool n_there_can_be_only_one=false) | 
|   | constructor takes the type and value arguments 
  | 
|   | 
| DLLEXPORT void  | deref (ExceptionSink *xsink) | 
|   | decrements the reference count and deletes the object when references = 0  More...
  | 
|   | 
| 
SimpleQoreNode &  | operator= (const SimpleQoreNode &)=delete | 
|   | this function is not implemented 
  | 
|   | 
| 
DLLEXPORT  | AbstractQoreNode (const AbstractQoreNode &v) | 
|   | copy constructor 
  | 
|   | 
| DLLEXPORT  | AbstractQoreNode (qore_type_t t, bool n_value, bool n_needs_eval, bool n_there_can_be_only_one=false, bool n_custom_reference_handlers=false) | 
|   | constructor takes the type  More...
  | 
|   | 
| virtual DLLEXPORT void  | customDeref (ExceptionSink *xsink) | 
|   | 
| virtual DLLEXPORT void  | customRef () const | 
|   | special processing when the object's reference count transitions from 0-1  More...
  | 
|   | 
| DLLEXPORT void  | deref (ExceptionSink *xsink) | 
|   | decrements the reference count and calls derefImpl() if there_can_be_only_one is false, otherwise does nothing  More...
  | 
|   | 
| virtual DLLEXPORT bool  | derefImpl (ExceptionSink *xsink) | 
|   | decrements the reference count  More...
  | 
|   | 
| DLLEXPORT QoreValue  | eval (bool &needs_deref, ExceptionSink *xsink) const | 
|   | optionally evaluates the argument  More...
  | 
|   | 
| DLLEXPORT QoreValue  | eval (ExceptionSink *xsink) const | 
|   | evaluates the object and returns a value (or 0)  More...
  | 
|   | 
| DLLEXPORT int64  | getAsBigInt () const | 
|   | returns the 64-bit integer value of the object  More...
  | 
|   | 
| DLLEXPORT bool  | getAsBool () const | 
|   | returns the boolean value of the object  More...
  | 
|   | 
| DLLEXPORT double  | getAsFloat () const | 
|   | returns the float value of the object  More...
  | 
|   | 
| DLLEXPORT int  | getAsInt () const | 
|   | returns the integer value of the object  More...
  | 
|   | 
| DLLLOCAL qore_type_t  | getType () const | 
|   | returns the data type  More...
  | 
|   | 
| DLLLOCAL bool  | is_value () const | 
|   | returns true if the node represents a value  More...
  | 
|   | 
| 
DLLLOCAL bool  | isReferenceCounted () const | 
|   | returns true if the object is reference-counted 
  | 
|   | 
| DLLLOCAL bool  | needs_eval () const | 
|   | returns true if the object needs evaluation to return a value, false if not  More...
  | 
|   | 
| 
DLLLOCAL AbstractQoreNode &  | operator= (const AbstractQoreNode &) | 
|   | this function is not implemented; it is here as a private function in order to prohibit it from being used 
  | 
|   | 
| 
DLLEXPORT void  | ref () const | 
|   | increments the reference count 
  | 
|   | 
| DLLEXPORT AbstractQoreNode *  | refSelf () const | 
|   | returns "this" with an incremented reference count  More...
  | 
|   | 
| 
DLLEXPORT  | QoreReferenceCounter () | 
|   | creates the reference counter object 
  | 
|   | 
| DLLEXPORT  | QoreReferenceCounter (const QoreReferenceCounter &old) | 
|   | creates a new object with a reference count of 1  More...
  | 
|   | 
| 
DLLEXPORT  | ~QoreReferenceCounter () | 
|   | destroys the reference counter object 
  | 
|   | 
| DLLEXPORT bool  | is_unique () const | 
|   | returns true if the reference count is 1  More...
  | 
|   | 
| DLLEXPORT int  | reference_count () const | 
|   | gets the reference count  More...
  | 
|   | 
| DLLEXPORT bool  | ROdereference () const | 
|   | atomically decrements the reference count  More...
  | 
|   | 
| 
DLLEXPORT void  | ROreference () const | 
|   | atomically increments the reference count 
  | 
|   | 
Qore's arbitrary-precision number value type, dynamically-allocated only, reference counted.