CliXoN
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
clixon_yang_parse.tab.c File Reference
#include "clixon_config.h"
#include <stdio.h>
#include <string.h>
#include <stdint.h>
#include <stdlib.h>
#include <errno.h>
#include <assert.h>
#include <ctype.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <net/if.h>
#include <cligen/cligen.h>
#include "clixon_queue.h"
#include "clixon_hash.h"
#include "clixon_handle.h"
#include "clixon_err.h"
#include "clixon_log.h"
#include "clixon_yang.h"
#include "clixon_yang_parse.h"
#include <stddef.h>

Data Structures

union  YYSTYPE
 

Macros

#define YYBISON   1
 
#define YYBISON_VERSION   "3.0.2"
 
#define YYSKELETON_NAME   "yacc.c"
 
#define YYPURE   0
 
#define YYPUSH   0
 
#define YYPULL   1
 
#define yyparse   clixon_yang_parseparse
 
#define yylex   clixon_yang_parselex
 
#define yyerror   clixon_yang_parseerror
 
#define yydebug   clixon_yang_parsedebug
 
#define yynerrs   clixon_yang_parsenerrs
 
#define yylval   clixon_yang_parselval
 
#define yychar   clixon_yang_parsechar
 
#define YY_NULLPTR   0
 
#define YYERROR_VERBOSE   0
 
#define YY_CLIXON_YANG_PARSE_Y_TAB_H_INCLUDED
 
#define YYDEBUG   0
 
#define YYTOKENTYPE
 
#define MY_EOF   258
 
#define DQ   259
 
#define K_UNKNOWN   260
 
#define CHAR   261
 
#define K_ANYXML   262
 
#define K_ARGUMENT   263
 
#define K_AUGMENT   264
 
#define K_BASE   265
 
#define K_BELONGS_TO   266
 
#define K_BIT   267
 
#define K_CASE   268
 
#define K_CHOICE   269
 
#define K_CONFIG   270
 
#define K_CONTACT   271
 
#define K_CONTAINER   272
 
#define K_DEFAULT   273
 
#define K_DESCRIPTION   274
 
#define K_DEVIATE   275
 
#define K_DEVIATION   276
 
#define K_ENUM   277
 
#define K_ERROR_APP_TAG   278
 
#define K_ERROR_MESSAGE   279
 
#define K_EXTENSION   280
 
#define K_FEATURE   281
 
#define K_FRACTION_DIGITS   282
 
#define K_GROUPING   283
 
#define K_IDENTITY   284
 
#define K_IF_FEATURE   285
 
#define K_IMPORT   286
 
#define K_INCLUDE   287
 
#define K_INPUT   288
 
#define K_KEY   289
 
#define K_LEAF   290
 
#define K_LEAF_LIST   291
 
#define K_LENGTH   292
 
#define K_LIST   293
 
#define K_MANDATORY   294
 
#define K_MAX_ELEMENTS   295
 
#define K_MIN_ELEMENTS   296
 
#define K_MODULE   297
 
#define K_MUST   298
 
#define K_NAMESPACE   299
 
#define K_NOTIFICATION   300
 
#define K_ORDERED_BY   301
 
#define K_ORGANIZATION   302
 
#define K_OUTPUT   303
 
#define K_PATH   304
 
#define K_PATTERN   305
 
#define K_POSITION   306
 
#define K_PREFIX   307
 
#define K_PRESENCE   308
 
#define K_RANGE   309
 
#define K_REFERENCE   310
 
#define K_REFINE   311
 
#define K_REQUIRE_INSTANCE   312
 
#define K_REVISION   313
 
#define K_REVISION_DATE   314
 
#define K_RPC   315
 
#define K_STATUS   316
 
#define K_SUBMODULE   317
 
#define K_TYPE   318
 
#define K_TYPEDEF   319
 
#define K_UNIQUE   320
 
#define K_UNITS   321
 
#define K_USES   322
 
#define K_VALUE   323
 
#define K_WHEN   324
 
#define K_YANG_VERSION   325
 
#define K_YIN_ELEMENT   326
 
#define YYSTYPE_IS_TRIVIAL   1
 
#define YYSTYPE_IS_DECLARED   1
 
#define _YY   ((struct clicon_yang_yacc_arg *)_yy)
 
