summaryrefslogtreecommitdiffabout
path: root/include/sitecing/sitecing_parser.h
authorMichael Krelin <hacker@klever.net>2005-03-30 21:58:44 (UTC)
committer Michael Krelin <hacker@klever.net>2005-03-30 21:58:44 (UTC)
commit5c757590c7561f6d85b3f9011aa0695c4111b379 (patch) (unidiff)
treee0bf20ca58b3e7bd9cc4eda54db5674ba1d71db0 /include/sitecing/sitecing_parser.h
parent3ddbfeafde93d1aab16a710498d86eef4e787406 (diff)
downloadsitecing-5c757590c7561f6d85b3f9011aa0695c4111b379.zip
sitecing-5c757590c7561f6d85b3f9011aa0695c4111b379.tar.gz
sitecing-5c757590c7561f6d85b3f9011aa0695c4111b379.tar.bz2
1. fixed a bug just introduced, preventing the last skeleton-generated file
from being written. 2. introduced pragma directive and pragma main=class 3. minor changes of no importance
Diffstat (limited to 'include/sitecing/sitecing_parser.h') (more/less context) (ignore whitespace changes)
-rw-r--r--include/sitecing/sitecing_parser.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/sitecing/sitecing_parser.h b/include/sitecing/sitecing_parser.h
index 22d716f..a8474f3 100644
--- a/include/sitecing/sitecing_parser.h
+++ b/include/sitecing/sitecing_parser.h
@@ -270,48 +270,56 @@ class sitecing_parser : public sitecing_parserFlexLexer {
270 * The skeleton file name. 270 * The skeleton file name.
271 */ 271 */
272 string skeleton; 272 string skeleton;
273 /** 273 /**
274 * The component class name. 274 * The component class name.
275 */ 275 */
276 string class_name; 276 string class_name;
277 /** 277 /**
278 * Output basename. 278 * Output basename.
279 * @todo TODO: wish I could remember the details -- document me. 279 * @todo TODO: wish I could remember the details -- document me.
280 */ 280 */
281 string output_basename; 281 string output_basename;
282 /** 282 /**
283 * Verbatim declaration part. 283 * Verbatim declaration part.
284 */ 284 */
285 string decl; 285 string decl;
286 /** 286 /**
287 * Verbatim implementation part. 287 * Verbatim implementation part.
288 */ 288 */
289 string impl; 289 string impl;
290 /** 290 /**
291 * The reference to the component factory object. 291 * The reference to the component factory object.
292 */ 292 */
293 component_factory& factory; 293 component_factory& factory;
294 /**
295 * Pragma map type.
296 */
297 typedef map<string,string> pragmas_t;
298 /**
299 * Pragma's found in the component.
300 */
301 pragmas_t pragmas;
294 302
295 /** 303 /**
296 * @param f the component factory. 304 * @param f the component factory.
297 */ 305 */
298 sitecing_parser(component_factory& f); 306 sitecing_parser(component_factory& f);
299 307
300 /** 308 /**
301 * Preprocess file. 309 * Preprocess file.
302 * @param in input file name. 310 * @param in input file name.
303 */ 311 */
304 void preprocess(const string& in); 312 void preprocess(const string& in);
305 313
306 virtual void LexerOutput(const char *buf,int size); 314 virtual void LexerOutput(const char *buf,int size);
307 virtual int yylex(); 315 virtual int yylex();
308 316
309 /** 317 /**
310 * Retrieve reference to the to of the modes stack. 318 * Retrieve reference to the to of the modes stack.
311 * @return the reference in question. 319 * @return the reference in question.
312 */ 320 */
313 modus_operandi& M() { 321 modus_operandi& M() {
314 return modi.front(); 322 return modi.front();
315 } 323 }
316 /** 324 /**
317 * Anchor the output with the #line, if we're not in the text output mode. 325 * Anchor the output with the #line, if we're not in the text output mode.