73#define EXT_CBFN_COOKIE(E) (E)->cbfn_cookie
122 struct ext_template_t_ *ext,
130typedef struct ext_template_t_ {
195 const xmlChar *name);
207 const xmlChar *name);
220 const xmlChar *name);
253 const xmlChar *extname,
268 const xmlChar *extname,
status_t
global error return code
Definition: status_enum.h:210
uint16 xmlns_id_t
integer handle for registered namespaces
Definition: xmlns.h:89
ncx_node_t
NCX Internal Node Types.
Definition: ncxtypes.h:437
ncx_status_t
enumeration for different YANG data-def status values
Definition: ncxtypes.h:583
void ext_clean_extensionQ(dlq_hdr_t *que)
Clean a queue of ext_template_t structs.
Definition: ext.c:196
ext_template_t * ext_new_template(void)
Malloc and initialize the fields in a ext_template_t.
Definition: ext.c:133
status_t ext_register_cbfn(const xmlChar *modname, const xmlChar *extname, ext_cbfn_t cbfn, void *cbfn_cookie)
Register a callback function for the specified extension If multiple callbacks for same extension,...
Definition: ext.c:454
void ext_cleanup(void)
Cleanup the extension callback handler queue.
Definition: ext.c:423
status_t(* ext_cbfn_t)(void *rawpcb, ncx_module_t *mod, tk_chain_t *tkc, struct ext_template_t_ *ext, void *cookie, const xmlChar *arg, ncx_node_t node_type, void *node)
One YANG Extension Handler Callback.
Definition: ext.h:119
ext_template_t * ext_find_extension(ncx_module_t *mod, const xmlChar *name)
Search a module for an ext_template_t structs with a given name Search mod to find extension name.
Definition: ext.c:225
void ext_init(void)
Init the extension callback handler queue.
Definition: ext.c:406
ext_template_t * ext_find_extension_que(dlq_hdr_t *extensionQ, const xmlChar *name)
Find an ext_template_t struct in the specified Q.
Definition: ext.c:322
ext_template_t * ext_find_extension_all(ncx_module_t *mod, const xmlChar *name)
Search a module of ext_template_t structs for a given name Check all submodules as well.
Definition: ext.c:359
void ext_free_template(ext_template_t *ext)
Scrub the memory in a ext_template_t by freeing all the sub-fields and then freeing the entire struct...
Definition: ext.c:161
void ext_find_cbfn(const xmlChar *modname, const xmlChar *extname, ext_template_t *ext)
Find the registered callback for the specified extension Set the callback handler if found.
Definition: ext.c:504
YANG module data structures Many internal representations of YANG module constructs.
Global error messages for status code enumerations.
One YANG 'extension' definition – language extension template.
Definition: ext.h:130
ncx_error_t tkerr
file and line infor for compiler
Definition: ext.h:141
dlq_hdr_t appinfoQ
Q of ncx_appinfo_t.
Definition: ext.h:140
xmlChar * name
malloced name
Definition: ext.h:132
boolean argel
T:arg is an element, F: attribute.
Definition: ext.h:138
ncx_status_t status
status of parse
Definition: ext.h:137
xmlChar * ref
malloced reference-stmt
Definition: ext.h:134
void * cbfn_cookie
managed by callback
Definition: ext.h:143
dlq_hdr_t qhdr
queue header
Definition: ext.h:131
xmlChar * descr
malloced description-stmt
Definition: ext.h:133
ext_cbfn_t cbfn
callback function
Definition: ext.h:142
boolean used
needed by yangdiff
Definition: ext.h:139
xmlChar * arg
malloced argument name
Definition: ext.h:135
xmlns_id_t nsid
namespace ID
Definition: ext.h:136
struct to remember error info tkc->cur_err will be checked before tkc->cur for error information
Definition: ncxtypes.h:877
representation of one module or submodule during and after parsing
Definition: ncxtypes.h:1138
token parsing chain (main parser control block)
Definition: tk.h:415
NCX Syntax Token Handler.