#define _YYERROR(msg)   {clicon_debug(2, "YYERROR %s '%s' %d", (msg), clixon_yang_parsetext, _YY->yy_linenum); YYERROR;}
 
#define YY_(msgid)   msgid
 
#define YYSIZE_T   size_t
 
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
 
#define YY_ATTRIBUTE(Spec)   /* empty */
 
#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
 
#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))
 
#define _Noreturn   YY_ATTRIBUTE ((__noreturn__))
 
#define YYUSE(E)   ((void) (E))
 
#define YY_INITIAL_VALUE(Value)   Value
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
 
#define YYSTACK_ALLOC   YYMALLOC
 
#define YYSTACK_FREE   YYFREE
 
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
 
#define YYMALLOC   malloc
 
#define YYFREE   free
 
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
 
#define YYSTACK_BYTES(N)
 
#define YYCOPY_NEEDED   1
 
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
 
#define YYCOPY(Dst, Src, Count)
 
#define YYFINAL   14
 
#define YYLAST   1440
 
#define YYNTOKENS   77
 
#define YYNNTS   162
 
#define YYNRULES   415
 
#define YYNSTATES   566
 
#define YYUNDEFTOK   2
 
#define YYMAXUTOK   326
 
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
#define YYPACT_NINF   -354
 
#define yypact_value_is_default(Yystate)   (!!((Yystate) == (-354)))
 
#define YYTABLE_NINF   -1
 
#define yytable_value_is_error(Yytable_value)   0
 
#define yyerrok   (yyerrstatus = 0)
 
#define yyclearin   (yychar = YYEMPTY)
 
#define YYEMPTY   (-2)
 
#define YYEOF   0
 
#define YYACCEPT   goto yyacceptlab
 
#define YYABORT   goto yyabortlab
 
#define YYERROR   goto yyerrorlab
 
#define YYRECOVERING()   (!!yyerrstatus)
 
#define YYBACKUP(Token, Value)
 
#define YYTERROR   1
 
#define YYERRCODE   256
 
#define YYDPRINTF(Args)
 
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 
#define YY_STACK_PRINT(Bottom, Top)
 
#define YY_REDUCE_PRINT(Rule)
 
#define YYINITDEPTH   200
 
#define YYMAXDEPTH   10000
 
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
 

Typedefs

typedef union YYSTYPE YYSTYPE
 
typedef unsigned char yytype_uint8
 
typedef signed char yytype_int8
 
typedef unsigned short int yytype_uint16
 
typedef short int yytype_int16
 

Enumerations

