Source
xxxxxxxxxx
115
115
void zbx_expression_eval_init(zbx_expression_eval_t *eval, int mode, zbx_eval_context_t *ctx);
116
116
void zbx_expression_eval_clear(zbx_expression_eval_t *eval);
117
117
void zbx_expression_eval_resolve_item_hosts(zbx_expression_eval_t *eval, const DC_ITEM *item);
118
118
void zbx_expression_eval_resolve_trigger_hosts(zbx_expression_eval_t *eval, const DB_TRIGGER *trigger);
119
119
int zbx_expression_eval_execute(zbx_expression_eval_t *eval, const zbx_timespec_t *ts, zbx_variant_t *value,
120
120
char **error);
121
121
122
122
/* lld macro context */
123
123
#define ZBX_MACRO_ANY (ZBX_TOKEN_LLD_MACRO | ZBX_TOKEN_LLD_FUNC_MACRO | ZBX_TOKEN_USER_MACRO)
124
124
#define ZBX_MACRO_JSON (ZBX_MACRO_ANY | ZBX_TOKEN_JSON)
125
-
#define ZBX_MACRO_XML (ZBX_MACRO_ANY | ZBX_TOKEN_XML)
126
125
#define ZBX_MACRO_FUNC (ZBX_MACRO_ANY | ZBX_TOKEN_FUNC_MACRO)
127
126
128
127
int substitute_lld_macros(char **data, const struct zbx_json_parse *jp_row, const zbx_vector_ptr_t *lld_macro_paths,
129
128
int flags, char *error, size_t max_error_len);
130
129
int substitute_key_macros(char **data, zbx_uint64_t *hostid, DC_ITEM *dc_item, const struct zbx_json_parse *jp_row,
131
130
const zbx_vector_ptr_t *lld_macro_paths, int macro_type, char *error, size_t maxerrlen);
132
131
int substitute_key_macros_unmasked(char **data, zbx_uint64_t *hostid, DC_ITEM *dc_item,
133
132
const struct zbx_json_parse *jp_row, const zbx_vector_ptr_t *lld_macro_paths, int macro_type,
134
133
char *error, size_t maxerrlen);
135
134
int substitute_function_lld_param(const char *e, size_t len, unsigned char key_in_param,