Qore Programming Language 1.19.5
|
evaluates an AbstractQoreNode and dereferences the stored value in the destructor More...
#include <QoreValue.h>
Public Member Methods | |
DLLEXPORT | ValueEvalOptimizedRefHolder (const QoreValue &exp, ExceptionSink *xs) |
evaluates the exp argument | |
DLLEXPORT | ValueEvalOptimizedRefHolder (ExceptionSink *xs) |
creates the object with with no evaluation | |
DLLEXPORT int | eval (const QoreValue &exp) |
evaluates the argument, returns -1 for error, 0 = OK | |
Public Member Methods inherited from ValueEvalRefHolder | |
DLLEXPORT | ValueEvalRefHolder (const AbstractQoreNode *exp, ExceptionSink *xs) |
evaluates the exp argument | |
DLLEXPORT | ValueEvalRefHolder (const QoreValue exp, ExceptionSink *xs) |
evaluates the exp argument More... | |
DLLEXPORT | ValueEvalRefHolder (ExceptionSink *xs) |
creates the object with with no evaluation More... | |
DLLEXPORT int | eval (const AbstractQoreNode *exp) |
evaluates the argument, returns -1 for error, 0 = OK More... | |
DLLEXPORT int | eval (const QoreValue exp) |
evaluates the argument, returns -1 for error, 0 = OK More... | |
Public Member Methods inherited from ValueOptionalRefHolder | |
DLLLOCAL | ValueOptionalRefHolder (ExceptionSink *xs) |
creates an empty object | |
DLLLOCAL | ValueOptionalRefHolder (QoreValue n_v, bool nd, ExceptionSink *xs) |
creates the object with the given values | |
DLLLOCAL void | clearTemp () |
sets needs_deref = false | |
DLLEXPORT void | ensureReferencedValue () |
DLLEXPORT QoreValue | getReferencedValue () |
returns a referenced value; caller owns the reference; the current object is not disturbed | |
DLLLOCAL bool | isTemp () const |
returns true if the value is temporary (needs dereferencing) | |
DLLLOCAL | operator bool () const |
returns true if the value is not NOTHING | |
DLLLOCAL void | setValue (QoreValue nv) |
assigns a new non-temporary value | |
DLLLOCAL void | setValue (QoreValue nv, bool temp) |
assigns a new value | |
DLLLOCAL AbstractQoreNode * | takeNode (bool &nd) |
returns the stored AbstractQoreNode pointer and sets the dereference flag as an output variable | |
template<typename T > | |
DLLLOCAL T * | takeReferencedNode () |
returns the stored node value and leaves the current object empty | |
DLLEXPORT QoreValue | takeReferencedValue () |
returns a QoreValue after incrementing the reference count of any node value stored if necessary | |
DLLLOCAL QoreValue | takeValue (bool &nd) |
returns the stored value and sets the dereference flag as an output variable | |
DLLLOCAL void | takeValueFrom (ValueOptionalRefHolder &val) |
returns the stored value which must be dereferenced if it is a node object (i.e. type == QV_Node) | |
Public Member Methods inherited from ValueHolderBase | |
DLLLOCAL | ValueHolderBase (ExceptionSink *xs) |
creates an ampty object | |
DLLLOCAL | ValueHolderBase (QoreValue n_v, ExceptionSink *xs) |
creates the object with the given value | |
DLLLOCAL QoreValue & | operator* () |
returns the value being managed | |
DLLLOCAL const QoreValue & | operator* () const |
returns the value being managed | |
DLLLOCAL QoreValue * | operator-> () |
returns the value being managed | |
DLLLOCAL const QoreValue * | operator-> () const |
returns the value being managed | |
Additional Inherited Members | |
Private Member Methods inherited from ValueEvalRefHolder | |
DLLLOCAL int | evalIntern (const AbstractQoreNode *exp) |
evaluates the argument, returns -1 for error, 0 = OK More... | |
DLLLOCAL int | evalIntern (const QoreValue &exp) |
evaluates the argument, returns -1 for error, 0 = OK More... | |
Private Attributes inherited from ValueOptionalRefHolder | |
bool | needs_deref |
flag indicating if the value should be dereferenced in the destructor or not | |
Private Attributes inherited from ValueHolderBase | |
QoreValue | v |
the value held | |
ExceptionSink * | xsink |
for possible Qore-language exceptions | |
evaluates an AbstractQoreNode and dereferences the stored value in the destructor