enum  yytokentype {
  J_FALSE = 258, J_TRUE = 259, J_NULL = 260, J_EOF = 261,
  J_DQ = 262, J_CHAR = 263, J_NUMBER = 264, J_FALSE = 258,
  J_TRUE = 259, J_NULL = 260, J_EOF = 261, J_DQ = 262,
  J_CHAR = 263, J_NUMBER = 264, NAME = 258, CHAR = 259,
  VER = 260, ENC = 261, BSLASH = 262, ESLASH = 263,
  BTEXT = 264, ETEXT = 265, BCOMMENT = 266, ECOMMENT = 267,
  NAME = 258, CHAR = 259, VER = 260, ENC = 261,
  BSLASH = 262, ESLASH = 263, BTEXT = 264, ETEXT = 265,
  BCOMMENT = 266, ECOMMENT = 267, MY_EOF = 258, DQ = 259,
  K_UNKNOWN = 260, CHAR = 261, K_ANYXML = 262, K_ARGUMENT = 263,
  K_AUGMENT = 264, K_BASE = 265, K_BELONGS_TO = 266, K_BIT = 267,
  K_CASE = 268, K_CHOICE = 269, K_CONFIG = 270, K_CONTACT = 271,
  K_CONTAINER = 272, K_DEFAULT = 273, K_DESCRIPTION = 274, K_DEVIATE = 275,
  K_DEVIATION = 276, K_ENUM = 277, K_ERROR_APP_TAG = 278, K_ERROR_MESSAGE = 279,
  K_EXTENSION = 280, K_FEATURE = 281, K_FRACTION_DIGITS = 282, K_GROUPING = 283,
  K_IDENTITY = 284, K_IF_FEATURE = 285, K_IMPORT = 286, K_INCLUDE = 287,
  K_INPUT = 288, K_KEY = 289, K_LEAF = 290, K_LEAF_LIST = 291,
  K_LENGTH = 292, K_LIST = 293, K_MANDATORY = 294, K_MAX_ELEMENTS = 295,
  K_MIN_ELEMENTS = 296, K_MODULE = 297, K_MUST = 298, K_NAMESPACE = 299,
  K_NOTIFICATION = 300, K_ORDERED_BY = 301, K_ORGANIZATION = 302, K_OUTPUT = 303,
  K_PATH = 304, K_PATTERN = 305, K_POSITION = 306, K_PREFIX = 307,
  K_PRESENCE = 308, K_RANGE = 309, K_REFERENCE = 310, K_REFINE = 311,
  K_REQUIRE_INSTANCE = 312, K_REVISION = 313, K_REVISION_DATE = 314, K_RPC = 315,
  K_STATUS = 316, K_SUBMODULE = 317, K_TYPE = 318, K_TYPEDEF = 319,
  K_UNIQUE = 320, K_UNITS = 321, K_USES = 322, K_VALUE = 323,
  K_WHEN = 324, K_YANG_VERSION = 325, K_YIN_ELEMENT = 326, MY_EOF = 258,
  DQ = 259, K_UNKNOWN = 260, CHAR = 261, K_ANYXML = 262,
  K_ARGUMENT = 263, K_AUGMENT = 264, K_BASE = 265, K_BELONGS_TO = 266,
  K_BIT = 267, K_CASE = 268, K_CHOICE = 269, K_CONFIG = 270,
  K_CONTACT = 271, K_CONTAINER = 272, K_DEFAULT = 273, K_DESCRIPTION = 274,
  K_DEVIATE = 275, K_DEVIATION = 276, K_ENUM = 277, K_ERROR_APP_TAG = 278,
  K_ERROR_MESSAGE = 279, K_EXTENSION = 280, K_FEATURE = 281, K_FRACTION_DIGITS = 282,
  K_GROUPING = 283, K_IDENTITY = 284, K_IF_FEATURE = 285, K_IMPORT = 286,
  K_INCLUDE = 287, K_INPUT = 288, K_KEY = 289, K_LEAF = 290,
  K_LEAF_LIST = 291, K_LENGTH = 292, K_LIST = 293, K_MANDATORY = 294,
  K_MAX_ELEMENTS = 295, K_MIN_ELEMENTS = 296, K_MODULE = 297, K_MUST = 298,
  K_NAMESPACE = 299, K_NOTIFICATION = 300, K_ORDERED_BY = 301, K_ORGANIZATION = 302,
  K_OUTPUT = 303, K_PATH = 304, K_PATTERN = 305, K_POSITION = 306,
  K_PREFIX = 307, K_PRESENCE = 308, K_RANGE = 309, K_REFERENCE = 310,
  K_REFINE = 311, K_REQUIRE_INSTANCE = 312, K_REVISION = 313, K_REVISION_DATE = 314,
  K_RPC = 315, K_STATUS = 316, K_SUBMODULE = 317, K_TYPE = 318,
  K_TYPEDEF = 319, K_UNIQUE = 320, K_UNITS = 321, K_USES = 322,
  K_VALUE = 323, K_WHEN = 324, K_YANG_VERSION = 325, K_YIN_ELEMENT = 326
}
 

Functions

int clixon_yang_parseparse (void *_yy)
 
int clixon_yang_parseget_lineno (void)
 
int clicon_yang_debug (int d)
 
void clixon_yang_parseerror (void *_yy, char *s)
 
int yang_parse_init (struct clicon_yang_yacc_arg *yy, yang_spec *ysp)
 
int yang_parse_exit (struct clicon_yang_yacc_arg *yy)
 
int ystack_pop (struct clicon_yang_yacc_arg *yy)
 
struct ys_stackystack_push (struct clicon_yang_yacc_arg *yy, yang_node *yn)
 
static yang_stmt * ysp_add (struct clicon_yang_yacc_arg *yy, enum rfc_6020 keyword, char *argument)
 
static yang_stmt * ysp_add_push (struct clicon_yang_yacc_arg *yy, int keyword, char *argument)
 
