108 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
109 return regex(field_value.toString(), cmd.arg.pattern, cmd.arg.options);
113 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
114 return field_value < cmd.arg;
118 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
119 return field_value <= cmd.arg;
123 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
124 return field_value > cmd.arg;
128 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
129 return field_value >= cmd.arg;
133 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
134 return field_value != cmd.arg;
138 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
139 return field_value == cmd.arg;
143 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
144 return field_value >= cmd.arg[0] && field_value <= cmd.arg[1];
148 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
149 return cmd.arg ? (cmd.arg{field_value} ??
False) : !field_value.val();
154 "code":
bool sub (hash<auto> cmd,
auto field_value,
string field_name, hash<auto> rec) {
320 hash<SearchOperatorInfo>
dp_op_in(list<auto> args);
388 static bool matchGeneric(hash<auto> record, hash<DataProviderExpression> where_cond);
405 static bool evalOperator(
string field, hash<auto> cmd, hash<auto> op, hash<auto> record);
Defines the abstract class for data provider iterators; the destructor releases the iterator.
Definition: AbstractDataProviderBulkRecordInterface.qc.dox.h:33
Defines the abstract class for data provider iterators; the destructor releases the iterator.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:339
static bool matchGeneric(hash< auto > record, *hash< auto > where_cond)
Checks if the current record matches the search criteria.
*hash< string, AbstractDataField > getRecordType()
Returns the record description, if available.
static bool matchGenericValue(auto expects, auto val)
Match a single value.
static bool evalOperator(string field, hash< auto > cmd, hash< auto > op, hash< auto > record)
Evaluates a generic search operator on the field value and record and returns the result.
*AbstractDataProviderBulkRecordInterface getBulkApi()
Returns the bulk data interface if supported.
bool supportsBulkApi()
Returns True if the iterator supports bulk operation.
static bool matchGeneric(hash< auto > record, hash< DataProviderExpression > where_cond)
Checks if the current record matches the search criteria.
abstract hash< auto > getValue()
returns a single record if the iterator is valid
auto doMemberGate(string key)
Returns the value of the given field in the current record, if the iterator is valid.
bool regex(string str, string regex, int options=0)
Qore AbstractDataField class definition.
Definition: AbstractDataField.qc.dox.h:27
const DP_SEARCH_OP_EQ
Identifies the generic data provider equals operator (=) for use in generic search criteria.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:81
hash< SearchOperatorInfo > dp_op_eq(auto arg)
returns an SearchOperatorInfo hash for the "=" operator with the given argument
const DP_OP_OR
OR logic.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:41
const DP_SEARCH_OP_REGEX
Identifies the regex operator for use in generic search criteria.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:51
const DP_SEARCH_OP_GT
Identifies the generic data provider greater than operator (>) for use in generic search criteria.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:66
const DP_SEARCH_OP_IN
Identifies the generic data provider "in" operator for use in generic search criteria.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:91
hash< SearchOperatorInfo > dp_op_between(auto l, auto r)
returns an SearchOperatorInfo hash for the "between" operator with the given arguments
const DP_SEARCH_OP_GE
Identifies the generic data provider greater than or equals operator (>=) for use in generic search c...
Definition: AbstractDataProviderRecordIterator.qc.dox.h:71
const DP_SEARCH_OP_BETWEEN
Identifies the generic data provider "between" operator for use in generic search criteria.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:86
const DefaultGenericSearchOpMap
a hash of valid operators for use in generic search criteria
Definition: AbstractDataProviderRecordIterator.qc.dox.h:106
const DP_OP_AND
AND logic.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:38
const DP_SEARCH_OP_NE
Identifies the generic data provider not equals operator (!= or <>) for use in generic search criteri...
Definition: AbstractDataProviderRecordIterator.qc.dox.h:76
hash< SearchOperatorInfo > dp_op_regex(string str)
returns an SearchOperatorInfo hash for regular expression matches
hash< SearchOperatorInfo > dp_op_not(hash< auto > arg)
returns an SearchOperatorInfo hash for the "not" operator
const DP_SEARCH_OP_NOT
Identifies the generic data provider "not" operator for use in generic search criteria.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:96
hash< SearchOperatorInfo > dp_op_ge(auto arg)
returns an SearchOperatorInfo hash for the ">=" operator with the given argument
hash< SearchOperatorInfo > dp_op_ne(auto arg)
returns an SearchOperatorInfo hash for the "!=" or "<>" operator with the given argument
hash< SearchOperatorInfo > dp_op_le(auto arg)
returns an SearchOperatorInfo hash for the "<=" operator with the given argument
const DP_SEARCH_OP_LT
Identifies the generic data provider less than (<) operator for use in generic search criteria.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:56
hash< SearchOperatorInfo > dp_op_like(string str)
returns an SearchOperatorInfo hash for the SQL-like "like" operator with the given argument
hash< SearchOperatorInfo > dp_op_in()
returns an SearchOperatorInfo hash for the "in" operator with all arguments passed to the function
const DP_SEARCH_OP_LE
Identifies the generic data provider less than or equals (<=) operator for use in generic search crit...
Definition: AbstractDataProviderRecordIterator.qc.dox.h:61
hash< SearchOperatorInfo > dp_make_op(string op, auto arg)
returns an SearchOperatorInfo hash
hash< SearchOperatorInfo > dp_op_lt(auto arg)
returns an SearchOperatorInfo hash for the "<" operator with the given argument
hash< SearchOperatorInfo > dp_op_gt(auto arg)
returns an SearchOperatorInfo hash for the ">" operator with the given argument
Generic operator info hash as returned by all generic search operator functions.
Definition: AbstractDataProviderRecordIterator.qc.dox.h:100
string op
the operator string code
Definition: AbstractDataProviderRecordIterator.qc.dox.h:101
auto arg
optional argument
Definition: AbstractDataProviderRecordIterator.qc.dox.h:102