libyang  3.7.1
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
libyang.h
Go to the documentation of this file.
1 
16 #ifndef LY_LIBYANG_H_
17 #define LY_LIBYANG_H_
18 
19 #include <stdint.h>
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
25 #include "context.h"
26 #include "dict.h"
27 #include "in.h"
28 #include "log.h"
29 #include "metadata.h"
30 #include "out.h"
31 #include "parser_data.h"
32 #include "parser_schema.h"
33 #include "printer_data.h"
34 #include "printer_schema.h"
35 #include "set.h"
36 #include "tree.h"
37 #include "tree_data.h"
38 #include "tree_schema.h"
39 
43 #define ly_strerrcode ly_strerr
44 #define ly_last_errmsg ly_last_logmsg
45 #define ly_errcode(ctx) (ly_err_last(ctx) ? ly_err_last(ctx)->err : 0)
46 #define ly_errmsg(ctx) (ly_err_last(ctx) ? ly_err_last(ctx)->msg : NULL)
47 #define ly_errpath(ctx) (ly_err_last(ctx) ? (ly_err_last(ctx)->data_path ? ly_err_last(ctx)->data_path : ly_err_last(ctx)->schema_path) : NULL)
48 #define ly_vecode(ctx) (ly_err_last(ctx) ? ly_err_last(ctx)->vecode : 0)
49 
50 /*
51  * The following headers are supposed to be included explicitly:
52  * - hash_table.h
53  * - metadata.h
54  * - plugins_types.h
55  * - plugins_exts.h
56  */
57 
174 #ifdef __cplusplus
175 }
176 #endif
177 
178 #endif /* LY_LIBYANG_H_ */
Schema printers for libyang.
Data printers for libyang.
internal context structures and functions
Generic set structure and manipulation routines.
Schema parsers for libyang.
libyang output structures and functions
ietf-yang-metadata API
libyang dictionary
libyang representation of YANG schema trees.
libyang generic macros and functions to work with YANG schema or data trees.
libyang input structures and functions
Data parsers for libyang.
libyang representation of YANG data trees.
Logger manipulation routines and error definitions.