55 #if !defined(__AMXO_PARSER_PRIV_H__)
56 #define __AMXO_PARSER_PRIV_H__
63 #include <sys/resource.h>
64 #include <sys/types.h>
79 #include <amxc/amxc_macros.h>
80 #include <amxc/amxc.h>
81 #include <amxp/amxp.h>
82 #include <amxd/amxd_common.h>
83 #include <amxd/amxd_dm.h>
84 #include <amxd/amxd_object.h>
85 #include <amxd/amxd_object_expression.h>
86 #include <amxd/amxd_object_event.h>
87 #include <amxd/amxd_parameter.h>
88 #include <amxd/amxd_action.h>
89 #include <amxd/amxd_path.h>
91 #include <amxs/amxs.h>
198 __attribute__ ((format(printf, 2, 3)));
202 __attribute__ ((format(printf, 2, 3)));
207 const char* file_path,
char** full_path);
224 int64_t attr_bitmask, amxd_object_type_t type);
228 const char* name, amxc_var_t* params);
238 int64_t attr_bitmask, uint32_t type);
248 int64_t attr_bitmask, uint32_t type);
258 uint32_t type, amxc_var_t* def_value);
266 const char* path,
bool path_is_regexp);
270 bool event_is_regexp,
const char* full_expr);
274 bool event_is_regexp,
const char* full_expr);
Ambiorix ODL parser header file.
PRIVATE ssize_t amxo_parser_fd_reader(amxo_parser_t *parser, char *buf, size_t max_size)
PRIVATE bool amxo_parser_set_param_attrs(amxo_parser_t *pctx, uint64_t attr, bool enable)
PRIVATE amxs_sync_ctx_t * amxo_parser_sync_get(const char *sync_template)
PRIVATE int amxo_parser_parse_file_impl(amxo_parser_t *parser, const char *file_path, amxd_object_t *object)
PRIVATE void amxo_resolver_import_clean(amxo_parser_t *parser, void *priv)
PRIVATE void amxo_parser_del_mib_info(const char *key, amxc_htable_it_t *it)
PRIVATE void amxo_parser_create_lex(amxo_parser_t *parser)
PRIVATE int amxo_parser_sync_update_flags(int direction)
struct _amxo_txt amxo_txt_t
PRIVATE amxo_action_t amxo_parser_get_action_id(amxo_parser_t *pctx, const char *action_name)
PRIVATE int amxo_parser_subscribe_path(amxo_parser_t *pctx, const char *event, bool event_is_regexp, const char *path, bool path_is_regexp)
PRIVATE void amxo_parser_stop_sync(amxc_llist_it_t *it)
PRIVATE bool amxo_parser_add_mib(amxo_parser_t *pctx, const char *mib_name)
PRIVATE amxc_htable_t * amxo_parser_get_resolvers(void)
PRIVATE amxd_status_t amxo_parser_sync_set_action(amxo_parser_t *pctx, amxs_action_cb_t cb)
PRIVATE void amxo_parser_del_sync_data(amxc_llist_it_t *it)
PRIVATE bool amxo_parser_set_counter(amxo_parser_t *pctx, const char *param_name)
enum _amxo_parser_attr amxo_parser_attr_t
PRIVATE bool amxo_parser_set_param_flags(amxo_parser_t *pctx, amxc_var_t *flags)
PRIVATE amxd_status_t amxo_parser_sync_set_translator(amxo_parser_t *pctx, amxs_translation_cb_t cb)
PRIVATE bool amxo_parser_set_object_attrs(amxo_parser_t *pctx, uint64_t attr, bool enable)
PRIVATE void amxo_parser_sync_remove_invalid(amxo_parser_t *pctx)
PRIVATE int amxo_parser_create_object(amxo_parser_t *pctx, const char *name, int64_t attr_bitmask, amxd_object_type_t type)
PRIVATE void amxo_parser_destroy_lex(amxo_parser_t *parser)
PRIVATE bool amxo_parser_check_attr(amxo_parser_t *pctx, int64_t attributes, int64_t bitmask)
PRIVATE bool amxo_parser_pop_object(amxo_parser_t *pctx)
PRIVATE int amxo_parser_start_sync(amxc_llist_it_t *it)
struct _amxo_txt_regexp amxo_txt_regexp_t
PRIVATE bool amxo_parser_no_resolve(amxo_parser_t *parser)
PRIVATE void PRIVATE int PRIVATE bool amxo_parser_find(amxo_parser_t *parser, const amxc_llist_t *dirs, const char *file_path, char **full_path)
PRIVATE int amxo_parser_set_param(amxo_parser_t *pctx, const char *name, amxc_var_t *value)
PRIVATE int amxo_parser_push_sync_object(amxo_parser_t *pctx, const char *path_a, const char *path_b, int direction)
PRIVATE int amxo_parser_add_post_include(amxo_parser_t *pctx, const char *file_path)
PRIVATE void amxo_ftab_fn_free(const char *key, amxc_htable_it_t *it)
PRIVATE int amxo_parser_push_sync_parameter(amxo_parser_t *pctx, const char *param_a, const char *param_b, int direction)
PRIVATE bool amxo_parser_check_config(amxo_parser_t *pctx, const char *path, const char *check)
PRIVATE void amxo_parser_msg(amxo_parser_t *parser, const char *format,...) __attribute__((format(printf
PRIVATE amxs_sync_entry_type_t amxo_parser_get_sync_type(amxo_parser_t *pctx)
PRIVATE void amxo_parser_pop_sync_item(amxo_parser_t *pctx)
PRIVATE int amxo_parser_set_action(amxo_parser_t *pctx, amxo_action_t action, const char *name, amxc_var_t *data)
PRIVATE bool amxo_parser_sync_item_contains_entries(amxo_parser_t *pctx)
PRIVATE int amxo_parser_resolve(amxo_parser_t *parser, const char *resolver_name, const char *func_name, amxo_fn_type_t type, const char *data)
PRIVATE void PRIVATE int amxo_parser_printf(amxo_parser_t *parser, const char *format,...) __attribute__((format(printf
@ token_conditional_include
PRIVATE void amxo_parser_resolve_value(amxo_parser_t *pctx, amxc_string_t *value)
PRIVATE bool amxo_parser_push_object(amxo_parser_t *pctx, const char *name)
PRIVATE int amxo_parser_call_entry_point(amxo_parser_t *pctx, const char *lib_name, const char *fn_name)
PRIVATE void amxo_parser_clean_resolvers(amxo_parser_t *parser)
PRIVATE bool amxo_parser_set_function_flags(amxo_parser_t *pctx, amxc_var_t *flags)
PRIVATE int amxo_parser_subscribe(amxo_parser_t *pctx, const char *event, bool event_is_regexp, const char *full_expr)
PRIVATE bool amxo_parser_push_param(amxo_parser_t *pctx, const char *name, int64_t attr_bitmask, uint32_t type)
PRIVATE void amxo_parser_print(amxo_parser_t *pctx, const char *text)
PRIVATE int amxo_parser_subscribe_object(amxo_parser_t *pctx, const char *event, bool event_is_regexp, const char *full_expr)
PRIVATE void amxo_parser_child_init(amxo_parser_t *parser)
PRIVATE int amxo_parser_include(amxo_parser_t *pctx, const char *file_path)
enum _amxo_action amxo_action_t
PRIVATE int amxo_parser_push_func(amxo_parser_t *pctx, const char *name, int64_t attr_bitmask, uint32_t type)
PRIVATE bool amxo_parser_add_instance(amxo_parser_t *pctx, uint32_t index, const char *name, amxc_var_t *params)
PRIVATE int amxo_parser_push_sync_template(amxo_parser_t *pctx, const char *path_a, const char *path_b, int direction, const char *name)
PRIVATE int amxo_parser_resolve_internal(amxo_parser_t *parser, const char *fn_name, amxo_fn_type_t type, const char *data)
PRIVATE bool amxo_parser_pop_param(amxo_parser_t *pctx)
PRIVATE void amxo_parser_init_resolvers(amxo_parser_t *parser)
PRIVATE bool amxo_parser_is_sync_item(amxo_parser_t *pctx)
PRIVATE bool amxo_parser_add_arg(amxo_parser_t *pctx, const char *name, int64_t attr_bitmask, uint32_t type, amxc_var_t *def_value)
enum _event_id event_id_t
PRIVATE void amxo_parser_pop_func(amxo_parser_t *pctx)
struct _amxo_res_data amxo_res_data_t
PRIVATE int amxo_parser_push_sync_ctx(amxo_parser_t *pctx, const char *path_a, const char *path_b, int direction)
PRIVATE void amxo_parser_free_event(amxc_llist_it_t *it)
enum _amxo_fn_type amxo_fn_type_t
The ODL parser structure.