static char * prefix_id_join (char *prefix, char *id)
 
void * malloc (YYSIZE_T)
 
void free (void *)
 
static void yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, void *_yy)
 
int yyparse (void *_yy)
 

Variables

enum yytokentype BEGIN
 
YYSTYPE clixon_yang_parselval
 
static const yytype_uint8 yytranslate []
 
static const yytype_int16 yypact []
 
static const yytype_uint16 yydefact []
 
static const yytype_int16 yypgoto []
 
static const yytype_int16 yydefgoto []
 
static const yytype_uint16 yytable []
 
static const yytype_int16 yycheck []
 
static const yytype_uint8 yystos []
 
static const yytype_uint8 yyr1 []
 
static const yytype_uint8 yyr2 []
 
int yychar
 
YYSTYPE yylval
 
int yynerrs
 

Macro Definition Documentation

#define _Noreturn   YY_ATTRIBUTE ((__noreturn__))
#define _YY   ((struct clicon_yang_yacc_arg *)_yy)
#define _YYERROR (   msg)    {clicon_debug(2, "YYERROR %s '%s' %d", (msg), clixon_yang_parsetext, _YY->yy_linenum); YYERROR;}
#define CHAR   261
#define DQ   259
#define K_ANYXML   262
#define K_ARGUMENT   263
#define K_AUGMENT   264
#define K_BASE   265
#define K_BELONGS_TO   266
#define K_BIT   267
#define K_CASE   268
#define K_CHOICE   269
#define K_CONFIG   270
#define K_CONTACT   271
#define K_CONTAINER   272
#define K_DEFAULT   273
#define K_DESCRIPTION   274
#define K_DEVIATE   275
#define K_DEVIATION   276
#define K_ENUM   277
#define K_ERROR_APP_TAG   278
#define K_ERROR_MESSAGE   279
#define K_EXTENSION   280
#define K_FEATURE   281
#define K_FRACTION_DIGITS   282
#define K_GROUPING   283
#define K_IDENTITY   284
#define K_IF_FEATURE   285
#define K_IMPORT   286
#define K_INCLUDE   287
#define K_INPUT   288
#define K_KEY   289
#define K_LEAF   290
#define K_LEAF_LIST   291
#define K_LENGTH   292
#define K_LIST   293
#define K_MANDATORY   294
#define K_MAX_ELEMENTS   295
#define K_MIN_ELEMENTS   296
#define K_MODULE   297
#define K_MUST   298
#define K_NAMESPACE   299
#define K_NOTIFICATION   300
#define K_ORDERED_BY   301
#define K_ORGANIZATION   302
#define K_OUTPUT   303
#define K_PATH   304
#define K_PATTERN   305
#define K_POSITION   306
#define K_PREFIX   307
#define K_PRESENCE   308
#define K_RANGE   309
#define K_REFERENCE   310
#define K_REFINE   311
#define K_REQUIRE_INSTANCE   312
#define K_REVISION   313
#define K_REVISION_DATE   314
#define K_RPC   315
#define K_STATUS   316
#define K_SUBMODULE   317
#define K_TYPE   318
#define K_TYPEDEF   319
#define K_UNIQUE   320
#define K_UNITS   321
#define K_UNKNOWN   260
#define K_USES   322
#define K_VALUE   323
#define K_WHEN   324
#define K_YANG_VERSION   325
#define K_YIN_ELEMENT   326
#define MY_EOF   258
#define YY_ (   msgid)    msgid
#define YY_ATTRIBUTE (   Spec)    /* empty */
#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))
#define YY_CLIXON_YANG_PARSE_Y_TAB_H_INCLUDED
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
#define YY_INITIAL_VALUE (   Value)    Value
#define YY_NULLPTR   0
#define YY_REDUCE_PRINT (   Rule)
#define YY_STACK_PRINT (   Bottom,
  Top 
)
#define YY_SYMBOL_PRINT (   Title,
  Type,
  Value,
  Location 
)
#define YYABORT   goto yyabortlab
#define YYACCEPT   goto yyacceptlab
#define YYBACKUP (   Token,
  Value 
)
Value:
{ \
yychar = (Token); \
yylval = (Value); \
YYPOPSTACK (yylen); \
yystate = *yyssp; \
goto yybackup; \
} \
else \
{ \
yyerror (_yy, YY_("syntax error: cannot back up")); \
} \
while (0)
#define yychar
Definition: clixon_yang_parse.tab.c:70
#define YY_(msgid)
Definition: clixon_yang_parse.tab.c:285
#define YYERROR
Definition: clixon_yang_parse.tab.c:1520
etg etg<</NAME%s > if(xml_parse_bslash1(_YA, $2)< 0) YYABORT
#define yyerror
Definition: clixon_yang_parse.tab.c:65
#define yylval
Definition: clixon_yang_parse.tab.c:69
while(1)
Definition: lex.clixon_json_parse.c:797
#define YYPOPSTACK(N)
#define YYEMPTY
Definition: clixon_yang_parse.tab.c:1515
#define YYBISON   1
#define YYBISON_VERSION   "3.0.2"
#define yychar   clixon_yang_parsechar
#define yyclearin   (yychar = YYEMPTY)
#define YYCOPY (   Dst,
  Src,
  Count 
)
Value:
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(Dst)[yyi] = (Src)[yyi]; \
} \
while (0)
while(1)
Definition: lex.clixon_json_parse.c:797
#define YYSIZE_T
Definition: clixon_yang_parse.tab.c:484
#define YYCOPY_NEEDED   1
#define yydebug   clixon_yang_parsedebug
#define YYDEBUG   0
#define YYDPRINTF (   Args)
#define YYEMPTY   (-2)
#define YYEOF   0
#define YYERRCODE   256
#define yyerrok   (yyerrstatus = 0)
#define yyerror   clixon_yang_parseerror
#define YYERROR   goto yyerrorlab
#define YYERROR_VERBOSE   0
#define YYFINAL   14
#define YYFREE   free
#define YYINITDEPTH   200
#define YYLAST   1440
#define yylex   clixon_yang_parselex
#define yylval   clixon_yang_parselval
#define YYMALLOC   malloc
#define YYMAXDEPTH   10000
#define YYMAXUTOK   326
#define yynerrs   clixon_yang_parsenerrs
#define YYNNTS   162
#define YYNRULES   415
#define YYNSTATES   566
#define YYNTOKENS   77
#define YYPACT_NINF   -354
#define yypact_value_is_default (   Yystate)    (!!((Yystate) == (-354)))
#define yyparse   clixon_yang_parseparse
#define YYPOPSTACK (   N)    (yyvsp -= (N), yyssp -= (N))
#define YYPULL   1
#define YYPURE   0
#define YYPUSH   0
#define YYRECOVERING ( )    (!!yyerrstatus)
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YYSIZE_T   size_t
#define YYSKELETON_NAME   "yacc.c"
#define YYSTACK_ALLOC   YYMALLOC
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
#define YYSTACK_BYTES (   N)
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
union YYSTYPE YYSTYPE
Definition: clixon_yang_parse.tab.c:253
#define YYSTACK_GAP_MAXIMUM
Definition: clixon_yang_parse.tab.c:638
short int yytype_int16
Definition: clixon_json_parse.tab.c:299
#define YYSTACK_FREE   YYFREE
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#define YYSTACK_RELOCATE (   Stack_alloc,
  Stack 
)
Value:
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (0)
#define YYSTACK_GAP_MAXIMUM
Definition: clixon_yang_parse.tab.c:638
#define YYCOPY(Dst, Src, Count)
Definition: clixon_yang_parse.tab.c:674
while(1)
Definition: lex.clixon_json_parse.c:797
#define YYSIZE_T
Definition: clixon_yang_parse.tab.c:484
#define YYSTYPE_IS_DECLARED   1
#define YYSTYPE_IS_TRIVIAL   1
#define YYTABLE_NINF   -1
#define yytable_value_is_error (   Yytable_value)    0
#define YYTERROR   1
#define YYTOKENTYPE
#define YYTRANSLATE (   YYX)    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
#define YYUNDEFTOK   2
#define YYUSE (   E)    ((void) (E))

