Teuchos - Trilinos Tools Package  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Teuchos_YAML.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // Teuchos: Common Tools Package
4 //
5 // Copyright 2004 NTESS and the Teuchos contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef TEUCHOS_YAML_HPP
11 #define TEUCHOS_YAML_HPP
12 
102 #include <Teuchos_Language.hpp>
103 #include <Teuchos_ReaderTables.hpp>
104 
105 namespace Teuchos {
106 namespace YAML {
107 
108 enum {
109  PROD_DOC,
110  PROD_DOC2,
111  PROD_TOP_FIRST,
112  PROD_TOP_NEXT,
113  PROD_TOP_DIRECT,
114  PROD_TOP_BEGIN,
115  PROD_TOP_END,
116  PROD_TOP_BMAP,
117  PROD_BMAP_FIRST,
118  PROD_BMAP_NEXT,
119  PROD_BMAP_SCALAR,
120  PROD_BMAP_BSCALAR,
121  PROD_BMAP_BVALUE,
122  PROD_BVALUE_EMPTY,
123  PROD_BVALUE_BMAP,
124  PROD_BVALUE_BSEQ,
125  PROD_BMAP_FMAP,
126  PROD_BMAP_FSEQ,
127  PROD_BSEQ_FIRST,
128  PROD_BSEQ_NEXT,
129  PROD_BSEQ_SCALAR,
130  PROD_BSEQ_BSCALAR,
131  PROD_BSEQ_BMAP,
132  PROD_BSEQ_BMAP_TRAIL,
133  PROD_BSEQ_BSEQ,
134  PROD_BSEQ_BSEQ_TRAIL,
135  PROD_BSEQ_FMAP,
136  PROD_BSEQ_FSEQ,
137  PROD_FMAP,
138  PROD_FMAP_EMPTY,
139  PROD_FMAP_FIRST,
140  PROD_FMAP_NEXT,
141  PROD_FMAP_SCALAR,
142  PROD_FMAP_FMAP,
143  PROD_FMAP_FSEQ,
144  PROD_FSEQ,
145  PROD_FSEQ_EMPTY,
146  PROD_FSEQ_FIRST,
147  PROD_FSEQ_NEXT,
148  PROD_FSEQ_SCALAR,
149  PROD_FSEQ_FMAP,
150  PROD_FSEQ_FSEQ,
151  PROD_SCALAR_RAW,
152  PROD_SCALAR_QUOTED,
153  PROD_MAP_SCALAR_RAW,
154  PROD_MAP_SCALAR_QUOTED,
155  PROD_SCALAR_DQUOTED,
156  PROD_SCALAR_SQUOTED,
157  PROD_SCALAR_HEAD_OTHER,
158  PROD_SCALAR_HEAD_DOT,
159  PROD_SCALAR_HEAD_DASH,
160  PROD_SCALAR_HEAD_DOT_DOT,
161  PROD_MAP_SCALAR_ESCAPED_EMPTY,
162  PROD_MAP_SCALAR_ESCAPED_NEXT,
163  PROD_TAG_EMPTY,
164  PROD_TAG,
165  PROD_BSCALAR,
166  PROD_BSCALAR_FIRST,
167  PROD_BSCALAR_NEXT,
168  PROD_BSCALAR_LINE,
169  PROD_BSCALAR_INDENT,
170  PROD_BSCALAR_HEADER_LITERAL,
171  PROD_BSCALAR_HEADER_FOLDED,
172  PROD_BSCALAR_HEAD_EMPTY,
173  PROD_BSCALAR_HEAD_NEXT,
174  PROD_BSCALAR_HEAD_OTHER,
175  PROD_BSCALAR_HEAD_DASH,
176  PROD_DQUOTED_EMPTY,
177  PROD_DQUOTED_NEXT,
178  PROD_SQUOTED_EMPTY,
179  PROD_SQUOTED_NEXT,
180  PROD_ANY_EMPTY,
181  PROD_ANY_NEXT,
182  PROD_DESCAPE_EMPTY,
183  PROD_DESCAPE_NEXT,
184  PROD_DESCAPE,
185  PROD_SESCAPE_EMPTY,
186  PROD_SESCAPE_NEXT,
187  PROD_SESCAPE,
188  PROD_SCALAR_TAIL_EMPTY,
189  PROD_SCALAR_TAIL_NEXT,
190  PROD_OTHER_FIRST,
191  PROD_OTHER_NEXT,
192  PROD_SCALAR_TAIL_SPACE,
193  PROD_SCALAR_TAIL_DOT,
194  PROD_SCALAR_TAIL_DASH,
195  PROD_SCALAR_TAIL_SQUOT,
196  PROD_SCALAR_TAIL_OTHER,
197  PROD_DESCAPED_DQUOT,
198  PROD_DESCAPED_SLASH,
199  PROD_DESCAPED_DQUOTED,
200  PROD_DQUOTED_COMMON,
201  PROD_DQUOTED_SQUOT,
202  PROD_SQUOTED_COMMON,
203  PROD_SQUOTED_DQUOT,
204  PROD_SQUOTED_SLASH,
205  PROD_ANY_COMMON,
206  PROD_ANY_DQUOT,
207  PROD_ANY_SQUOT,
208  PROD_ANY_SLASH,
209  PROD_COMMON_SPACE,
210  PROD_COMMON_COLON,
211  PROD_COMMON_DOT,
212  PROD_COMMON_DASH,
213  PROD_COMMON_PIPE,
214  PROD_COMMON_LSQUARE,
215  PROD_COMMON_RSQUARE,
216  PROD_COMMON_LCURLY,
217  PROD_COMMON_RCURLY,
218  PROD_COMMON_RANGLE,
219  PROD_COMMON_COMMA,
220  PROD_COMMON_PERCENT,
221  PROD_COMMON_EXCL,
222  PROD_COMMON_OTHER,
223  PROD_SPACE_STAR_EMPTY,
224  PROD_SPACE_STAR_NEXT,
225  PROD_SPACE_PLUS_FIRST,
226  PROD_SPACE_PLUS_NEXT
227 };
228 
229 enum { NPRODS = PROD_SPACE_PLUS_NEXT + 1 };
230 
231 enum {
232  TOK_NEWLINE,
233  TOK_INDENT,
234  TOK_DEDENT,
235  TOK_SPACE,
236  TOK_COLON,
237  TOK_DOT,
238  TOK_DASH,
239  TOK_DQUOT,
240  TOK_SQUOT,
241  TOK_SLASH,
242  TOK_PIPE,
243  TOK_LSQUARE,
244  TOK_RSQUARE,
245  TOK_LCURLY,
246  TOK_RCURLY,
247  TOK_RANGLE,
248  TOK_COMMA,
249  TOK_PERCENT,
250  TOK_EXCL,
251  TOK_OTHER
252 };
253 
254 enum { NTOKS = TOK_OTHER + 1 };
255 
256 Language make_language();
257 LanguagePtr ask_language();
258 ReaderTablesPtr ask_reader_tables();
259 
260 } // end namespace yaml
261 } // end namespace Teuchos
262 
263 #endif
Declares Teuchos::ReaderTables.
RCP< const ReaderTables > ReaderTablesPtr
an RCP to a const ReaderTables
RCP< const Language > LanguagePtr
an RCP to a const Language
Declares Teuchos::Language.