GNU Octave
6.2.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
oct-tex-parser.h
Go to the documentation of this file.
1
/* A Bison parser, made by GNU Bison 3.7.5. */
2
3
/* Bison interface for Yacc-like parsers in C
4
5
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
6
Inc.
7
8
This program is free software: you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation, either version 3 of the License, or
11
(at your option) any later version.
12
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
GNU General Public License for more details.
17
18
You should have received a copy of the GNU General Public License
19
along with this program. If not, see <http://www.gnu.org/licenses/>. */
20
21
/* As a special exception, you may create a larger work that contains
22
part or all of the Bison parser skeleton and distribute that work
23
under terms of your choice, so long as that work isn't itself a
24
parser generator using the skeleton or a modified version thereof
25
as a parser skeleton. Alternatively, if you modify or redistribute
26
the parser skeleton itself, you may (at your option) remove this
27
special exception, which will cause the skeleton and the resulting
28
Bison output files to be licensed under the GNU General Public
29
License without this special exception.
30
31
This special exception was added by the Free Software Foundation in
32
version 2.2 of Bison. */
33
34
/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
35
especially those whose name start with YY_ or yy_. They are
36
private implementation details that can be changed or removed. */
37
38
#ifndef YY_OCTAVE_TEX_LIBINTERP_COREFCN_OCT_TEX_PARSER_H_INCLUDED
39
# define YY_OCTAVE_TEX_LIBINTERP_COREFCN_OCT_TEX_PARSER_H_INCLUDED
40
/* Debug traces. */
41
#ifndef OCTAVE_TEX_DEBUG
42
# if defined YYDEBUG
43
#if YYDEBUG
44
# define OCTAVE_TEX_DEBUG 1
45
# else
46
# define OCTAVE_TEX_DEBUG 0
47
# endif
48
# else
/* ! defined YYDEBUG */
49
# define OCTAVE_TEX_DEBUG 0
50
# endif
/* ! defined YYDEBUG */
51
#endif
/* ! defined OCTAVE_TEX_DEBUG */
52
#if OCTAVE_TEX_DEBUG
53
extern
int
octave_tex_debug;
54
#endif
55
/* "%code requires" blocks. */
56
#line 62 "../libinterp/corefcn/oct-tex-parser.yy"
57
#include <string>
58
59
#line 60 "libinterp/corefcn/oct-tex-parser.h"
60
61
/* Token kinds. */
62
#ifndef OCTAVE_TEX_TOKENTYPE
63
# define OCTAVE_TEX_TOKENTYPE
64
enum
octave_tex_tokentype
65
{
66
OCTAVE_TEX_EMPTY
= -2,
67
OCTAVE_TEX_EOF
= 0,
/* "end of file" */
68
OCTAVE_TEX_error
= 256,
/* error */
69
OCTAVE_TEX_UNDEF
= 257,
/* "invalid token" */
70
BF
= 258,
/* BF */
71
IT
= 259,
/* IT */
72
SL
= 260,
/* SL */
73
RM
= 261,
/* RM */
74
FONTNAME
= 262,
/* FONTNAME */
75
FONTSIZE
= 263,
/* FONTSIZE */
76
COLOR
= 264,
/* COLOR */
77
COLOR_RGB
= 265,
/* COLOR_RGB */
78
START
= 266,
/* START */
79
END
= 267,
/* END */
80
SUPER
= 268,
/* SUPER */
81
SUB
= 269,
/* SUB */
82
CH
= 270,
/* CH */
83
NUM
= 271,
/* NUM */
84
SYM
= 272,
/* SYM */
85
SCRIPT
= 273,
/* SCRIPT */
86
STR
= 274
/* STR */
87
};
88
typedef
enum
octave_tex_tokentype
octave_tex_token_kind_t
;
89
#endif
90
/* Token kinds. */
91
#define OCTAVE_TEX_EMPTY -2
92
#define OCTAVE_TEX_EOF 0
93
#define OCTAVE_TEX_error 256
94
#define OCTAVE_TEX_UNDEF 257
95
#define BF 258
96
#define IT 259
97
#define SL 260
98
#define RM 261
99
#define FONTNAME 262
100
#define FONTSIZE 263
101
#define COLOR 264
102
#define COLOR_RGB 265
103
#define START 266
104
#define END 267
105
#define SUPER 268
106
#define SUB 269
107
#define CH 270
108
#define NUM 271
109
#define SYM 272
110
#define SCRIPT 273
111
#define STR 274
112
113
/* Value type. */
114
#if ! defined OCTAVE_TEX_STYPE && ! defined OCTAVE_TEX_STYPE_IS_DECLARED
115
union
OCTAVE_TEX_STYPE
116
{
117
#line 65 "../libinterp/corefcn/oct-tex-parser.yy"
118
119
// Leaf symbols produced by the scanner.
120
char
ch
;
121
double
num
;
122
int
sym
;
123
124
// Used for string buffering.
125
std::string *
str
;
126
127
// Objects produced by the parser.
128
octave::text_element
*
e_base
;
129
octave::text_element_list
*
e_list
;
130
131
#line 132 "libinterp/corefcn/oct-tex-parser.h"
132
133
};
134
typedef
union
OCTAVE_TEX_STYPE
OCTAVE_TEX_STYPE
;
135
# define OCTAVE_TEX_STYPE_IS_TRIVIAL 1
136
# define OCTAVE_TEX_STYPE_IS_DECLARED 1
137
#endif
138
139
140
141
int
octave_tex_parse
(
octave::text_parser_tex
& parser);
142
143
#endif
/* !YY_OCTAVE_TEX_LIBINTERP_COREFCN_OCT_TEX_PARSER_H_INCLUDED */
octave::text_element_list
Definition:
text-engine.h:117
octave::text_element
Definition:
text-engine.h:57
octave::text_parser_tex
Definition:
text-engine.h:418
OCTAVE_TEX_EOF
#define OCTAVE_TEX_EOF
Definition:
oct-tex-parser.h:92
END
#define END
Definition:
oct-tex-parser.h:104
START
#define START
Definition:
oct-tex-parser.h:103
SUPER
#define SUPER
Definition:
oct-tex-parser.h:105
RM
#define RM
Definition:
oct-tex-parser.h:98
COLOR
#define COLOR
Definition:
oct-tex-parser.h:101
FONTSIZE
#define FONTSIZE
Definition:
oct-tex-parser.h:100
SUB
#define SUB
Definition:
oct-tex-parser.h:106
octave_tex_tokentype
octave_tex_tokentype
Definition:
oct-tex-parser.h:65
octave_tex_parse
int octave_tex_parse(octave::text_parser_tex &parser)
Definition:
oct-tex-parser.cc:1123
STR
#define STR
Definition:
oct-tex-parser.h:111
SCRIPT
#define SCRIPT
Definition:
oct-tex-parser.h:110
OCTAVE_TEX_EMPTY
#define OCTAVE_TEX_EMPTY
Definition:
oct-tex-parser.h:91
octave_tex_token_kind_t
enum octave_tex_tokentype octave_tex_token_kind_t
Definition:
oct-tex-parser.h:88
NUM
#define NUM
Definition:
oct-tex-parser.h:108
COLOR_RGB
#define COLOR_RGB
Definition:
oct-tex-parser.h:102
BF
#define BF
Definition:
oct-tex-parser.h:95
OCTAVE_TEX_UNDEF
#define OCTAVE_TEX_UNDEF
Definition:
oct-tex-parser.h:94
SYM
#define SYM
Definition:
oct-tex-parser.h:109
OCTAVE_TEX_error
#define OCTAVE_TEX_error
Definition:
oct-tex-parser.h:93
SL
#define SL
Definition:
oct-tex-parser.h:97
FONTNAME
#define FONTNAME
Definition:
oct-tex-parser.h:99
IT
#define IT
Definition:
oct-tex-parser.h:96
CH
#define CH
Definition:
oct-tex-parser.h:107
OCTAVE_TEX_STYPE
Definition:
oct-tex-parser.h:116
OCTAVE_TEX_STYPE::e_base
octave::text_element * e_base
Definition:
oct-tex-parser.h:128
OCTAVE_TEX_STYPE::sym
int sym
Definition:
oct-tex-parser.h:122
OCTAVE_TEX_STYPE::str
std::string * str
Definition:
oct-tex-parser.h:125
OCTAVE_TEX_STYPE::ch
char ch
Definition:
oct-tex-parser.h:120
OCTAVE_TEX_STYPE::e_list
octave::text_element_list * e_list
Definition:
oct-tex-parser.h:129
OCTAVE_TEX_STYPE::num
double num
Definition:
oct-tex-parser.h:121
libinterp
corefcn
oct-tex-parser.h
Generated on Tue Apr 13 2021 15:27:46 for GNU Octave by
1.9.1