yumapro  23.10T-9
YumaPro SDK
Loading...
Searching...
No Matches
yang_grp.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2008 - 2012, Andy Bierman, All Rights Reserved.
3 * Copyright (c) 2012 - 2021, YumaWorks, Inc., All Rights Reserved.
4 *
5 * Unless required by applicable law or agreed to in writing,
6 * software distributed under the License is distributed on an
7 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8 * KIND, either express or implied. See the License for the
9 * specific language governing permissions and limitations
10 * under the License.
11 */
12#ifndef _H_yang_grp
13#define _H_yang_grp
14
15/* FILE: yang_grp.h
16*********************************************************************
17* *
18* P U R P O S E *
19* *
20*********************************************************************/
21
27/*********************************************************************
28* *
29* C H A N G E H I S T O R Y *
30* *
31*********************************************************************
32
33date init comment
34----------------------------------------------------------------------
3514-dec-07 abb Begun; start from yang_typ.h
36
37*/
38
39#ifndef _H_dlq
40#include "dlq.h"
41#endif
42
43#ifndef _H_grp
44#include "grp.h"
45#endif
46
47#ifndef _H_ncxtypes
48#include "ncxtypes.h"
49#endif
50
51#ifndef _H_obj
52#include "obj.h"
53#endif
54
55#ifndef _H_status
56#include "status.h"
57#endif
58
59#ifndef _H_tk
60#include "tk.h"
61#endif
62
63#ifndef _H_yang
64#include "yang.h"
65#endif
66
67#ifdef __cplusplus
68extern "C" {
69#endif
70
71/********************************************************************
72* *
73* T Y P E S *
74* *
75*********************************************************************/
76
77
78/********************************************************************
79* *
80* F U N C T I O N S *
81* *
82*********************************************************************/
83
84/* Group definied in grp.h */
85
86
115extern status_t
117 tk_chain_t *tkc,
118 ncx_module_t *mod,
119 dlq_hdr_t *que,
120 obj_template_t *parent);
121
122
145extern status_t
147 tk_chain_t *tkc,
148 ncx_module_t *mod,
149 dlq_hdr_t *groupingQ,
150 obj_template_t *parent);
151
152
176extern status_t
178 tk_chain_t *tkc,
179 ncx_module_t *mod,
180 dlq_hdr_t *groupingQ,
181 obj_template_t *parent);
182
183
199extern status_t
201 tk_chain_t *tkc,
202 ncx_module_t *mod,
203 dlq_hdr_t *groupingQ);
204
205
233extern status_t
235 ncx_module_t *mod,
236 obj_template_t *obj,
237 grp_template_t *grp);
238
242#ifdef __cplusplus
243} /* end extern 'C' */
244#endif
245
246#endif /* _H_yang_grp */
dlq provides general double-linked list and queue support:
status_t
global error return code
Definition: status_enum.h:210
status_t yang_grp_resolve_groupings(yang_pcb_t *pcb, tk_chain_t *tkc, ncx_module_t *mod, dlq_hdr_t *groupingQ, obj_template_t *parent)
Resolve grouping-stmts (first pass)
Definition: yang_grp.c:473
status_t yang_grp_resolve_complete(yang_pcb_t *pcb, tk_chain_t *tkc, ncx_module_t *mod, dlq_hdr_t *groupingQ, obj_template_t *parent)
Resolve grouping-stmts (second pass)
Definition: yang_grp.c:665
status_t yang_grp_consume_grouping(yang_pcb_t *pcb, tk_chain_t *tkc, ncx_module_t *mod, dlq_hdr_t *que, obj_template_t *parent)
Consume a grouping-stmt.
Definition: yang_grp.c:228
status_t yang_grp_resolve_final(yang_pcb_t *pcb, tk_chain_t *tkc, ncx_module_t *mod, dlq_hdr_t *groupingQ)
Resolve Q of groupings.
Definition: yang_grp.c:762
status_t yang_grp_check_nest_loop(tk_chain_t *tkc, ncx_module_t *mod, obj_template_t *obj, grp_template_t *grp)
Check the 'uses' object and determine if it is contained within the group being used.
Definition: yang_grp.c:843
YANG Grouping Statement Handler.
YANG module data structures Many internal representations of YANG module constructs.
Data Object Support.
Global error messages for status code enumerations.
One YANG 'grouping' definition – sibling set template.
Definition: grp.h:87
representation of one module or submodule during and after parsing
Definition: ncxtypes.h:1134
One YANG data-def-stmt.
Definition: obj.h:1220
token parsing chain (main parser control block)
Definition: tk.h:415
YANG parser control block.
Definition: yang.h:204
NCX Syntax Token Handler.
YANG Module parser utilities.