Typedef Documentation

typedef short int yytype_int16
typedef signed char yytype_int8
typedef unsigned short int yytype_uint16
typedef unsigned char yytype_uint8

Enumeration Type Documentation

Enumerator
J_FALSE 
J_TRUE 
J_NULL 
J_EOF 
J_DQ 
J_CHAR 
J_NUMBER 
J_FALSE 
J_TRUE 
J_NULL 
J_EOF 
J_DQ 
J_CHAR 
J_NUMBER 
NAME 
CHAR 
VER 
ENC 
BSLASH 
ESLASH 
BTEXT 
ETEXT 
BCOMMENT 
ECOMMENT 
NAME 
CHAR 
VER 
ENC 
BSLASH 
ESLASH 
BTEXT 
ETEXT 
BCOMMENT 
ECOMMENT 
MY_EOF 
DQ 
K_UNKNOWN 
CHAR 
K_ANYXML 
K_ARGUMENT 
K_AUGMENT 
K_BASE 
K_BELONGS_TO 
K_BIT 
K_CASE 
K_CHOICE 
K_CONFIG 
K_CONTACT 
K_CONTAINER 
K_DEFAULT 
K_DESCRIPTION 
K_DEVIATE 
K_DEVIATION 
K_ENUM 
K_ERROR_APP_TAG 
K_ERROR_MESSAGE 
K_EXTENSION 
K_FEATURE 
K_FRACTION_DIGITS 
K_GROUPING 
K_IDENTITY 
K_IF_FEATURE 
K_IMPORT 
K_INCLUDE 
K_INPUT 
K_KEY 
K_LEAF 
K_LEAF_LIST 
K_LENGTH 
K_LIST 
K_MANDATORY 
K_MAX_ELEMENTS 
K_MIN_ELEMENTS 
K_MODULE 
K_MUST 
K_NAMESPACE 
K_NOTIFICATION 
K_ORDERED_BY 
K_ORGANIZATION 
K_OUTPUT 
K_PATH 
K_PATTERN 
K_POSITION 
K_PREFIX 
K_PRESENCE 
K_RANGE 
K_REFERENCE 
K_REFINE 
K_REQUIRE_INSTANCE 
K_REVISION 
K_REVISION_DATE 
K_RPC 
K_STATUS 
K_SUBMODULE 
K_TYPE 
K_TYPEDEF 
K_UNIQUE 
K_UNITS 
K_USES 
K_VALUE 
K_WHEN 
K_YANG_VERSION 
K_YIN_ELEMENT 
MY_EOF 
DQ 
K_UNKNOWN 
CHAR 
K_ANYXML 
K_ARGUMENT 
K_AUGMENT 
K_BASE 
K_BELONGS_TO 
K_BIT 
K_CASE 
K_CHOICE 
K_CONFIG 
K_CONTACT 
K_CONTAINER 
K_DEFAULT 
K_DESCRIPTION 
K_DEVIATE 
K_DEVIATION 
K_ENUM 
K_ERROR_APP_TAG 
K_ERROR_MESSAGE 
K_EXTENSION 
K_FEATURE 
K_FRACTION_DIGITS 
K_GROUPING 
K_IDENTITY 
K_IF_FEATURE 
K_IMPORT 
K_INCLUDE 
K_INPUT 
K_KEY 
K_LEAF 
K_LEAF_LIST 
K_LENGTH 
K_LIST 
K_MANDATORY 
K_MAX_ELEMENTS 
K_MIN_ELEMENTS 
K_MODULE 
K_MUST 
K_NAMESPACE 
K_NOTIFICATION 
K_ORDERED_BY 
K_ORGANIZATION 
K_OUTPUT 
K_PATH 
K_PATTERN 
K_POSITION 
K_PREFIX 
K_PRESENCE 
K_RANGE 
K_REFERENCE 
K_REFINE 
K_REQUIRE_INSTANCE 
K_REVISION 
K_REVISION_DATE 
K_RPC 
K_STATUS 
K_SUBMODULE 
K_TYPE 
K_TYPEDEF 
K_UNIQUE 
K_UNITS 
K_USES 
K_VALUE 
K_WHEN 
K_YANG_VERSION 
K_YIN_ELEMENT 

