irods
4.3.0
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems.
![]() ![]() |
#include "irods/rodsErrorTable.h"
#include "irods/irods_state_table.h"
#include "irods/private/re/index.hpp"
#include "irods/private/re/functions.hpp"
#include "irods/private/re/arithmetics.hpp"
#include "irods/private/re/datetime.hpp"
#include "irods/private/re/cache.hpp"
#include "irods/private/re/configuration.hpp"
#include "irods/rsExecMyRule.hpp"
#include "irods/rsDataObjOpen.hpp"
#include "irods/rsDataObjLseek.hpp"
#include "irods/rsDataObjWrite.hpp"
#include "irods/rsDataObjClose.hpp"
#include "irods/apiHeaderAll.h"
#include "irods/rsApiHandler.hpp"
#include "irods/dataObjOpr.hpp"
#include <boost/regex.h>
#include "irods/execMyRule.h"
#include "irods/msParam.h"
#include "irods/private/re/reFuncDefs.hpp"
#include "irods/stringOpr.h"
#include "irods/miscServerFunct.hpp"
#include "irods/irods_get_full_path_for_config_file.hpp"
Go to the source code of this file.
Classes | |
struct | reIterable_genQuery_data |
struct | reIterable_list_data |
struct | reIterable_irods_data |
struct | reIterable_collection_data |
Macros | |
#define | MAKE_IRODS_ERROR_MAP |
#define | MAKE_IRODS_STATE_MAP |
#define | GC_BEGIN Region *_rnew = make_region(0, NULL), *_rnew2 = NULL; |
#define | GC_REGION _rnew |
#define | GC_ON(env) |
#define | GC_END region_free(_rnew); |
#define | RE_BACKWARD_COMPATIBLE |
#define | NUM_RE_ITERABLE 7 |
Typedefs | |
typedef struct reIterable_genQuery_data | ReIterable_genQuery_data |
typedef struct reIterable_list_data | ReIterable_list_data |
typedef struct reIterable_irods_data | ReIterable_irods_data |
typedef struct reIterable_collection_data | ReIterable_collection_data |
Variables | |
static char | globalSessionId [MAX_NAME_LEN] = "Unspecified" |
static keyValPair_t | globalHashtable = {0, NULL, NULL} |
ReIterableTableRow | reIterableTable [7] |
int | GlobalAllRuleExecFlag |
#define GC_BEGIN Region *_rnew = make_region(0, NULL), *_rnew2 = NULL; |
Definition at line 46 of file functions.cpp.
#define GC_END region_free(_rnew); |
Definition at line 54 of file functions.cpp.
#define GC_ON | ( | env | ) |
Definition at line 48 of file functions.cpp.
#define GC_REGION _rnew |
Definition at line 47 of file functions.cpp.
#define MAKE_IRODS_ERROR_MAP |
Definition at line 4 of file functions.cpp.
#define MAKE_IRODS_STATE_MAP |
Definition at line 7 of file functions.cpp.
#define NUM_RE_ITERABLE 7 |
Definition at line 105 of file functions.cpp.
#define RE_BACKWARD_COMPATIBLE |
Definition at line 56 of file functions.cpp.
typedef struct reIterable_collection_data ReIterable_collection_data |
typedef struct reIterable_genQuery_data ReIterable_genQuery_data |
typedef struct reIterable_irods_data ReIterable_irods_data |
typedef struct reIterable_list_data ReIterable_list_data |
int checkStringForSystem | ( | const char * | s | ) |
Definition at line 304 of file stringOpr.cpp.
Referenced by smsi_msiCheckStringForSystem().
ReIterableType collType | ( | Res * | coll | ) |
Definition at line 330 of file functions.cpp.
References CollInp_MS_T, node::degree, node::exprType, GenQueryInp_MS_T, GenQueryOut_MS_T, IntArray_MS_T, KeyValPair_MS_T, LIST, RE_ITERABLE_COLLECTION, RE_ITERABLE_COMMA_STRING, RE_ITERABLE_GEN_QUERY, RE_ITERABLE_GEN_QUERY_OUT, RE_ITERABLE_INT_ARRAY, RE_ITERABLE_KEY_VALUE_PAIRS, RE_ITERABLE_LIST, RE_ITERABLE_STRING_ARRAY, RE_NOT_ITERABLE, StrArray_MS_T, node::subtrees, T_CONS, T_IRODS, T_PATH, T_STRING, T_TUPLE, node::text, and TYPE.
Referenced by collStat(), genQueryOutToCollRes(), getNextCollMetaInfo(), queueSpecCollCache(), smsi_forEach2Exec(), and typeFunction3().
Definition at line 743 of file functions.cpp.
Definition at line 2542 of file functions.cpp.
References cpStringExt(), node::degree, node::exprType, fn, newRes(), region_alloc(), node::subtrees, and node::text.
Referenced by evaluateFunction3().
Definition at line 2552 of file functions.cpp.
References node::subtrees.
Referenced by evaluateFunction3().
void deleteReIterableData | ( | ReIterableData * | itrData | ) |
Definition at line 140 of file functions.cpp.
Referenced by smsi_forEach2Exec().
Res * eval | ( | char * | expr, |
Env * | env, | ||
ruleExecInfo_t * | rei, | ||
int | saveREI, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2537 of file functions.cpp.
References parseAndComputeExpression().
Referenced by smsi_eval().
int fileConcatenate | ( | const char * | file1, |
const char * | file2, | ||
const char * | file3 | ||
) |
ReIterable * getReIterable | ( | ReIterableType | nodeType | ) |
Definition at line 622 of file functions.cpp.
References i, NULL, NUM_RE_ITERABLE, reIterableTableRow::reIterable, and reIterableTable.
Referenced by smsi_forEach2Exec().
Definition at line 2607 of file functions.cpp.
References insertIntoHashTable(), newFunctionFD(), NULL, smsi_abs(), smsi_add(), smsi_and(), smsi_applyAllRules(), smsi_arity(), smsi_assign(), smsi_assignStr(), smsi_average(), smsi_bool(), smsi_break(), smsi_ceiling(), smsi_collection(), smsi_concat(), smsi_cons(), smsi_datetime(), smsi_delayExec(), smsi_divide(), smsi_do(), smsi_double(), smsi_elem(), smsi_eq(), smsi_errorcode(), smsi_errormsg(), smsi_eval(), smsi_evalrule(), smsi_execCmdArg(), smsi_exp(), smsi_fail(), smsi_floor(), smsi_forEach2Exec(), smsi_forEachExec(), smsi_forExec(), smsi_ge(), smsi_getGlobalSessionId(), smsi_getstderr(), smsi_getstdout(), smsi_getValByKey(), smsi_gt(), smsi_hd(), smsi_if2Exec(), smsi_ifExec(), smsi_int(), smsi_le(), smsi_letExec(), smsi_like(), smsi_like_regex(), smsi_list(), smsi_listapprules(), smsi_listcorerules(), smsi_listextrules(), smsi_listvars(), smsi_lmsg(), smsi_log(), smsi_lt(), smsi_matchExec(), smsi_max(), smsi_min(), smsi_modulo(), smsi_msiCheckStringForSystem(), smsi_multiply(), smsi_negate(), smsi_neq(), smsi_not(), smsi_not_like(), smsi_not_like_regex(), smsi_or(), smsi_path(), smsi_power(), smsi_properties(), smsi_query(), smsi_remoteExec(), smsi_root(), smsi_segfault(), smsi_setelem(), smsi_setGlobalSessionId(), smsi_size(), smsi_split(), smsi_str(), smsi_strlen(), smsi_substr(), smsi_subtract(), smsi_succeed(), smsi_time(), smsi_timestr(), smsi_tl(), smsi_triml(), smsi_trimr(), smsi_type(), smsi_undefined(), smsi_whileExec(), smsi_writeLine(), smsi_writeString(), and smsiCollectionSpider().
Referenced by load_rules().
char * matchWholeString | ( | char * | buf | ) |
Definition at line 2557 of file functions.cpp.
Referenced by smsi_like_regex().
msiCloseGenQuery | ( | msParam_t * | genQueryInp_msp, |
msParam_t * | genQueryOut_msp, | ||
ruleExecInfo_t * | rei | ||
) |
[in] | genQueryInp_msp | - Required - a GenQueryInp_MS_T containing the query parameters and conditions. |
[in] | genQueryOut_msp | - Required - a GenQueryOut_MS_T to write results to. If its continuation index is 0 the query will be closed. |
[in,out] | rei | - The RuleExecInfo structure that is automatically handled by the rule engine. The user does not include rei as a parameter in the rule invocation. |
0 | on success |
Definition at line 391 of file genQueryMS.cpp.
References GenQueryInp::continueInx, GenQueryOut::continueInx, freeGenQueryOut(), GenQueryInp_MS_T, GenQueryOut_MS_T, MsParam::inOutStruct, LOG_ERROR, GenQueryInp::maxRows, NULL, RE_TEST_MACRO, rodsLog(), RuleExecInfo::rsComm, rsGenQuery(), RuleExecInfo::status, and MsParam::type.
Referenced by irods::lookup_table< ValueType, KeyType, HashType >::lookup_table(), and reIterable_genQuery_finalize().
msiExecGenQuery | ( | msParam_t * | genQueryInParam, |
msParam_t * | genQueryOutParam, | ||
ruleExecInfo_t * | rei | ||
) |
[in] | genQueryInParam | - a msParam of type GenQueryInp_MS_T |
[out] | genQueryOutParam | - a msParam of type GenQueryOut_MS_T |
[in,out] | rei | - The RuleExecInfo structure that is automatically handled by the rule engine. The user does not include rei as a parameter in the rule invocation. |
0 | on success |
Definition at line 113 of file genQueryMS.cpp.
References freeGenQueryOut(), GenQueryOut_MS_T, i, MsParam::inOutStruct, NULL, RuleExecInfo::rsComm, rsGenQuery(), and MsParam::type.
Referenced by irods::lookup_table< ValueType, KeyType, HashType >::lookup_table(), and smsi_query().
msiGetMoreRows | ( | msParam_t * | genQueryInp_msp, |
msParam_t * | genQueryOut_msp, | ||
msParam_t * | continueInx, | ||
ruleExecInfo_t * | rei | ||
) |
[in] | genQueryInp_msp | - Required - a GenQueryInp_MS_T containing the query parameters and conditions. |
[in] | genQueryOut_msp | - Required - a GenQueryOut_MS_T to write results to. If its continuation index is 0 the query will be closed. |
[out] | continueInx | - a INT_MS_T containing the new continuation index (after the query). |
[in,out] | rei | - The RuleExecInfo structure that is automatically handled by the rule engine. The user does not include rei as a parameter in the rule invocation. |
0 | on success |
Definition at line 288 of file genQueryMS.cpp.
References GenQueryInp::continueInx, GenQueryOut::continueInx, fillIntInMsParam(), freeGenQueryOut(), GenQueryInp_MS_T, GenQueryOut_MS_T, MsParam::inOutStruct, LOG_ERROR, MAX_SQL_ROWS, GenQueryInp::maxRows, NULL, RE_TEST_MACRO, resetMsParam(), rodsLog(), RuleExecInfo::rsComm, rsGenQuery(), RuleExecInfo::status, and MsParam::type.
Referenced by irods::lookup_table< ValueType, KeyType, HashType >::lookup_table(), and reIterable_genQuery_hasNext().
ReIterableData * newReIterableData | ( | char * | varName, |
Res * | res, | ||
Node ** | subtrees, | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg | ||
) |
Definition at line 116 of file functions.cpp.
References reIterableData::env, reIterableData::errmsg, reIterableData::errorRes, reIterableData::itrSpecData, reIterableData::node, NULL, reIterableData::rei, reIterableData::reiSaveFlag, reIterableData::res, reIterableData::subtrees, and reIterableData::varName.
Referenced by smsi_forEach2Exec().
int parseResForCollInp | ( | Node * | inpParam, |
collInp_t * | collInpCache, | ||
collInp_t ** | outCollInp, | ||
int | outputToCache | ||
) |
Definition at line 2326 of file functions.cpp.
References buf, CollInp_MS_T, CollInp::collName, CollInp::condInput, deleteHashTable(), ERR_MSG_LEN, node::exprType, LOG_ERROR, MAX_NAME_LEN, newHashTable(), NULL, RES_IRODS_TYPE, RES_UNINTER_STRUCT, rodsLog(), rstrcpy(), T_IRODS, T_STRING, node::text, TYPE, and typeToString().
Referenced by smsiCollectionSpider().
void reIterable_collection_finalize | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 607 of file functions.cpp.
References reIterable_collection_data::collInp, reIterable_collection_data::dataObjInp, reIterableData::errorRes, reIterable_collection_data::handleInx, reIterableData::itrSpecData, newErrorRes(), reIterableData::rei, rsCloseCollection(), RuleExecInfo::rsComm, RuleExecInfo::status, reIterableData::subtrees, T_PATH, and TYPE.
int reIterable_collection_hasNext | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 569 of file functions.cpp.
References reIterable_collection_data::collEnt, DATA_OBJ_T, reIterable_collection_data::handleInx, reIterableData::itrSpecData, NULL, reIterableData::rei, RuleExecInfo::rsComm, rsReadCollection(), RuleExecInfo::status, and while().
void reIterable_collection_init | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 529 of file functions.cpp.
References buf, reIterable_collection_data::collInp, CollInp::collName, reIterable_collection_data::dataObjInp, reIterableData::env, ERR_MSG_LEN, reIterableData::errmsg, reIterableData::errorRes, CollInp::flags, generateAndAddErrMsg(), reIterable_collection_data::handleInx, reIterableData::itrSpecData, newErrorRes(), reIterableData::node, NULL, RECUR_QUERY_FG, reIterableData::rei, reIterableData::reiSaveFlag, RES_UNINTER_STRUCT, RuleExecInfo::rsComm, rsOpenCollection(), smsi_collection(), reIterableData::subtrees, node::subtrees, T_ERROR, T_PATH, and TYPE.
Res * reIterable_collection_next | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 587 of file functions.cpp.
References reIterable_collection_data::collEnt, CollEnt::collName, CollEnt::dataName, reIterable_collection_data::dataObjInp, DataObjInp_MS_T, reIterableData::env, reIterableData::errmsg, evaluateActions(), reIterableData::itrSpecData, MAX_NAME_LEN, newUninterpretedRes(), NULL, DataObjInp::objPath, reIterableData::rei, reIterableData::reiSaveFlag, reIterableData::subtrees, updateInEnv(), and reIterableData::varName.
void reIterable_genQuery_finalize | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 441 of file functions.cpp.
References clearMsParam(), reIterableData::errmsg, reIterableData::errorRes, freeGenQueryInp(), generateAndAddErrMsg(), reIterable_genQuery_data::genQInpParam, reIterable_genQuery_data::genQOutParam, MsParam::inOutStruct, reIterableData::itrSpecData, msiCloseGenQuery(), newErrorRes(), reIterableData::node, and reIterableData::rei.
int reIterable_genQuery_hasNext | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 395 of file functions.cpp.
References clearMsParam(), reIterable_genQuery_data::cont, reIterableData::errmsg, reIterableData::errorRes, node::exprType, generateAndAddErrMsg(), reIterable_genQuery_data::genQInpParam, reIterable_genQuery_data::genQOutParam, reIterable_genQuery_data::genQueryOut, getCollectionSize(), reIterable_genQuery_data::i, if(), MsParam::inOutStruct, reIterableData::itrSpecData, reIterable_genQuery_data::len, msiGetMoreRows(), newErrorRes(), reIterableData::node, reIterableData::rei, reIterableData::res, node::subtrees, and node::text.
void reIterable_genQuery_init | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 380 of file functions.cpp.
References reIterable_genQuery_data::cont, GenQueryOut::continueInx, convertResToMsParam(), reIterableData::errmsg, node::exprType, reIterable_genQuery_data::genQInpParam, reIterable_genQuery_data::genQOutParam, reIterable_genQuery_data::genQueryOut, getCollectionSize(), reIterable_genQuery_data::i, reIterableData::itrSpecData, reIterable_genQuery_data::len, reIterableData::res, RES_UNINTER_STRUCT, node::subtrees, and node::text.
Res * reIterable_genQuery_next | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 426 of file functions.cpp.
References clearKeyVal(), reIterableData::env, reIterableData::errmsg, reIterableData::errorRes, evaluateActions(), node::exprType, reIterable_genQuery_data::genQueryOut, getNodeType, getValueFromCollection(), reIterable_genQuery_data::i, reIterableData::itrSpecData, N_ERROR, reIterableData::node, NULL, reIterableData::rei, reIterableData::reiSaveFlag, reIterableData::res, RES_UNINTER_STRUCT, setVariableValue(), reIterableData::subtrees, node::subtrees, node::text, and reIterableData::varName.
void reIterable_irods_finalize | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 516 of file functions.cpp.
References reIterableData::itrSpecData.
int reIterable_irods_hasNext | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 503 of file functions.cpp.
References reIterable_irods_data::i, reIterableData::itrSpecData, and reIterable_irods_data::n.
void reIterable_irods_init | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 495 of file functions.cpp.
References node::exprType, getCollectionSize(), reIterable_irods_data::i, reIterableData::itrSpecData, reIterable_irods_data::n, reIterableData::res, RES_UNINTER_STRUCT, and node::text.
Res * reIterable_irods_next | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 508 of file functions.cpp.
References reIterableData::env, reIterableData::errmsg, evaluateActions(), node::exprType, getValueFromCollection(), reIterable_irods_data::i, reIterableData::itrSpecData, reIterableData::node, reIterableData::rei, reIterableData::reiSaveFlag, reIterableData::res, RES_UNINTER_STRUCT, setVariableValue(), reIterableData::subtrees, node::text, and reIterableData::varName.
void reIterable_list_finalize | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 484 of file functions.cpp.
References reIterableData::itrSpecData.
int reIterable_list_hasNext | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 471 of file functions.cpp.
References reIterable_list_data::i, reIterableData::itrSpecData, and reIterable_list_data::n.
void reIterable_list_init | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 462 of file functions.cpp.
References node::degree, reIterable_list_data::elems, reIterable_list_data::i, reIterableData::itrSpecData, reIterable_list_data::n, reIterableData::res, and node::subtrees.
Res * reIterable_list_next | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 476 of file functions.cpp.
References reIterable_list_data::elems, reIterableData::env, reIterableData::errmsg, evaluateActions(), reIterable_list_data::i, reIterableData::itrSpecData, reIterableData::node, reIterableData::rei, reIterableData::reiSaveFlag, setVariableValue(), reIterableData::subtrees, and reIterableData::varName.
Definition at line 14 of file rsCloseCollection.cpp.
References FD_INUSE, freeCollHandle(), CollHandle::inuseFlag, LOG_NOTICE, and rodsLog().
Referenced by _rsCollRsync(), _rsPhyRmColl(), chkCollForBundleOpr(), irods::experimental::filesystem::NAMESPACE_IMPL::collection_iterator::close(), isCollEmpty(), reIterable_collection_finalize(), rsCollRepl(), rsOpenCollection(), and smsiCollectionSpider().
Definition at line 16 of file rsOpenCollection.cpp.
References allocCollHandle(), COLL_OBJ_T, COLL_OPENED, SpecColl::collClass, CollInp::collName, DataObjInp::condInput, CollInp::condInput, CollHandle::dataObjInp, CollInp::flags, CollHandle::flags, freeRodsObjStat(), INCLUDE_CONDINPUT_IN_QUERY, LINKED_COLL, CollHandle::linkedObjPath, MAX_NAME_LEN, NULL, DataObjInp::objPath, SpecColl::objPath, rodsObjStat::objType, CollHandle::queryHandle, remove_trailing_path_separators(), replKeyVal(), replSpecColl(), CollHandle::rodsObjStat, rsCloseCollection(), rsInitQueryHandle(), rsObjStat(), rstrcpy(), DataObjInp::specColl, rodsObjStat::specColl, and CollHandle::state.
Referenced by _rsCollRsync(), _rsPhyRmColl(), chkCollForBundleOpr(), irods::experimental::filesystem::NAMESPACE_IMPL::collection_iterator::collection_iterator(), isCollEmpty(), reIterable_collection_init(), rsCollRepl(), and smsiCollectionSpider().
Definition at line 15 of file rsReadCollection.cpp.
References FD_INUSE, CollHandle::inuseFlag, LOG_NOTICE, NULL, readCollection(), and rodsLog().
Referenced by _rsCollRsync(), _rsPhyRmColl(), chkCollForBundleOpr(), isCollEmpty(), irods::experimental::filesystem::NAMESPACE_IMPL::collection_iterator::operator++(), reIterable_collection_hasNext(), rsCollRepl(), and smsiCollectionSpider().
Res * smsi_abs | ( | Node ** | args, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1481 of file functions.cpp.
References newDoubleRes(), newIntRes(), RES_DOUBLE_VAL, RES_INT_VAL, T_INT, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_add | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1526 of file functions.cpp.
References newDoubleRes(), newIntRes(), RES_DOUBLE_VAL, RES_INT_VAL, T_INT, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_and | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1515 of file functions.cpp.
References newBoolRes(), and RES_BOOL_VAL.
Referenced by getSystemFunctions().
Res * smsi_applyAllRules | ( | Node ** | subtrees, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2260 of file functions.cpp.
References evaluateExpression3(), and RES_INT_VAL.
Referenced by getSystemFunctions().
Res * smsi_arity | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1308 of file functions.cpp.
References findNextRule2(), getRuleDesc(), newErrorRes(), newIntRes(), RuleDesc::node, RULE_NODE_NUM_PARAMS, ruleIndexListNode::ruleIndex, ruleIndexListNode::secondaryIndex, and node::text.
Referenced by getSystemFunctions().
Res * smsi_assign | ( | Node ** | subtrees, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 964 of file functions.cpp.
References DISCARD_EXPRESSION_RESULT, evaluateExpression3(), getNodeType, matchPattern(), and N_ERROR.
Referenced by getSystemFunctions().
Res * smsi_assignStr | ( | Node ** | subtrees, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2245 of file functions.cpp.
References CASCADE_N_ERROR, DISCARD_EXPRESSION_RESULT, evaluateExpression3(), getNodeType, matchPattern(), N_ERROR, smsi_str(), T_BOOL, T_DOUBLE, T_INT, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_average | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1093 of file functions.cpp.
References node::dval, i, n, and newDoubleRes().
Referenced by getSystemFunctions().
Res * smsi_bool | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1438 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), int(), newErrorRes(), newRes(), newSimpType(), RES_BOOL_VAL_LVAL, RES_DOUBLE_VAL, RES_INT_VAL, T_BOOL, T_DOUBLE, T_INT, T_STRING, node::text, TYPE, and typeName_Res().
Referenced by getSystemFunctions().
Res * smsi_break | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 943 of file functions.cpp.
References node::exprType, newRes(), newSimpType(), and T_BREAK.
Referenced by getSystemFunctions().
Res * smsi_ceiling | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1508 of file functions.cpp.
References newDoubleRes(), and RES_DOUBLE_VAL.
Referenced by getSystemFunctions().
Res * smsi_collection | ( | Node ** | subtrees, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 319 of file functions.cpp.
References CollInp_MS_T, CollInp::collName, MAX_NAME_LEN, newUninterpretedRes(), NULL, rstrcpy(), and node::text.
Referenced by getSystemFunctions(), and reIterable_collection_init().
Res * smsi_concat | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1584 of file functions.cpp.
References newStringRes(), RES_STRING_STR_LEN, and strcpy().
Referenced by getSystemFunctions().
Res * smsi_cons | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1131 of file functions.cpp.
References node::degree, node::exprType, i, newCollType(), newRes(), region_alloc(), and node::subtrees.
Referenced by getSystemFunctions().
Res * smsi_datetime | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1237 of file functions.cpp.
References addRErrorMsg(), ERR_MSG_LEN, node::exprType, n, newErrorRes(), newRes(), newSimpType(), RES_DOUBLE_VAL, RES_INT_VAL, RES_TIME_VAL, strttime(), T_DATETIME, T_DOUBLE, T_INT, T_STRING, node::text, TYPE, and typeName_Res().
Referenced by getSystemFunctions().
Res * smsi_delayExec | ( | Node ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1855 of file functions.cpp.
References _delayExec(), convertEnvToMsParamArray(), deleteMsParamArray(), generateAndAddErrMsg(), i, MAX_ACTION_SIZE, RuleExecInfo::msParamArray, newErrorRes(), newIntRes(), newMsParamArray(), and rstrcpy().
Referenced by getSystemFunctions().
Res * smsi_divide | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1550 of file functions.cpp.
References generateAndAddErrMsg(), newDoubleRes(), newErrorRes(), RES_DOUBLE_VAL, RES_INT_VAL, T_INT, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_do | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 182 of file functions.cpp.
References evaluateActions(), evaluateExpression3(), getNodeType, N_ACTIONS, and NULL.
Referenced by getSystemFunctions(), smsi_getstderr(), and smsi_getstdout().
Res * smsi_double | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1396 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newErrorRes(), newRes(), newSimpType(), RES_DOUBLE_VAL_LVAL, RES_TIME_VAL, T_DATETIME, T_DOUBLE, T_STRING, node::text, TYPE, and typeName_Res().
Referenced by getSystemFunctions().
Res * smsi_elem | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1199 of file functions.cpp.
References ERR_MSG_LEN, exprType, generateAndAddErrMsg(), getCollectionSize(), getValueFromCollection(), newErrorRes(), RES_INT_VAL, RES_UNINTER_STRUCT, node::subtrees, T_CONS, node::text, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_eq | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1688 of file functions.cpp.
References ERR_MSG_LEN, exprType, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RES_BOOL_VAL, RES_DOUBLE_VAL, RES_INT_VAL, RES_TIME_VAL, T_BOOL, T_DATETIME, T_DOUBLE, T_INT, T_PATH, T_STRING, TYPE, and typeToString().
Referenced by getSystemFunctions().
Res * smsi_error | ( | T... | t | ) |
Definition at line 2082 of file functions.cpp.
References smsi_error_Impl().
Res * smsi_error_Impl | ( | bool | abs_value, |
Node ** | paramsr, | ||
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2058 of file functions.cpp.
References generateAndAddErrMsg(), i, newErrorRes(), newIntRes(), and node::text.
Referenced by smsi_error(), and smsi_state().
Res * smsi_errorcode | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Run node and return the errorcode. If the execution is successful, the returned errorcode is 0.
Definition at line 1810 of file functions.cpp.
References evaluateActions(), evaluateExpression3(), getNodeType, N_ACTIONS, N_ERROR, newIntRes(), and RES_ERR_CODE.
Referenced by getSystemFunctions().
Res * smsi_errormsg | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Run node and return the errorcode. If the execution is successful, the returned errorcode is 0.
Definition at line 1832 of file functions.cpp.
References ERR_MSG_LEN, errMsgToString(), evaluateActions(), evaluateExpression3(), freeRErrorContent(), getNodeType, N_ACTIONS, N_ERROR, newIntRes(), newStringRes(), and RES_ERR_CODE.
Referenced by getSystemFunctions().
Res * smsi_eval | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1795 of file functions.cpp.
References eval().
Referenced by getSystemFunctions().
Res * smsi_evalrule | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1801 of file functions.cpp.
References newIntRes(), and parseAndComputeRule().
Referenced by getSystemFunctions().
Res * smsi_execCmdArg | ( | Node ** | subtrees, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2289 of file functions.cpp.
References newStringRes(), and node::text.
Referenced by getSystemFunctions().
Res * smsi_exp | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1491 of file functions.cpp.
References newDoubleRes(), and RES_DOUBLE_VAL.
Referenced by getSystemFunctions().
Res * smsi_fail | ( | Node ** | subtrees, |
int | n, | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 955 of file functions.cpp.
References generateAndAddErrMsg(), n, newErrorRes(), RES_ERR_CODE, RES_INT_VAL, and node::text.
Referenced by getSystemFunctions().
Res * smsi_false | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1055 of file functions.cpp.
References newBoolRes().
Res * smsi_floor | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1502 of file functions.cpp.
References newDoubleRes(), and RES_DOUBLE_VAL.
Referenced by getSystemFunctions().
Res * smsi_forEach2Exec | ( | Node ** | subtrees, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 631 of file functions.cpp.
References collType(), cpEnv(), cpRes, env::current, deleteFromHashTable(), deleteReIterableData(), ERR_MSG_LEN, reIterableData::errorRes, GC_BEGIN, GC_END, GC_ON, GC_REGION, generateAndAddErrMsg(), getNodeType, getReIterable(), lookupFromHashTable(), N_ERROR, newErrorRes(), newIntRes(), newReIterableData(), newStringRes(), NULL, RE_ITERABLE_COLLECTION, RE_ITERABLE_COMMA_STRING, RE_ITERABLE_GEN_QUERY, RE_ITERABLE_GEN_QUERY_OUT, RE_ITERABLE_INT_ARRAY, RE_ITERABLE_KEY_VALUE_PAIRS, RE_ITERABLE_LIST, RE_ITERABLE_STRING_ARRAY, RE_NOT_ITERABLE, smsi_split(), T_BREAK, TYPE, typeName_Res(), updateInEnv(), and reIterableData::varName.
Referenced by getSystemFunctions(), and smsi_forEachExec().
Res * smsi_forEachExec | ( | Node ** | subtrees, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 725 of file functions.cpp.
References evaluateVar3(), getNodeType, N_ERROR, smsi_forEach2Exec(), T_ERROR, node::text, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_forExec | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 266 of file functions.cpp.
References cpEnv(), cpRes, cpRes2, DISCARD_EXPRESSION_RESULT, evaluateActions(), evaluateExpression3(), GC_BEGIN, GC_END, GC_ON, GC_REGION, getNodeType, make_region(), N_ERROR, newIntRes(), NULL, region_free(), RES_BOOL_VAL, T_BREAK, T_SUCCESS, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_ge | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1666 of file functions.cpp.
References ERR_MSG_LEN, exprType, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RES_DOUBLE_VAL, RES_INT_VAL, RES_TIME_VAL, T_DATETIME, T_DOUBLE, T_INT, T_STRING, TYPE, and typeToString().
Referenced by getSystemFunctions().
Res * smsi_getGlobalSessionId | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 70 of file functions.cpp.
References globalSessionId, and newStringRes().
Referenced by getSystemFunctions().
Res * smsi_getReLogging | ( | Node ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2180 of file functions.cpp.
References generateAndAddErrMsg(), i, newBoolRes(), newErrorRes(), readICatUserLogging(), RuleExecInfo::rsComm, and node::text.
Res * smsi_getstderr | ( | Node ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2226 of file functions.cpp.
References ExecCmdOut_MS_T, generateAndAddErrMsg(), getMsParamByLabel(), MsParam::inOutStruct, RuleExecInfo::msParamArray, newErrorRes(), newStringRes(), NULL, smsi_do(), start, and MsParam::type.
Referenced by getSystemFunctions().
Res * smsi_getstdout | ( | Node ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2206 of file functions.cpp.
References ExecCmdOut_MS_T, generateAndAddErrMsg(), getMsParamByLabel(), MsParam::inOutStruct, RuleExecInfo::msParamArray, newErrorRes(), newStringRes(), NULL, smsi_do(), start, and MsParam::type.
Referenced by getSystemFunctions().
Res * smsi_getValByKey | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 992 of file functions.cpp.
References DISCARD_EXPRESSION_RESULT, ERR_MSG_LEN, evaluateExpression3(), generateAndAddErrMsg(), getNodeType, i, KeyValPair::keyWord, KeyValPair::len, N_APP_ARITY, N_APP_FUNC, N_APPLICATION, newErrorRes(), newStringRes(), NULL, RES_UNINTER_STRUCT, T_STRING, node::text, TYPE, and KeyValPair::value.
Referenced by getSystemFunctions().
Res * smsi_gt | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1643 of file functions.cpp.
References ERR_MSG_LEN, exprType, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RES_DOUBLE_VAL, RES_INT_VAL, RES_TIME_VAL, T_DATETIME, T_DOUBLE, T_INT, T_STRING, TYPE, and typeToString().
Referenced by getSystemFunctions().
Res * smsi_hd | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1103 of file functions.cpp.
References generateAndAddErrMsg(), newErrorRes(), and node::subtrees.
Referenced by getSystemFunctions().
Res * smsi_if2Exec | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 169 of file functions.cpp.
References DISCARD_EXPRESSION_RESULT, evaluateExpression3(), getNodeType, N_ERROR, and RES_BOOL_VAL.
Referenced by getSystemFunctions().
Res * smsi_ifExec | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 156 of file functions.cpp.
References DISCARD_EXPRESSION_RESULT, evaluateActions(), evaluateExpression3(), getNodeType, N_ERROR, RES_BOOL_VAL, and wrapToActions().
Referenced by getSystemFunctions().
Res * smsi_int | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1417 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), int(), newErrorRes(), newRes(), newSimpType(), RES_DOUBLE_VAL, RES_INT_VAL_LVAL, T_DOUBLE, T_INT, T_STRING, node::text, TYPE, and typeName_Res().
Referenced by getSystemFunctions().
Res * smsi_le | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1620 of file functions.cpp.
References ERR_MSG_LEN, exprType, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RES_DOUBLE_VAL, RES_INT_VAL, RES_TIME_VAL, T_DATETIME, T_DOUBLE, T_INT, T_STRING, TYPE, and typeToString().
Referenced by getSystemFunctions().
Res * smsi_letExec | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 191 of file functions.cpp.
References DISCARD_EXPRESSION_RESULT, evaluateExpression3(), getNodeType, matchPattern(), N_ERROR, newEnv(), newHashTable2(), and NULL.
Referenced by getSystemFunctions().
Res * smsi_like | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1744 of file functions.cpp.
References newBoolRes(), node::text, and wildCardToRegex().
Referenced by getSystemFunctions(), and smsi_not_like().
Res * smsi_like_regex | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1770 of file functions.cpp.
References matchWholeString(), and newBoolRes().
Referenced by getSystemFunctions(), and smsi_not_like_regex().
Res * smsi_list | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1167 of file functions.cpp.
References node::degree, node::exprType, i, n, newCollType(), newRes(), newSimpType(), region_alloc(), node::subtrees, and T_UNSPECED.
Referenced by getSystemFunctions().
Res * smsi_listapprules | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1036 of file functions.cpp.
References Cache::appRuleSet, i, ruleSet::len, newCollRes(), newSimpType(), newStringRes(), RuleDesc::node, ruleEngineConfig, ruleSet::rules, node::subtrees, T_STRING, and node::text.
Referenced by getSystemFunctions().
Res * smsi_listcorerules | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1028 of file functions.cpp.
References Cache::coreRuleSet, i, ruleSet::len, newCollRes(), newSimpType(), newStringRes(), RuleDesc::node, ruleEngineConfig, ruleSet::rules, node::subtrees, T_STRING, and node::text.
Referenced by getSystemFunctions().
Res * smsi_listextrules | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1044 of file functions.cpp.
References Cache::extRuleSet, i, ruleSet::len, newCollRes(), newSimpType(), newStringRes(), RuleDesc::node, ruleEngineConfig, ruleSet::rules, node::subtrees, T_STRING, and node::text.
Referenced by getSystemFunctions().
Res * smsi_listvars | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | env, | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1022 of file functions.cpp.
References buf, env::current, newStringRes(), and printHashtable().
Referenced by getSystemFunctions().
Res * smsi_lmsg | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1464 of file functions.cpp.
References newIntRes(), and writeToTmp().
Referenced by getSystemFunctions().
Res * smsi_log | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1496 of file functions.cpp.
References newDoubleRes(), and RES_DOUBLE_VAL.
Referenced by getSystemFunctions().
Res * smsi_lt | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1597 of file functions.cpp.
References ERR_MSG_LEN, exprType, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RES_DOUBLE_VAL, RES_INT_VAL, RES_TIME_VAL, T_DATETIME, T_DOUBLE, T_INT, T_STRING, TYPE, and typeToString().
Referenced by getSystemFunctions().
Res * smsi_matchExec | ( | Node ** | params, |
int | n, | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 207 of file functions.cpp.
References addRErrorMsg(), DISCARD_EXPRESSION_RESULT, ERR_MSG_SEP, evaluateExpression3(), generateAndAddErrMsg(), getNodeType, i, matchPattern(), n, N_ERROR, newEnv(), newErrorRes(), newHashTable2(), and NULL.
Referenced by getSystemFunctions().
Res * smsi_max | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1059 of file functions.cpp.
References node::dval, i, n, and newDoubleRes().
Referenced by getSystemFunctions().
Res * smsi_min | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1076 of file functions.cpp.
References node::dval, i, n, and newDoubleRes().
Referenced by getSystemFunctions().
Res * smsi_modulo | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1565 of file functions.cpp.
References generateAndAddErrMsg(), newDoubleRes(), newErrorRes(), and RES_INT_VAL.
Referenced by getSystemFunctions().
Res * smsi_msiCheckStringForSystem | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2314 of file functions.cpp.
References checkStringForSystem(), newErrorRes(), newIntRes(), and node::text.
Referenced by getSystemFunctions().
Res * smsi_multiply | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1542 of file functions.cpp.
References newDoubleRes(), newIntRes(), RES_DOUBLE_VAL, RES_INT_VAL, T_INT, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_negate | ( | Node ** | args, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1473 of file functions.cpp.
References newDoubleRes(), newIntRes(), RES_DOUBLE_VAL, RES_INT_VAL, T_INT, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_neq | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1716 of file functions.cpp.
References ERR_MSG_LEN, exprType, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RES_BOOL_VAL, RES_DOUBLE_VAL, RES_INT_VAL, RES_TIME_VAL, T_BOOL, T_DATETIME, T_DOUBLE, T_INT, T_PATH, T_STRING, TYPE, and typeToString().
Referenced by getSystemFunctions().
Res * smsi_not | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1469 of file functions.cpp.
References newBoolRes(), and RES_BOOL_VAL.
Referenced by getSystemFunctions().
Res * smsi_not_like | ( | Node ** | paramsr, |
int | n, | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1763 of file functions.cpp.
References n, N_ERROR, newBoolRes(), RES_BOOL_VAL, smsi_like(), and TYPE.
Referenced by getSystemFunctions().
Res * smsi_not_like_regex | ( | Node ** | paramsr, |
int | n, | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1787 of file functions.cpp.
References n, N_ERROR, newBoolRes(), RES_BOOL_VAL, smsi_like_regex(), and TYPE.
Referenced by getSystemFunctions().
Res * smsi_or | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1521 of file functions.cpp.
References newBoolRes(), and RES_BOOL_VAL.
Referenced by getSystemFunctions().
Res * smsi_path | ( | Node ** | subtrees, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2278 of file functions.cpp.
References newPathRes(), and node::text.
Referenced by getSystemFunctions().
Res * smsi_power | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1573 of file functions.cpp.
References newDoubleRes(), and RES_DOUBLE_VAL.
Referenced by getSystemFunctions().
Res * smsi_properties | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 80 of file functions.cpp.
References globalHashtable, KeyValPair_MS_T, newUninterpretedRes(), and NULL.
Referenced by getSystemFunctions().
Res * smsi_query | ( | Node ** | subtrees, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 755 of file functions.cpp.
References addInxIval(), addInxVal(), clearMsParam(), convertMsParamToResAndFreeNonIRODSType(), convertResToString(), node::degree, deleteHashTable(), DISCARD_EXPRESSION_RESULT, ERR_MSG_LEN, evaluateExpression3(), freeGenQueryInp(), freeGenQueryOut(), generateAndAddErrMsg(), GenQueryInp_MS_T, getAttrIdFromAttrName(), getNodeType, getSelVal(), i, MsParam::inOutStruct, insertIntoHashTable(), k, lookupFromHashTable(), make_region(), MAX_NAME_LEN, MAX_SQL_ROWS, GenQueryInp::maxRows, msiExecGenQuery(), N_ATTR, N_ERROR, N_QUERY_COND_JUNCTION, newErrorRes(), newHashTable(), newRes(), newTupleRes(), nop(), NULL, PRINT, region_alloc(), region_free(), GenQueryInp::selectInp, size, GenQueryInp::sqlCondInp, node::subtrees, T_DOUBLE, T_INT, T_STRING, node::text, MsParam::type, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_remoteExec | ( | Node ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1889 of file functions.cpp.
References addKeyVal(), addMsParamToArray(), ExecMyRuleInp::addr, ALL_MS_PARAM_KW, ExecMyRuleInp::condInput, convertEnvToMsParamArray(), deleteMsParamArray(), fillMsParam(), generateAndAddErrMsg(), getMsParamByLabel(), getTaggedValues(), i, ExecMyRuleInp::inpParamArray, MsParam::label, KeyValPair::len, LONG_NAME_LEN, META_STR_LEN, RuleExecInfo::msParamArray, ExecMyRuleInp::myRule, NAME_LEN, newErrorRes(), newIntRes(), newMsParamArray(), NULL, ExecMyRuleInp::outParamDesc, parseHostAddrStr(), replMsParam(), rmMsParamByLabel(), RuleExecInfo::rsComm, rsExecMyRule(), rstrcpy(), strncpy(), node::text, updateMsParamArrayToEnvAndFreeNonIRODSType(), and RodsHostAddress::zoneName.
Referenced by getSystemFunctions().
Res * smsi_root | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1576 of file functions.cpp.
References generateAndAddErrMsg(), newDoubleRes(), newErrorRes(), and RES_DOUBLE_VAL.
Referenced by getSystemFunctions().
Res * smsi_segfault | ( | Node ** | , |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2596 of file functions.cpp.
References AuthInfo::authFlag, UserInfo::authInfo, buf, ERR_MSG_LEN, generateAndAddErrMsg(), LOCAL_PRIV_USER_AUTH, newErrorRes(), NULL, and RuleExecInfo::uoic.
Referenced by getSystemFunctions().
Res * smsi_setelem | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1145 of file functions.cpp.
References node::degree, ERR_MSG_LEN, node::exprType, generateAndAddErrMsg(), newCollType(), newErrorRes(), newRes(), region_alloc(), RES_INT_VAL, and node::subtrees.
Referenced by getSystemFunctions().
Res * smsi_setGlobalSessionId | ( | Node ** | subtrees, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 74 of file functions.cpp.
References globalSessionId, MAX_NAME_LEN, newIntRes(), rstrcpy(), and node::text.
Referenced by getSystemFunctions().
Res * smsi_setReLogging | ( | Node ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2192 of file functions.cpp.
References generateAndAddErrMsg(), i, newErrorRes(), newIntRes(), RES_BOOL_VAL, RuleExecInfo::rsComm, node::text, and writeICatUserLogging().
Res * smsi_size | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1225 of file functions.cpp.
References node::degree, node::exprType, exprType, getCollectionSize(), newRes(), newSimpType(), RES_INT_VAL_LVAL, RES_UNINTER_STRUCT, T_CONS, T_INT, node::text, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_split | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2085 of file functions.cpp.
References buf, i, len, newCollRes(), newSimpType(), newStringRes(), NULL, node::subtrees, T_STRING, node::text, and trim().
Referenced by getSystemFunctions(), and smsi_forEach2Exec().
Res * smsi_state | ( | T... | t | ) |
Definition at line 2083 of file functions.cpp.
References smsi_error_Impl().
Res * smsi_str | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1324 of file functions.cpp.
References buf, BUF_LEN_MS_T, convertResToString(), ERR_MSG_LEN, node::exprType, generateAndAddErrMsg(), i, KeyValPair_MS_T, KeyValPair::keyWord, KeyValPair::len, len, newErrorRes(), newStringRes(), NULL, RES_UNINTER_BUFFER, RES_UNINTER_STRUCT, size, T_BOOL, T_CONS, T_DATETIME, T_DOUBLE, T_INT, T_IRODS, T_PATH, T_STRING, node::text, TYPE, typeName_Res(), and KeyValPair::value.
Referenced by getSystemFunctions(), and smsi_assignStr().
Res * smsi_strlen | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2031 of file functions.cpp.
References newIntRes(), and node::text.
Referenced by getSystemFunctions().
Res * smsi_substr | ( | Node ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2036 of file functions.cpp.
References buf, finish, generateAndAddErrMsg(), len, newErrorRes(), newStringRes(), RES_INT_VAL, start, and node::text.
Referenced by getSystemFunctions().
Res * smsi_subtract | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1534 of file functions.cpp.
References newDoubleRes(), newIntRes(), RES_DOUBLE_VAL, RES_INT_VAL, T_INT, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_succeed | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 949 of file functions.cpp.
References node::exprType, newRes(), newSimpType(), and T_SUCCESS.
Referenced by getSystemFunctions().
Res * smsi_time | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1270 of file functions.cpp.
References newDatetimeRes().
Referenced by getSystemFunctions().
Res * smsi_timestr | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1276 of file functions.cpp.
References addRErrorMsg(), buf, ERR_MSG_LEN, n, newErrorRes(), newRes(), newStringRes(), RES_TIME_VAL, T_DATETIME, T_STRING, node::text, ttimestr(), TYPE, and typeName_Res().
Referenced by getSystemFunctions().
Res * smsi_tl | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1112 of file functions.cpp.
References node::degree, node::exprType, exprType, generateAndAddErrMsg(), i, newCollType(), newErrorRes(), newRes(), region_alloc(), node::subtrees, and T_CONS_TYPE_ARG.
Referenced by getSystemFunctions().
Res * smsi_triml | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2013 of file functions.cpp.
References delim, newStringRes(), NULL, str, and node::text.
Referenced by getSystemFunctions().
Res * smsi_trimr | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2146 of file functions.cpp.
References delim, newStringRes(), NULL, str, temp, and node::text.
Referenced by getSystemFunctions().
Res * smsi_true | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1052 of file functions.cpp.
References newBoolRes().
Res * smsi_tuple | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1181 of file functions.cpp.
References cpStringExt(), node::degree, node::exprType, i, n, newConsType(), newRes(), region_alloc(), node::subtrees, node::text, and TUPLE.
Res * smsi_type | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1301 of file functions.cpp.
References node::exprType, newStringRes(), NULL, and typeToString().
Referenced by getSystemFunctions().
Res * smsi_undefined | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2142 of file functions.cpp.
References newUnspecifiedRes().
Referenced by getSystemFunctions().
Res * smsi_whileExec | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 230 of file functions.cpp.
References cpEnv(), cpRes, DISCARD_EXPRESSION_RESULT, evaluateActions(), evaluateExpression3(), GC_BEGIN, GC_END, GC_ON, GC_REGION, getNodeType, N_ERROR, newIntRes(), RES_BOOL_VAL, T_BREAK, T_SUCCESS, and TYPE.
Referenced by getSystemFunctions().
Res * smsi_writeLine | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | env, | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1968 of file functions.cpp.
References _writeString(), convertResToString(), i, LOG_NOTICE, newErrorRes(), newIntRes(), rodsLog(), and node::text.
Referenced by getSystemFunctions().
Res * smsi_writeString | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | rei, | ||
int | , | ||
Env * | env, | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1996 of file functions.cpp.
References _writeString(), convertResToString(), i, newErrorRes(), newIntRes(), and node::text.
Referenced by getSystemFunctions().
Res * smsiCollectionSpider | ( | Node ** | subtrees, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2378 of file functions.cpp.
References buf, CollInp::collName, CollEnt::collName, cpEnv2(), env::current, DATA_OBJ_T, CollEnt::dataName, DataObjInp_MS_T, deleteFromHashTable(), ERR_MSG_LEN, evaluateActions(), CollInp::flags, GC_BEGIN, GC_END, GC_ON, GC_REGION, generateAndAddErrMsg(), getNodeType, lookupFromHashTable(), MAX_NAME_LEN, newErrorRes(), newIntRes(), newUninterpretedRes(), NULL, DataObjInp::objPath, CollEnt::objType, parseResForCollInp(), RECUR_QUERY_FG, RES_ERR_CODE, rsCloseCollection(), RuleExecInfo::rsComm, rsOpenCollection(), rsReadCollection(), RuleExecInfo::status, T_BREAK, T_ERROR, node::text, TK_VAR, TYPE, and updateInEnv().
Referenced by getSystemFunctions().
char * wildCardToRegex | ( | char * | buf | ) |
Definition at line 145 of file functions.cpp.
References node::base, label::base, createActionsNode(), label::exprloc, getNodeType, N_ACTIONS, and NODE_EXPR_POS.
Referenced by smsi_ifExec().
|
extern |
Definition at line 53 of file irods_rule_language.cpp.
|
static |
Definition at line 59 of file functions.cpp.
Referenced by smsi_properties().
|
static |
Definition at line 58 of file functions.cpp.
Referenced by smsi_getGlobalSessionId(), and smsi_setGlobalSessionId().
ReIterableTableRow reIterableTable[7] |
Definition at line 106 of file functions.cpp.
Referenced by getReIterable().