libyang
3.6.1
libyang is YANG data modelling language parser and toolkit written (and providing API) in C.
|
libyang generic macros and functions to work with YANG schema or data trees. More...
#include <inttypes.h>
Go to the source code of this file.
Macros | |
#define | LY_ARRAY_COUNT(ARRAY) (ARRAY ? (*((LY_ARRAY_COUNT_TYPE*)(ARRAY) - 1)) : 0) |
Get the number of records in the ARRAY. More... | |
#define | LY_ARRAY_COUNT_TYPE uint64_t |
Type (i.e. size) of the sized array's size counter. More... | |
#define | LY_ARRAY_FOR(ARRAY,...) LY_ARRAY_SELECT(__VA_ARGS__, LY_ARRAY_FOR_ITER, LY_ARRAY_FOR_INDEX, LY_UNDEF)(ARRAY, __VA_ARGS__) |
Sized-array iterator (for-loop). More... | |
#define | LY_ARRAY_FOR_INDEX(ARRAY, INDEX) |
Helper macro to go through sized-arrays with a numeric iterator. More... | |
#define | LY_ARRAY_FOR_ITER(ARRAY, TYPE, ITER) |
Helper macro to go through sized-arrays with a pointer iterator. More... | |
#define | LY_ARRAY_SELECT(_1, _2, NAME,...) NAME |
Macro selector for other LY_ARRAY_* macros, do not use directly! More... | |
#define | LY_DATA_TYPE_COUNT 20 |
#define | LY_LIST_FOR(START, ELEM) |
Macro to iterate via all sibling elements without affecting the list itself. More... | |
#define | LY_LIST_FOR_SAFE(START, NEXT, ELEM) |
Macro to iterate via all sibling elements allowing to modify the list itself (e.g. removing elements) More... | |
#define | LY_PRI_ARRAY_COUNT_TYPE PRIu64 |
Printing format specifier macro for LY_ARRAY_SIZE_TYPE values. More... | |
Enumerations | |
enum | LY_DATA_TYPE { LY_TYPE_UNKNOWN = 0, LY_TYPE_BINARY, LY_TYPE_UINT8, LY_TYPE_UINT16, LY_TYPE_UINT32, LY_TYPE_UINT64, LY_TYPE_STRING, LY_TYPE_BITS, LY_TYPE_BOOL, LY_TYPE_DEC64, LY_TYPE_EMPTY, LY_TYPE_ENUM, LY_TYPE_IDENT, LY_TYPE_INST, LY_TYPE_LEAFREF, LY_TYPE_UNION, LY_TYPE_INT8, LY_TYPE_INT16, LY_TYPE_INT32, LY_TYPE_INT64 } |
YANG built-in types. More... | |
enum | LY_VALUE_FORMAT { LY_VALUE_CANON, LY_VALUE_SCHEMA, LY_VALUE_SCHEMA_RESOLVED, LY_VALUE_XML, LY_VALUE_JSON, LY_VALUE_LYB, LY_VALUE_STR_NS } |
All kinds of supported value formats and prefix mappings to modules. More... | |
Variables | |
const char * | ly_data_type2str [20] |
Stringfield YANG built-in data types. More... | |
libyang generic macros and functions to work with YANG schema or data trees.
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 tree.h.