* Added linenumbers to all YANG symbols for better debug and errors
* Improved error messages for YANG identityref:s and leafref:s by adding original line numbers
This commit is contained in:
parent
4d265d63bd
commit
00645ee52b
11 changed files with 105 additions and 17 deletions
|
|
@ -416,6 +416,61 @@ yang_when_nsc_set(yang_stmt *ys,
|
|||
return retval;
|
||||
}
|
||||
|
||||
/*! Get yang filename for error/debug purpose
|
||||
*
|
||||
* @param[in] ys Yang statement
|
||||
* @retval filename
|
||||
* @note there maye not always be a "filename" in case the yang is read from memory
|
||||
*/
|
||||
const char *
|
||||
yang_filename_get(yang_stmt *ys)
|
||||
{
|
||||
return ys->ys_filename;
|
||||
}
|
||||
|
||||
/*! Set yang filename for error/debug purpose
|
||||
*
|
||||
* @param[in] ys Yang statement
|
||||
* @param[in] filename
|
||||
* @retval 0 OK
|
||||
* @retval -1 Error
|
||||
* @note there maye not always be a "filename" in case the yang is read from memory
|
||||
*/
|
||||
int
|
||||
yang_filename_set(yang_stmt *ys,
|
||||
const char *filename)
|
||||
{
|
||||
if ((ys->ys_filename = strdup(filename)) == NULL){
|
||||
clicon_err(OE_UNIX, errno, "strdup");
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*! Get line number of yang filename for error/debug purpose
|
||||
*
|
||||
* @param[in] ys Yang statement
|
||||
* @retval linenum
|
||||
*/
|
||||
int
|
||||
yang_linenum_get(yang_stmt *ys)
|
||||
{
|
||||
return ys->ys_linenum;
|
||||
}
|
||||
|
||||
/*! Set line number of yang filename for error/debug purpose
|
||||
*
|
||||
* @param[in] ys Yang statement
|
||||
* @param[in] linenum
|
||||
*/
|
||||
int
|
||||
yang_linenum_set(yang_stmt *ys,
|
||||
int linenum)
|
||||
{
|
||||
ys->ys_linenum = linenum;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* End access functions */
|
||||
|
||||
/*! Create new yang specification
|
||||
|
|
@ -498,6 +553,8 @@ ys_free1(yang_stmt *ys,
|
|||
cvec_free(ys->ys_when_nsc);
|
||||
if (ys->ys_stmt)
|
||||
free(ys->ys_stmt);
|
||||
if (ys->ys_filename)
|
||||
free(ys->ys_filename);
|
||||
if (self)
|
||||
free(ys);
|
||||
return 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue