|
Qore Programming Language
0.9.16
|
32 #ifndef _QORE_INTERN_WEAKREFERENCENODE_H
34 #define _QORE_INTERN_WEAKREFERENCENODE_H
42 DLLLOCAL WeakReferenceNode(
const WeakReferenceNode& old) :
AbstractQoreNode(old), obj(old.obj) {
68 DLLLOCAL
virtual ~WeakReferenceNode() =
default;
89 return new WeakReferenceNode(*
this);
101 return "weak reference";
virtual DLLLOCAL bool getAsBoolImpl() const
default implementation, returns false
Definition: AbstractQoreNode.h:260
virtual DLLEXPORT bool is_equal_hard(const AbstractQoreNode *v, ExceptionSink *xsink) const
tests for equality ("deep compare" including all contained values) without type conversions (hard com...
The main value class in Qore, designed to be passed by value.
Definition: QoreValue.h:262
virtual const DLLEXPORT char * getTypeName() const =0
returns the type name as a c string
virtual DLLEXPORT bool derefImpl(ExceptionSink *xsink)
decrements the reference count
virtual DLLEXPORT bool is_equal_hard(const AbstractQoreNode *v, ExceptionSink *xsink) const =0
tests for equality ("deep compare" including all contained values for container types) without type c...
Qore's string type supported by the QoreEncoding class.
Definition: QoreString.h:81
virtual DLLEXPORT AbstractQoreNode * realCopy() const =0
returns a copy of the object; the caller owns the reference count
virtual DLLEXPORT int getAsString(QoreString &str, int foff, ExceptionSink *xsink) const =0
concatenate the verbose string representation of the value (including all contained values for contai...
the implementation of Qore's object data type, reference counted, dynamically-allocated only
Definition: QoreObject.h:61
container for holding Qore-language exception information and also for registering a "thread_exit" ca...
Definition: ExceptionSink.h:48
virtual DLLEXPORT QoreValue evalImpl(bool &needs_deref, ExceptionSink *xsink) const =0
optionally evaluates the argument
const qore_type_t NT_WEAKREF
type value for WeakReferenceNode
Definition: node_types.h:87
virtual DLLEXPORT bool getAsBoolImpl() const
returns false unless perl-boolean-evaluation is enabled, in which case it returns false only when emp...
DLLEXPORT void tRef() const
increments the existence reference count
virtual DLLEXPORT bool is_equal_soft(const AbstractQoreNode *v, ExceptionSink *xsink) const =0
tests for equality ("deep compare" including all contained values for container types) with possible ...
virtual DLLEXPORT int getAsString(QoreString &str, int foff, ExceptionSink *xsink) const
concatenate the verbose string representation of the list (including all contained values) to an exis...
The base class for all value and parse types in Qore expression trees.
Definition: AbstractQoreNode.h:54
virtual DLLEXPORT bool is_equal_soft(const AbstractQoreNode *v, ExceptionSink *xsink) const
tests for equality ("deep compare" including all contained values) with possible type conversion (sof...
DLLEXPORT void tDeref()
decrements the existence reference count, when it reaches 0 the C++ object ("this") will be deleted