![]() |
libyang
2.0.7
libyang is YANG data modelling language parser and toolkit written (and providing API) in C.
|
libyang support for YANG extensions implementation. More...
#include "log.h"
#include "plugins.h"
#include "tree_edit.h"
#include "tree_schema.h"
#include "plugins_exts_compile.h"
#include "plugins_exts_print.h"
Go to the source code of this file.
Data Structures | |
struct | lyplg_ext |
Extension plugin implementing various aspects of a YANG extension. More... | |
struct | lyplg_ext_record |
Macros | |
#define | LYPLG_EXT_API_VERSION 1 |
Extensions API version. More... | |
#define | LYPLG_EXTENSIONS |
Macro to define plugin information in external plugins. More... | |
Typedefs | |
typedef LY_ERR(* | lyplg_ext_compile_clb) (struct lysc_ctx *cctx, const struct lysp_ext_instance *p_ext, struct lysc_ext_instance *c_ext) |
Callback to compile extension from the lysp_ext_instance to the lysc_ext_instance. The later structure is generally prepared and only the extension specific data are supposed to be added (if any). More... | |
typedef LY_ERR(* | lyplg_ext_data_validation_clb) (struct lysc_ext_instance *ext, struct lyd_node *node) |
Callback to decide if data instance is valid according to the schema. More... | |
typedef void(* | lyplg_ext_free_clb) (struct ly_ctx *ctx, struct lysc_ext_instance *ext) |
Callback to free the extension specific data created by the lyplg_ext_compile_clb callback of the same extension plugin. More... | |
typedef LY_ERR(* | lyplg_ext_schema_printer_clb) (struct lyspr_ctx *ctx, struct lysc_ext_instance *ext, ly_bool *flag) |
Callback to print the compiled extension instance's private data in the INFO format. More... | |
Functions | |
void | lyplg_ext_instance_substatements_free (struct ly_ctx *ctx, struct lysc_ext_substmt *substmts) |
Free the extension instance's data compiled with lys_compile_extension_instance(). More... | |
void | lyplg_ext_log (const struct lysc_ext_instance *ext, LY_LOG_LEVEL level, LY_ERR err_no, const char *path, const char *format,...) |
Provide a log message from an extension plugin. More... | |
libyang support for YANG extensions implementation.
Copyright (c) 2015 - 2019 CESNET, z.s.p.o.
This source code is licensed under BSD 3-Clause License (the "License"). You may not use this file except in compliance with the License. You may obtain a copy of the License at
https://opensource.org/licenses/BSD-3-Clause
Definition in file plugins_exts.h.