32 #ifndef _QORE_QOREHASHMAPSELECTOPERATORNODE_H
33 #define _QORE_QOREHASHMAPSELECTOPERATORNODE_H
35 #include "qore/intern/AbstractIteratorHelper.h"
37 class QoreHashMapSelectOperatorNode :
public QoreNOperatorNodeBase<4> {
40 QoreNOperatorNodeBase<4>(loc, p0, QoreSimpleValue().assign(p1), QoreSimpleValue().assign(p2), QoreSimpleValue().assign(p3)) {
47 DLLLOCAL
virtual const char* getTypeName()
const {
48 return map_str.getBuffer();
51 DLLLOCAL
virtual QoreOperatorNode* copyBackground(
ExceptionSink* xsink)
const {
52 ValueHolder n_e0(copy_value_and_resolve_lvar_refs(e[0], xsink), xsink);
55 ValueHolder n_e1(copy_value_and_resolve_lvar_refs(e[1], xsink), xsink);
58 ValueHolder n_e2(copy_value_and_resolve_lvar_refs(e[2], xsink), xsink);
61 ValueHolder n_e3(copy_value_and_resolve_lvar_refs(e[3], xsink), xsink);
64 return new QoreHashMapSelectOperatorNode(loc, n_e0.release(), n_e1.release(), n_e2.release(), n_e3.release());
67 DLLLOCAL
virtual bool hasEffectAsRoot()
const {
72 const QoreTypeInfo* returnTypeInfo =
nullptr;
80 DLLLOCAL
virtual ~QoreHashMapSelectOperatorNode() {
83 DLLLOCAL
virtual int parseInitImpl(
QoreValue& val, QoreParseContext& parse_context);
85 DLLLOCAL
virtual const QoreTypeInfo* getTypeInfo()
const {
86 return returnTypeInfo;
container for holding Qore-language exception information and also for registering a "thread_exit" ca...
Definition: ExceptionSink.h:48
This is the hash or associative list container type in Qore, dynamically allocated only,...
Definition: QoreHashNode.h:50
Qore's string type supported by the QoreEncoding class.
Definition: QoreString.h:93
holds an object and dereferences it in the destructor
Definition: QoreValue.h:476
The main value class in Qore, designed to be passed by value.
Definition: QoreValue.h:275