Changed output of clixon_cli -G option to show generated CLI spec original text instead of resulting parse-tree, which gives better detail from a debugging perspective.
This commit is contained in:
parent
f9e1fe5de7
commit
266e5581e4
6 changed files with 21 additions and 20 deletions
|
|
@ -907,10 +907,11 @@ yang2cli_stmt(clicon_handle h,
|
|||
}
|
||||
|
||||
/*! Generate CLI code for Yang specification
|
||||
* @param[in] h Clixon handle
|
||||
* @param[in] yspec Yang specification
|
||||
* @param[out] ptnew CLIgen parse-tree
|
||||
* @param[in] gt CLI Generate style
|
||||
* @param[in] h Clixon handle
|
||||
* @param[in] yspec Yang specification
|
||||
* @param[in] gt CLI Generate style
|
||||
* @param[in] printgen Log generated CLIgen syntax
|
||||
* @param[out] ptnew CLIgen parse-tree
|
||||
*
|
||||
* Code generation styles:
|
||||
* VARS: generate keywords for regular vars only not index
|
||||
|
|
@ -919,8 +920,9 @@ yang2cli_stmt(clicon_handle h,
|
|||
int
|
||||
yang2cli(clicon_handle h,
|
||||
yang_stmt *yspec,
|
||||
parse_tree *ptnew,
|
||||
enum genmodel_type gt)
|
||||
enum genmodel_type gt,
|
||||
int printgen,
|
||||
parse_tree *ptnew)
|
||||
{
|
||||
cbuf *cb = NULL;
|
||||
int retval = -1;
|
||||
|
|
@ -936,7 +938,10 @@ yang2cli(clicon_handle h,
|
|||
while ((ymod = yn_each(yspec, ymod)) != NULL)
|
||||
if (yang2cli_stmt(h, ymod, gt, 0, cb) < 0)
|
||||
goto done;
|
||||
clicon_debug(2, "%s: buf\n%s\n", __FUNCTION__, cbuf_get(cb));
|
||||
if (printgen)
|
||||
clicon_log(LOG_NOTICE, "%s: Generated CLI spec:\n%s", __FUNCTION__, cbuf_get(cb));
|
||||
else
|
||||
clicon_debug(2, "%s: buf\n%s\n", __FUNCTION__, cbuf_get(cb));
|
||||
/* Parse the buffer using cligen parser. XXX why this?*/
|
||||
if ((globals = cvec_new(0)) == NULL)
|
||||
goto done;
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
/*
|
||||
* Prototypes
|
||||
*/
|
||||
int yang2cli(clicon_handle h, yang_stmt *yspec, parse_tree *ptnew,
|
||||
enum genmodel_type gt);
|
||||
int yang2cli(clicon_handle h, yang_stmt *yspec, enum genmodel_type gt,
|
||||
int printgen, parse_tree *ptnew);
|
||||
|
||||
#endif /* _CLI_GENERATE_H_ */
|
||||
|
|
|
|||
|
|
@ -576,12 +576,9 @@ main(int argc, char **argv)
|
|||
|
||||
treeref = clicon_cli_model_treename(h);
|
||||
/* Create cli command tree from dbspec */
|
||||
if (yang2cli(h, yspec, &pt, clicon_cli_genmodel_type(h)) < 0)
|
||||
if (yang2cli(h, yspec, clicon_cli_genmodel_type(h), printgen, &pt) < 0)
|
||||
goto done;
|
||||
cligen_tree_add(cli_cligen(h), treeref, pt);
|
||||
|
||||
if (printgen)
|
||||
pt_print(stdout, pt, 1); /* pt_print */
|
||||
}
|
||||
|
||||
/* Initialize cli syntax */
|
||||
|
|
@ -619,10 +616,8 @@ main(int argc, char **argv)
|
|||
/* Join rest of argv to a single command */
|
||||
restarg = clicon_strjoin(argc, argv, " ");
|
||||
|
||||
#if 0 /* Unsure for why this is enabled by default, turned off in clixon 4.5? */
|
||||
/* If several cligen object variables match same preference, select first */
|
||||
cligen_preference_mode_set(cli_cligen(h), 1);
|
||||
#endif
|
||||
|
||||
/* Call start function in all plugins before we go interactive
|
||||
*/
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue