irods
4.2.8
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 "index.hpp"
#include "functions.hpp"
#include "arithmetics.hpp"
#include "datetime.hpp"
#include "cache.hpp"
#include "configuration.hpp"
#include "rsExecMyRule.hpp"
#include "rsDataObjOpen.hpp"
#include "rsDataObjLseek.hpp"
#include "rsDataObjWrite.hpp"
#include "rsDataObjClose.hpp"
#include "apiHeaderAll.h"
#include "rsApiHandler.hpp"
#include "dataObjOpr.hpp"
#include <boost/regex.h>
#include "execMyRule.h"
#include "msParam.h"
#include "reFuncDefs.hpp"
#include "stringOpr.h"
#include "miscServerFunct.hpp"
#include "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 | 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 [(1024+64)] = "Unspecified" |
static keyValPair_t | globalHashtable = {0, 0 , 0 } |
ReIterableTableRow | reIterableTable [7] |
int | GlobalAllRuleExecFlag |
#define GC_BEGIN Region *_rnew = make_region(0, NULL), *_rnew2 = NULL; |
Definition at line 40 of file functions.cpp.
#define GC_END region_free(_rnew); |
Definition at line 48 of file functions.cpp.
#define GC_ON | ( | env | ) |
Definition at line 42 of file functions.cpp.
#define GC_REGION _rnew |
Definition at line 41 of file functions.cpp.
#define NUM_RE_ITERABLE 7 |
Definition at line 99 of file functions.cpp.
#define RE_BACKWARD_COMPATIBLE |
Definition at line 50 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 296 of file stringOpr.cpp.
References NULL, and USER_INPUT_STRING_ERR.
Referenced by smsi_msiCheckStringForSystem().
ReIterableType collType | ( | Res * | coll | ) |
Definition at line 323 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(), linkCollReg(), queueSpecCollCache(), smsi_forEach2Exec(), structFileReg(), structFileSupport(), and typeFunction3().
Definition at line 736 of file functions.cpp.
References PRINT, size, node::subtrees, and node::text.
Definition at line 2508 of file functions.cpp.
References cpStringExt(), node::degree, node::exprType, newRes(), region_alloc(), node::subtrees, and node::text.
Referenced by evaluateFunction3().
Definition at line 2518 of file functions.cpp.
References node::subtrees.
Referenced by evaluateFunction3().
void deleteReIterableData | ( | ReIterableData * | itrData | ) |
Definition at line 133 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 2503 of file functions.cpp.
References parseAndComputeExpression().
Referenced by smsi_eval().
int fileConcatenate | ( | const char * | file1, |
const char * | file2, | ||
const char * | file3 | ||
) |
Definition at line 2454 of file functions.cpp.
References buf, error, NULL, UNIX_FILE_OPEN_ERR, and USER_FILE_DOES_NOT_EXIST.
ReIterable* getReIterable | ( | ReIterableType | nodeType | ) |
Definition at line 615 of file functions.cpp.
References NULL, NUM_RE_ITERABLE, reIterableTableRow::reIterable, and reIterableTable.
Referenced by smsi_forEach2Exec().
Definition at line 2573 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(), and loadRuleFromCacheOrFile().
char* matchWholeString | ( | char * | buf | ) |
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 395 of file genQueryMS.cpp.
Referenced by 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 117 of file genQueryMS.cpp.
Referenced by 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 292 of file genQueryMS.cpp.
Referenced by 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 109 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 2292 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(), SYS_INTERNAL_NULL_INPUT_ERR, T_IRODS, T_STRING, node::text, TYPE, typeToString(), and USER_PARAM_TYPE_ERR.
Referenced by smsiCollectionSpider().
void reIterable_collection_finalize | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 600 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 562 of file functions.cpp.
References reIterable_collection_data::collEnt, DATA_OBJ_T, reIterable_collection_data::handleInx, reIterableData::itrSpecData, NULL, reIterableData::rei, RuleExecInfo::rsComm, rsReadCollection(), and RuleExecInfo::status.
void reIterable_collection_init | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 522 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, SYS_INTERNAL_NULL_INPUT_ERR, T_ERROR, T_PATH, and TYPE.
Res * reIterable_collection_next | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 580 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 434 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, reIterableData::rei, and irods.pypyodbc::status.
int reIterable_genQuery_hasNext | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 388 of file functions.cpp.
References CAT_NO_ROWS_FOUND, 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, MsParam::inOutStruct, reIterableData::itrSpecData, reIterable_genQuery_data::len, msiGetMoreRows(), newErrorRes(), reIterableData::node, reIterableData::rei, reIterableData::res, irods.pypyodbc::status, node::subtrees, and node::text.
void reIterable_genQuery_init | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 373 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 419 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 509 of file functions.cpp.
References reIterableData::itrSpecData.
int reIterable_irods_hasNext | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 496 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 488 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 501 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 477 of file functions.cpp.
References reIterableData::itrSpecData.
int reIterable_list_hasNext | ( | ReIterableData * | itrData, |
Region * | r | ||
) |
Definition at line 464 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 455 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 469 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.
Referenced by _rsCollRsync(), _rsPhyBundleColl(), _rsPhyRmColl(), _rsStructFileBundle(), chkCollForBundleOpr(), isCollEmpty(), reIterable_collection_finalize(), rsCollRepl(), rsOpenCollection(), and smsiCollectionSpider().
Definition at line 16 of file rsOpenCollection.cpp.
Referenced by _rsCollRsync(), _rsPhyBundleColl(), _rsPhyRmColl(), _rsStructFileBundle(), chkCollForBundleOpr(), isCollEmpty(), reIterable_collection_init(), rsCollRepl(), and smsiCollectionSpider().
Definition at line 15 of file rsReadCollection.cpp.
Referenced by _rsCollRsync(), _rsPhyBundleColl(), _rsPhyRmColl(), _rsStructFileBundle(), chkCollForBundleOpr(), isCollEmpty(), reIterable_collection_hasNext(), rsCollRepl(), and smsiCollectionSpider().
Res* smsi_abs | ( | 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_add | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1518 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 1507 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 2226 of file functions.cpp.
References run_tests::action, 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 1300 of file functions.cpp.
References findNextRule2(), getRuleDesc(), newErrorRes(), newIntRes(), RuleDesc::node, RE_RUNTIME_ERROR, 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 957 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 2211 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 1086 of file functions.cpp.
References node::dval, 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 1430 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), int(), newErrorRes(), newRes(), newSimpType(), RE_UNSUPPORTED_OP_OR_TYPE, 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 936 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 1500 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 312 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 1576 of file functions.cpp.
References newStringRes(), and RES_STRING_STR_LEN.
Referenced by getSystemFunctions().
Res* smsi_cons | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1124 of file functions.cpp.
References node::degree, node::exprType, 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 1230 of file functions.cpp.
References addRErrorMsg(), ERR_MSG_LEN, node::exprType, irods.pypyodbc::long, newErrorRes(), newRes(), newSimpType(), RE_UNSUPPORTED_OP_OR_TYPE, 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 1848 of file functions.cpp.
References _delayExec(), convertEnvToMsParamArray(), deleteMsParamArray(), generateAndAddErrMsg(), 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 1542 of file functions.cpp.
References generateAndAddErrMsg(), newDoubleRes(), newErrorRes(), RE_DIVISION_BY_ZERO, 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 175 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 1388 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newErrorRes(), newRes(), newSimpType(), RE_UNSUPPORTED_OP_OR_TYPE, 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 1192 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), getCollectionSize(), getValueFromCollection(), newErrorRes(), RE_RUNTIME_ERROR, 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 1680 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RE_DYNAMIC_TYPE_ERROR, 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_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 1803 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 1825 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 1788 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 1794 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 2255 of file functions.cpp.
References newStringRes(), pid_age::p, and node::text.
Referenced by getSystemFunctions().
Res* smsi_exp | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1483 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 948 of file functions.cpp.
References FAIL_ACTION_ENCOUNTERED_ERR, generateAndAddErrMsg(), 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 1048 of file functions.cpp.
References newBoolRes().
Res* smsi_floor | ( | Node ** | params, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1494 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 624 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_DYNAMIC_TYPE_ERROR, 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, RE_RUNTIME_ERROR, 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 718 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 259 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 1658 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RE_DYNAMIC_TYPE_ERROR, 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 63 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 2146 of file functions.cpp.
References generateAndAddErrMsg(), 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 2192 of file functions.cpp.
References ExecCmdOut_MS_T, generateAndAddErrMsg(), getMsParamByLabel(), MsParam::inOutStruct, RuleExecInfo::msParamArray, newErrorRes(), newStringRes(), NULL, manual_cleanup::out, RE_RUNTIME_ERROR, 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 2172 of file functions.cpp.
References ExecCmdOut_MS_T, generateAndAddErrMsg(), getMsParamByLabel(), MsParam::inOutStruct, RuleExecInfo::msParamArray, newErrorRes(), newStringRes(), NULL, manual_cleanup::out, RE_RUNTIME_ERROR, 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 985 of file functions.cpp.
References DISCARD_EXPRESSION_RESULT, ERR_MSG_LEN, evaluateExpression3(), generateAndAddErrMsg(), getNodeType, KeyValPair::keyWord, KeyValPair::len, N_APP_ARITY, N_APP_FUNC, N_APPLICATION, newErrorRes(), newStringRes(), NULL, RES_UNINTER_STRUCT, T_STRING, node::text, TYPE, UNMATCHED_KEY_OR_INDEX, 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 1635 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RE_DYNAMIC_TYPE_ERROR, 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 1096 of file functions.cpp.
References generateAndAddErrMsg(), newErrorRes(), RE_RUNTIME_ERROR, 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 162 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 149 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 1409 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), int(), newErrorRes(), newRes(), newSimpType(), RE_UNSUPPORTED_OP_OR_TYPE, 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 1612 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RE_DYNAMIC_TYPE_ERROR, 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 184 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 1736 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 1762 of file functions.cpp.
References matchWholeString(), newBoolRes(), and node::text.
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 1160 of file functions.cpp.
References node::degree, node::exprType, 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 1029 of file functions.cpp.
References Cache::appRuleSet, 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 1021 of file functions.cpp.
References Cache::coreRuleSet, 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 1037 of file functions.cpp.
References Cache::extRuleSet, 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 1015 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 1456 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 1488 of file functions.cpp.
References irods::log(), 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 1589 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RE_DYNAMIC_TYPE_ERROR, 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 200 of file functions.cpp.
References addRErrorMsg(), DISCARD_EXPRESSION_RESULT, ERR_MSG_SEP, evaluateExpression3(), generateAndAddErrMsg(), getNodeType, matchPattern(), N_ERROR, newEnv(), newErrorRes(), newHashTable2(), NULL, and RE_PATTERN_NOT_MATCHED.
Referenced by getSystemFunctions().
Res* smsi_max | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1052 of file functions.cpp.
References node::dval, and newDoubleRes().
Referenced by getSystemFunctions().
Res* smsi_min | ( | Node ** | params, |
int | n, | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1069 of file functions.cpp.
References node::dval, 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 1557 of file functions.cpp.
References generateAndAddErrMsg(), newDoubleRes(), newErrorRes(), RE_DIVISION_BY_ZERO, 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 2280 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 1534 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 1465 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 1708 of file functions.cpp.
References ERR_MSG_LEN, generateAndAddErrMsg(), newBoolRes(), newErrorRes(), NULL, RE_DYNAMIC_TYPE_ERROR, 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 1461 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 1755 of file functions.cpp.
References 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 1780 of file functions.cpp.
References 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 1513 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 2244 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 1565 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 73 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 748 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(), MsParam::inOutStruct, insertIntoHashTable(), 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, pid_age::p, PRINT, RE_DYNAMIC_TYPE_ERROR, RE_UNSUPPORTED_OP_OR_TYPE, region_alloc(), region_free(), GenQueryInp::selectInp, size, GenQueryInp::sqlCondInp, irods.pypyodbc::status, 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 1882 of file functions.cpp.
References addKeyVal(), addMsParamToArray(), ExecMyRuleInp::addr, ALL_MS_PARAM_KW, ExecMyRuleInp::condInput, convertEnvToMsParamArray(), deleteMsParamArray(), terminate_irods_processes::e, fillMsParam(), generateAndAddErrMsg(), getMsParamByLabel(), getTaggedValues(), ExecMyRuleInp::inpParamArray, MsParam::label, KeyValPair::len, irods::log(), LONG_NAME_LEN, META_STR_LEN, RuleExecInfo::msParamArray, ExecMyRuleInp::myRule, NAME_LEN, newErrorRes(), newIntRes(), newMsParamArray(), NULL, ExecMyRuleInp::outParamDesc, parseHostAddrStr(), RE_UNSUPPORTED_OP_OR_TYPE, replMsParam(), rmMsParamByLabel(), RuleExecInfo::rsComm, rsExecMyRule(), rstrcpy(), node::text, updateMsParamArrayToEnvAndFreeNonIRODSType(), and rodsHostAddr_t::zoneName.
Referenced by getSystemFunctions().
Res* smsi_root | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1568 of file functions.cpp.
References generateAndAddErrMsg(), newDoubleRes(), newErrorRes(), RE_DIVISION_BY_ZERO, 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 2562 of file functions.cpp.
References authInfo_t::authFlag, userInfo_t::authInfo, buf, CAT_INSUFFICIENT_PRIVILEGE_LEVEL, 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 1138 of file functions.cpp.
References node::degree, ERR_MSG_LEN, node::exprType, generateAndAddErrMsg(), newCollType(), newErrorRes(), newRes(), RE_RUNTIME_ERROR, 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 67 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 2158 of file functions.cpp.
References generateAndAddErrMsg(), 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 1218 of file functions.cpp.
References node::degree, node::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 ** | paramsr, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | rei, | ||
int | reiSaveFlag, | ||
Env * | env, | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 2051 of file functions.cpp.
References buf, newCollRes(), newSimpType(), newStringRes(), NULL, node::subtrees, T_STRING, node::text, and trim().
Referenced by getSystemFunctions(), and smsi_forEach2Exec().
Res* smsi_str | ( | Node ** | params, |
int | , | ||
Node * | node, | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | errmsg, | ||
Region * | r | ||
) |
Definition at line 1316 of file functions.cpp.
References buf, BUF_LEN_MS_T, convertResToString(), ERR_MSG_LEN, node::exprType, generateAndAddErrMsg(), KeyValPair_MS_T, KeyValPair::keyWord, KeyValPair::len, newErrorRes(), newStringRes(), NULL, RE_UNSUPPORTED_OP_OR_TYPE, 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 2024 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 2029 of file functions.cpp.
References buf, generateAndAddErrMsg(), newErrorRes(), newStringRes(), RE_RUNTIME_ERROR, 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 1526 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 942 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 1263 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 1269 of file functions.cpp.
References addRErrorMsg(), buf, ERR_MSG_LEN, newErrorRes(), newRes(), newStringRes(), RE_UNSUPPORTED_OP_OR_TYPE, 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 1105 of file functions.cpp.
References node::degree, node::exprType, generateAndAddErrMsg(), newCollType(), newErrorRes(), newRes(), RE_RUNTIME_ERROR, 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 2006 of file functions.cpp.
References newStringRes(), NULL, pid_age::p, and node::text.
Referenced by getSystemFunctions().
Res* smsi_trimr | ( | Node ** | paramsr, |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 2112 of file functions.cpp.
References newStringRes(), NULL, pid_age::p, and node::text.
Referenced by getSystemFunctions().
Res* smsi_true | ( | Node ** | , |
int | , | ||
Node * | , | ||
ruleExecInfo_t * | , | ||
int | , | ||
Env * | , | ||
rError_t * | , | ||
Region * | r | ||
) |
Definition at line 1045 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 1174 of file functions.cpp.
References cpStringExt(), node::degree, node::exprType, 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 1293 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 2108 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 223 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 1961 of file functions.cpp.
References _writeString(), convertResToString(), 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 1989 of file functions.cpp.
References _writeString(), convertResToString(), 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 2344 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, SYS_INTERNAL_NULL_INPUT_ERR, T_BREAK, T_ERROR, node::text, TK_VAR, TYPE, and updateInEnv().
Referenced by getSystemFunctions().
char* wildCardToRegex | ( | char * | buf | ) |
Definition at line 2532 of file functions.cpp.
References buf, and pid_age::p.
Referenced by smsi_like().
Definition at line 138 of file functions.cpp.
References node::base, label::base, createActionsNode(), label::exprloc, getNodeType, N_ACTIONS, and NODE_EXPR_POS.
Referenced by smsi_ifExec().
int GlobalAllRuleExecFlag |
Definition at line 57 of file libirods_rule_engine_plugin-irods_rule_language.cpp.
|
static |
Definition at line 52 of file functions.cpp.
Referenced by smsi_properties().
|
static |
Definition at line 51 of file functions.cpp.
Referenced by smsi_getGlobalSessionId(), and smsi_setGlobalSessionId().
ReIterableTableRow reIterableTable[7] |
Definition at line 99 of file functions.cpp.
Referenced by getReIterable().