Function Documentation

int clicon_yang_debug ( int  d)
void clixon_yang_parseerror ( void *  _yy,
char *  s 
)
int clixon_yang_parseget_lineno ( void  )

Get the current line number.

int clixon_yang_parseparse ( void *  _yy)
void free ( void *  )
void* malloc ( YYSIZE_T  )
static char* prefix_id_join ( char *  prefix,
char *  id 
)
static
int yang_parse_exit ( struct clicon_yang_yacc_arg yy)
int yang_parse_init ( struct clicon_yang_yacc_arg yy,
yang_spec *  ysp 
)
static yang_stmt* ysp_add ( struct clicon_yang_yacc_arg yy,
enum rfc_6020  keyword,
char *  argument 
)
static

Add a yang statement to existing top-of-stack.

Note: consumes 'argument' which assumes it is malloced and not freed by caller

static yang_stmt* ysp_add_push ( struct clicon_yang_yacc_arg yy,
int  keyword,
char *  argument 
)
static

combination of ysp_add and ysp_push for sub-modules

int ystack_pop ( struct clicon_yang_yacc_arg yy)
struct ys_stack* ystack_push ( struct clicon_yang_yacc_arg yy,
yang_node *  yn 
)
static void yydestruct ( const char *  yymsg,
int  yytype,
YYSTYPE yyvaluep,
void *  _yy 
)
static
int yyparse ( void *  _yy)

