libyang  2.0.112
libyang is YANG data modelling language parser and toolkit written (and providing API) in C.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
plugins_exts_compile.h
Go to the documentation of this file.
1 
15 #ifndef LY_PLUGINS_EXTS_COMPILE_H_
16 #define LY_PLUGINS_EXTS_COMPILE_H_
17 
18 #include <stdint.h>
19 
20 #include "log.h"
21 #include "tree_schema.h"
22 
23 struct ly_ctx;
24 struct lysc_ctx;
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
45 #define LYS_COMPILE_GROUPING 0x01
50 #define LYS_COMPILE_DISABLED 0x02
53 #define LYS_COMPILE_NO_CONFIG 0x04
54 #define LYS_COMPILE_NO_DISABLED 0x08
56 #define LYS_COMPILE_RPC_INPUT (LYS_IS_INPUT | LYS_COMPILE_NO_CONFIG)
57 #define LYS_COMPILE_RPC_OUTPUT (LYS_IS_OUTPUT | LYS_COMPILE_NO_CONFIG)
58 #define LYS_COMPILE_NOTIFICATION (LYS_IS_NOTIF | LYS_COMPILE_NO_CONFIG)
70 struct lysc_ctx;
71 
77 struct ly_ctx *lysc_ctx_get_ctx(const struct lysc_ctx *ctx);
78 
84 uint32_t *lysc_ctx_get_options(const struct lysc_ctx *ctx);
85 
91 const char *lysc_ctx_get_path(const struct lysc_ctx *ctx);
92 
108 LY_ERR lys_compile_extension_instance(struct lysc_ctx *ctx, const struct lysp_ext_instance *ext_p, struct lysc_ext_instance *ext);
109 
118 void lysc_update_path(struct lysc_ctx *ctx, struct lys_module *parent_module, const char *name);
119 
126 struct lysc_ext *lysc_ext_dup(struct lysc_ext *orig);
127 
130 #ifdef __cplusplus
131 }
132 #endif
133 
134 #endif /* LY_PLUGINS_EXTS_COMPILE_H_ */
YANG extension instance.
Definition: tree_schema.h:525
YANG extension instance.
Definition: tree_schema.h:1445
Compiled YANG extension-stmt.
Definition: tree_schema.h:1419
LY_ERR lys_compile_extension_instance(struct lysc_ctx *ctx, const struct lysp_ext_instance *ext_p, struct lysc_ext_instance *ext)
Compile substatements of an extension instance.
libyang representation of YANG schema trees.
struct lysc_ext * lysc_ext_dup(struct lysc_ext *orig)
Duplicate the compiled extension (definition) structure.
uint32_t * lysc_ctx_get_options(const struct lysc_ctx *ctx)
YANG schema compilation context getter for compilation options.
void lysc_update_path(struct lysc_ctx *ctx, struct lys_module *parent_module, const char *name)
Update path in the compile context, which is used for logging where the compilation failed...
Available YANG schema tree structures representing YANG module.
Definition: tree_schema.h:2342
const char * lysc_ctx_get_path(const struct lysc_ctx *ctx)
YANG schema compilation context getter for path being currently processed.
struct ly_ctx * lysc_ctx_get_ctx(const struct lysc_ctx *ctx)
YANG schema compilation context getter for libyang context.
LY_ERR
libyang&#39;s error codes returned by the libyang functions.
Definition: log.h:245
Logger manipulation routines and error definitions.
libyang context handler.