summaryrefslogtreecommitdiff
path: root/yy/kalmia.tab.h
diff options
context:
space:
mode:
authorsanine <sanine.not@pm.me>2023-02-07 17:52:17 -0600
committersanine <sanine.not@pm.me>2023-02-07 17:52:17 -0600
commit79f4b0d33cbb490f957d081bd7c8bc97bd4c689c (patch)
treebe04a0dd98ca341a46bd65cf400a20e1c66f3563 /yy/kalmia.tab.h
parentf547164540f4ac7f8436fef8e981b1fef503f08c (diff)
fix parser using REJECT so that example works
Diffstat (limited to 'yy/kalmia.tab.h')
-rw-r--r--yy/kalmia.tab.h141
1 files changed, 141 insertions, 0 deletions
diff --git a/yy/kalmia.tab.h b/yy/kalmia.tab.h
new file mode 100644
index 0000000..987ac6c
--- /dev/null
+++ b/yy/kalmia.tab.h
@@ -0,0 +1,141 @@
+/* A Bison parser, made by GNU Bison 3.8.2. */
+
+/* Bison interface for Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
+ Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
+
+/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
+ especially those whose name start with YY_ or yy_. They are
+ private implementation details that can be changed or removed. */
+
+#ifndef YY_KALMIA_KALMIA_TAB_H_INCLUDED
+# define YY_KALMIA_KALMIA_TAB_H_INCLUDED
+/* Debug traces. */
+#ifndef KALMIADEBUG
+# if defined YYDEBUG
+#if YYDEBUG
+# define KALMIADEBUG 1
+# else
+# define KALMIADEBUG 0
+# endif
+# else /* ! defined YYDEBUG */
+# define KALMIADEBUG 0
+# endif /* ! defined YYDEBUG */
+#endif /* ! defined KALMIADEBUG */
+#if KALMIADEBUG
+extern int kalmiadebug;
+#endif
+/* "%code requires" blocks. */
+#line 13 "kalmia.y"
+
+ typedef void* yyscan_t;
+
+ struct kai_attr_t {
+ char *key;
+ char *value;
+ struct kai_attr_t *next;
+ };
+
+ struct kai_tag_t {
+ char *type;
+ struct kai_attr_t *attrs;
+
+ struct kai_tag_t *children;
+ char *content;
+
+ struct kai_tag_t *next;
+ };
+
+ struct kai_tag_t * kai_parse_file(const char *filename);
+ void kai_tag_destroy(struct kai_tag_t *tag);
+
+#line 80 "kalmia.tab.h"
+
+/* Token kinds. */
+#ifndef KALMIATOKENTYPE
+# define KALMIATOKENTYPE
+ enum kalmiatokentype
+ {
+ KALMIAEMPTY = -2,
+ KALMIAEOF = 0, /* "end of file" */
+ KALMIAerror = 256, /* error */
+ KALMIAUNDEF = 257, /* "invalid token" */
+ PROLOG = 258, /* PROLOG */
+ S_TAG_OPEN = 259, /* S_TAG_OPEN */
+ E_TAG_OPEN = 260, /* E_TAG_OPEN */
+ TAG_CLOSE = 261, /* TAG_CLOSE */
+ EMPTY_TAG_CLOSE = 262, /* EMPTY_TAG_CLOSE */
+ NAME = 263, /* NAME */
+ ATTR = 264, /* ATTR */
+ TEXT = 265, /* TEXT */
+ CONTENT = 266 /* CONTENT */
+ };
+ typedef enum kalmiatokentype kalmiatoken_kind_t;
+#endif
+
+/* Value type. */
+#if ! defined KALMIASTYPE && ! defined KALMIASTYPE_IS_DECLARED
+union KALMIASTYPE
+{
+#line 65 "kalmia.y"
+
+ char *string;
+ struct kai_attr_t *attr;
+ struct kai_tag_t *tag;
+
+#line 114 "kalmia.tab.h"
+
+};
+typedef union KALMIASTYPE KALMIASTYPE;
+# define KALMIASTYPE_IS_TRIVIAL 1
+# define KALMIASTYPE_IS_DECLARED 1
+#endif
+
+/* Location type. */
+#if ! defined KALMIALTYPE && ! defined KALMIALTYPE_IS_DECLARED
+typedef struct KALMIALTYPE KALMIALTYPE;
+struct KALMIALTYPE
+{
+ int first_line;
+ int first_column;
+ int last_line;
+ int last_column;
+};
+# define KALMIALTYPE_IS_DECLARED 1
+# define KALMIALTYPE_IS_TRIVIAL 1
+#endif
+
+
+
+
+int kalmiaparse (yyscan_t scanner, struct kai_tag_t **document);
+
+
+#endif /* !YY_KALMIA_KALMIA_TAB_H_INCLUDED */