Variable Documentation

BEGIN
YYSTYPE clixon_yang_parselval
int yychar
const yytype_int16 yycheck[]
static
const yytype_uint16 yydefact[]
static
const yytype_int16 yydefgoto[]
static
Initial value:
=
{
-1, 3, 46, 4, 18, 82, 83, 5, 47, 48,
84, 85, 49, 50, 51, 52, 53, 54, 150, 310,
311, 55, 56, 57, 58, 59, 60, 131, 214, 215,
61, 142, 258, 259, 62, 144, 275, 276, 63, 146,
293, 294, 64, 128, 198, 199, 200, 182, 399, 436,
437, 65, 155, 337, 338, 339, 422, 477, 478, 340,
66, 126, 183, 184, 185, 403, 443, 444, 67, 152,
316, 317, 318, 389, 428, 429, 319, 390, 68, 153,
327, 328, 261, 412, 462, 463, 69, 135, 236, 237,
464, 508, 536, 537, 465, 511, 542, 543, 70, 134,
227, 228, 71, 137, 243, 244, 466, 513, 547, 548,
467, 505, 529, 530, 468, 503, 521, 522, 219, 408,
448, 449, 450, 72, 138, 249, 250, 73, 469, 186,
531, 523, 187, 205, 246, 471, 472, 266, 206, 74,
251, 75, 91, 92, 76, 77, 285, 286, 78, 209,
225, 288, 307, 308, 353, 377, 111, 8, 9, 10,
11, 12
}
YYSTYPE yylval
int yynerrs
const yytype_int16 yypact[]
static
const yytype_int16 yypgoto[]
static
Initial value:
=
{
-354, -354, -23, -354, -354, -354, 465, -354, -354, 414,
-354, 462, -354, 499, 90, 31, 99, 42, -354, -354,
253, 113, 18, 132, 114, -53, -124, -354, -354, 341,
-112, -354, -354, 313, -106, -354, -354, 286, -97, -354,
-354, 274, -354, -354, -354, 374, -354, -74, -354, -354,
140, -354, -354, -354, 242, -354, -354, -354, 105, -354,
-173, -354, -354, 400, 166, -354, -354, 141, -354, -354,
-354, 270, -354, -354, 165, -353, -354, -354, -117, -354,
-354, 271, -167, -354, -354, 144, -71, -354, -354, 367,
-354, -354, -354, 71, -354, -354, -354, 68, -354, -354,
-354, 386, -354, -354, -354, 368, -354, -354, -354, 69,
-354, -354, -354, 95, -354, -354, -354, 104, -143, -354,
-354, 179, 73, -354, -354, -354, 380, 131, -354, 339,
-354, -354, 306, -81, -205, -354, -354, -154, -164, -354,
487, -354, -354, -145, 102, -354, -170, -162, -131, -155,
-354, -156, -354, -354, -354, -259, -127, 34, -22, -354,
609, 629
}
const yytype_uint8 yyr1[]
static
const yytype_uint8 yyr2[]
static
const yytype_uint8 yystos[]
static
const yytype_uint16 yytable[]
static
const yytype_uint8 yytranslate[]
static