32 #ifndef _QORE_QOREREGEXMATCHOPERATORNODE_H
34 #define _QORE_QOREREGEXMATCHOPERATORNODE_H
36 class QoreRegexMatchOperatorNode :
public QoreSingleExpressionOperatorNode<> {
43 DLLLOCAL
virtual void parseInitImpl(
QoreValue& val, LocalVar* oflag,
int pflag,
int& lvids,
const QoreTypeInfo*& typeInfo) {
44 parseInitIntern(op_str.getBuffer(), val, oflag, pflag, lvids, typeInfo);
47 DLLLOCAL
void parseInitIntern(
const char* name,
QoreValue& val, LocalVar* oflag,
int pflag,
int& lvids,
const QoreTypeInfo*& typeInfo);
50 DLLLOCAL QoreRegexMatchOperatorNode(
const QoreProgramLocation* loc,
QoreValue exp, QoreRegex* r) : QoreSingleExpressionOperatorNode<>(loc, exp), regex(r) {
53 DLLLOCAL
virtual const QoreTypeInfo* getTypeInfo()
const {
57 DLLLOCAL
virtual QoreOperatorNode* copyBackground(
ExceptionSink* xsink)
const {
58 ValueHolder n_exp(copy_value_and_resolve_lvar_refs(exp, xsink), xsink);
61 return new QoreRegexMatchOperatorNode(loc, n_exp.release(), regex->refSelf());