libyang 2.1.55
libyang is YANG data modelling language parser and toolkit written (and providing API) in C.
printer_schema.h
Go to the documentation of this file.
1
16#ifndef LY_PRINTER_SCHEMA_H_
17#define LY_PRINTER_SCHEMA_H_
18
19#include <stdint.h>
20#include <stdio.h>
21
22#include "log.h"
23#include "out.h"
24
25#ifdef __cplusplus
26extern "C" {
27#endif
28
29struct ly_out;
30struct lys_module;
31struct lysc_node;
32struct lysp_submodule;
33
96#define LYS_PRINT_SHRINK LY_PRINT_SHRINK
97#define LYS_PRINT_NO_SUBSTMT 0x10
105typedef enum {
112
123LIBYANG_API_DECL LY_ERR lys_print_module(struct ly_out *out, const struct lys_module *module, LYS_OUTFORMAT format,
124 size_t line_length, uint32_t options);
125
136LIBYANG_API_DECL LY_ERR lys_print_submodule(struct ly_out *out, const struct lysp_submodule *submodule, LYS_OUTFORMAT format,
137 size_t line_length, uint32_t options);
138
152LIBYANG_API_DECL LY_ERR lys_print_mem(char **strp, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options);
153
166LIBYANG_API_DECL LY_ERR lys_print_fd(int fd, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options);
167
180LIBYANG_API_DECL LY_ERR lys_print_file(FILE *f, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options);
181
194LIBYANG_API_DECL LY_ERR lys_print_path(const char *path, const struct lys_module *module, LYS_OUTFORMAT format,
195 uint32_t options);
196
210LIBYANG_API_DECL LY_ERR lys_print_clb(ly_write_clb writeclb, void *user_data, const struct lys_module *module,
211 LYS_OUTFORMAT format, uint32_t options);
212
223LIBYANG_API_DECL LY_ERR lys_print_node(struct ly_out *out, const struct lysc_node *node, LYS_OUTFORMAT format,
224 size_t line_length, uint32_t options);
225
228#ifdef __cplusplus
229}
230#endif
231
232#endif /* LY_PRINTER_SCHEMA_H_ */
LY_ERR
libyang's error codes returned by the libyang functions.
Definition: log.h:251
LIBYANG_API_DECL LY_ERR lys_print_mem(char **strp, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options)
Print schema tree in the specified format into a memory block. It is up to caller to free the returne...
LIBYANG_API_DECL LY_ERR lys_print_submodule(struct ly_out *out, const struct lysp_submodule *submodule, LYS_OUTFORMAT format, size_t line_length, uint32_t options)
Schema submodule printer.
LIBYANG_API_DECL LY_ERR lys_print_file(FILE *f, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options)
Print schema tree in the specified format into a file stream.
LIBYANG_API_DECL LY_ERR lys_print_clb(ly_write_clb writeclb, void *user_data, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options)
Print schema tree in the specified format using a provided callback.
LIBYANG_API_DECL LY_ERR lys_print_path(const char *path, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options)
Print schema tree in the specified format into a file.
LYS_OUTFORMAT
Schema output formats accepted by libyang printer functions.
LIBYANG_API_DECL LY_ERR lys_print_node(struct ly_out *out, const struct lysc_node *node, LYS_OUTFORMAT format, size_t line_length, uint32_t options)
Schema node printer.
LIBYANG_API_DECL LY_ERR lys_print_fd(int fd, const struct lys_module *module, LYS_OUTFORMAT format, uint32_t options)
Print schema tree in the specified format into a file descriptor.
LIBYANG_API_DECL LY_ERR lys_print_module(struct ly_out *out, const struct lys_module *module, LYS_OUTFORMAT format, size_t line_length, uint32_t options)
Schema module printer.
@ LYS_OUT_YANG
@ LYS_OUT_TREE
@ LYS_OUT_UNKNOWN
@ LYS_OUT_YIN
@ LYS_OUT_YANG_COMPILED
Available YANG schema tree structures representing YANG module.
Definition: tree_schema.h:2082
Compiled YANG data node.
Definition: tree_schema.h:1398
Logger manipulation routines and error definitions.
Printer output structure specifying where the data are printed.
libyang output structures and functions
ssize_t(* ly_write_clb)(void *user_data, const void *buf, size_t count)
Generic write callback for data printed by libyang.
Definition: out.h:136