summaryrefslogtreecommitdiffabout
authorMichael Krelin <hacker@klever.net>2005-03-31 13:27:36 (UTC)
committer Michael Krelin <hacker@klever.net>2005-03-31 13:27:36 (UTC)
commitef14961fe10614eb15c71dd5b0b83f292bd7a5b0 (patch) (unidiff)
tree2be43fc5d441070db94c6e9881948d6ba2a87b04
parent9c755a29c43bcf4a3a1bbd55ae7e590fc6ff2e21 (diff)
downloadsitecing-ef14961fe10614eb15c71dd5b0b83f292bd7a5b0.zip
sitecing-ef14961fe10614eb15c71dd5b0b83f292bd7a5b0.tar.gz
sitecing-ef14961fe10614eb15c71dd5b0b83f292bd7a5b0.tar.bz2
minor improvements to code aesthetics
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--lib/sitecing_parser.ll159
1 files changed, 81 insertions, 78 deletions
diff --git a/lib/sitecing_parser.ll b/lib/sitecing_parser.ll
index 8ba8673..9514ce4 100644
--- a/lib/sitecing_parser.ll
+++ b/lib/sitecing_parser.ll
@@ -144,34 +144,34 @@ NOIDCHAR [^A-Za-z0-9_]
144 anchor(); 144 anchor();
145 } 145 }
146} 146}
147 147
148<METHODLINE>{ 148<METHODLINE>{
149 {WHITESPACE}+{ 149 {WHITESPACE}+{
150 modus_operandi& m = modi.front(); 150 modus_operandi& m = M();
151 if(!m.output.empty()) { 151 if(!m.output.empty()) {
152 if(!m._lastid.empty()) { 152 if(!m._lastid.empty()) {
153 if(!m._type.empty()) m._type += ' '; 153 if(!m._type.empty()) m._type += ' ';
154 m._type += m._lastid; 154 m._type += m._lastid;
155 } 155 }
156 m._lastid = m.output; 156 m._lastid = m.output;
157 m.output.clear(); 157 m.output.clear();
158 } 158 }
159 } 159 }
160 \*{ 160 \*{
161 modus_operandi& m = modi.front(); 161 modus_operandi& m = M();
162 ECHO; 162 ECHO;
163 if(!m._lastid.empty()) { 163 if(!m._lastid.empty()) {
164 if(!m._type.empty()) m._type += ' '; 164 if(!m._type.empty()) m._type += ' ';
165 m._type += m._lastid; 165 m._type += m._lastid;
166 } 166 }
167 m._lastid = m.output; 167 m._lastid = m.output;
168 m.output.clear(); 168 m.output.clear();
169 } 169 }
170 \({ 170 \({
171 modus_operandi& m = modi.front(); 171 modus_operandi& m = M();
172 if(m.output.empty()) { 172 if(m.output.empty()) {
173 m._name=m._lastid; 173 m._name=m._lastid;
174 }else{ 174 }else{
175 if(!m._lastid.empty()) { // XXX: lastid, I believe should never be emtpy... 175 if(!m._lastid.empty()) { // XXX: lastid, I believe should never be emtpy...
176 if(!m._type.empty()) m._type += ' '; 176 if(!m._type.empty()) m._type += ' ';
177 m._type += m._lastid; 177 m._type += m._lastid;
@@ -182,13 +182,13 @@ NOIDCHAR [^A-Za-z0-9_]
182 ECHO; 182 ECHO;
183 BEGIN(METHODARGS); 183 BEGIN(METHODARGS);
184 } 184 }
185} 185}
186<METHODARGS>{ 186<METHODARGS>{
187 \%\>{ 187 \%\>{
188 modus_operandi& m = modi.front(); 188 modus_operandi& m = M();
189 m._args = m.output; 189 m._args = m.output;
190 m.output.clear(); 190 m.output.clear();
191 anchor(); 191 anchor();
192 BEGIN(METHODBLOCK); 192 BEGIN(METHODBLOCK);
193 } 193 }
194} 194}
@@ -220,34 +220,34 @@ NOIDCHAR [^A-Za-z0-9_]
220 220
221 <INLINE>\%\>LexerOutput(")",1); M().modus=modus_operandi::modus_preop; yy_pop_state(); 221 <INLINE>\%\>LexerOutput(")",1); M().modus=modus_operandi::modus_preop; yy_pop_state();
222 <CODELINE>\nyy_pop_state(); 222 <CODELINE>\nyy_pop_state();
223 223
224<CODEMETHODLINE>{ 224<CODEMETHODLINE>{
225 {WHITESPACE}+{ 225 {WHITESPACE}+{
226 modus_operandi& m = modi.front(); 226 modus_operandi& m = M();
227 if(!m.output.empty()) { 227 if(!m.output.empty()) {
228 if(!m._lastid.empty()) { 228 if(!m._lastid.empty()) {
229 if(!m._type.empty()) m._type += ' '; 229 if(!m._type.empty()) m._type += ' ';
230 m._type += m._lastid; 230 m._type += m._lastid;
231 } 231 }
232 m._lastid = m.output; 232 m._lastid = m.output;
233 m.output.clear(); 233 m.output.clear();
234 } 234 }
235 } 235 }
236 \*{ 236 \*{
237 modus_operandi& m = modi.front(); 237 modus_operandi& m = M();
238 ECHO; 238 ECHO;
239 if(!m._lastid.empty()) { 239 if(!m._lastid.empty()) {
240 if(!m._type.empty()) m._type += ' '; 240 if(!m._type.empty()) m._type += ' ';
241 m._type += m._lastid; 241 m._type += m._lastid;
242 } 242 }
243 m._lastid = m.output; 243 m._lastid = m.output;
244 m.output.clear(); 244 m.output.clear();
245 } 245 }
246 \({ 246 \({
247 modus_operandi& m = modi.front(); 247 modus_operandi& m = M();
248 if(m.output.empty()) { 248 if(m.output.empty()) {
249 m._name=m._lastid; 249 m._name=m._lastid;
250 }else{ 250 }else{
251 if(!m._lastid.empty()) { // XXX: lastid, I believe should never be emtpy... 251 if(!m._lastid.empty()) { // XXX: lastid, I believe should never be emtpy...
252 if(!m._type.empty()) m._type += ' '; 252 if(!m._type.empty()) m._type += ' ';
253 m._type += m._lastid; 253 m._type += m._lastid;
@@ -258,30 +258,31 @@ NOIDCHAR [^A-Za-z0-9_]
258 ECHO; 258 ECHO;
259 BEGIN(CODEMETHODARGS); 259 BEGIN(CODEMETHODARGS);
260 } 260 }
261} 261}
262<CODEMETHODARGS>{ 262<CODEMETHODARGS>{
263 \%\>{ 263 \%\>{
264 modus_operandi& m = modi.front(); 264 modus_operandi& m = M();
265 m._args = m.output; 265 m._args = m.output;
266 m.output.clear(); 266 m.output.clear();
267 m.flags=0; 267 m.flags=0;
268 anchor(); 268 anchor();
269 BEGIN(CODEMETHODBLOCK); 269 BEGIN(CODEMETHODBLOCK);
270 } 270 }
271} 271}
272 272
273<IMPORTLINE>{ 273<IMPORTLINE>{
274 {WHITESPACE}+{ } 274 {WHITESPACE}+{ }
275 {ID}{ 275 {ID}{
276 if(!modi.front()._name.empty()) 276 modus_operandi& m = M();
277 throw preprocessor_error(CODEPOINT,"syntax error",lineno()); 277 if(!m._name.empty())
278 modi.front()._name = yytext; 278 throw preprocessor_error(CODEPOINT,"syntax error",lineno());
279 } 279 m._name = yytext;
280 }
280 \= { 281 \= {
281 modi.front().output.clear(); 282 M().output.clear();
282 BEGIN(IMPORTCOMPONENT); 283 BEGIN(IMPORTCOMPONENT);
283 } 284 }
284} 285}
285<IMPORTCOMPONENT>{ 286<IMPORTCOMPONENT>{
286 {WHITESPACE}+{ } 287 {WHITESPACE}+{ }
287 \n{ 288 \n{
@@ -303,18 +304,19 @@ NOIDCHAR [^A-Za-z0-9_]
303 } 304 }
304} 305}
305 306
306<IMPORTTYPELINE>{ 307<IMPORTTYPELINE>{
307 {WHITESPACE}+{ } 308 {WHITESPACE}+{ }
308 {ID}{ 309 {ID}{
309 if(!modi.front()._name.empty()) 310 modus_operandi& m = M();
310 throw preprocessor_error(CODEPOINT,"syntax error",lineno()); 311 if(!m._name.empty())
311 modi.front()._name = yytext; 312 throw preprocessor_error(CODEPOINT,"syntax error",lineno());
312 } 313 m._name = yytext;
314 }
313 \= { 315 \= {
314 modi.front().output.clear(); 316 M().output.clear();
315 BEGIN(IMPORTTYPECOMPONENT); 317 BEGIN(IMPORTTYPECOMPONENT);
316 } 318 }
317} 319}
318<IMPORTTYPECOMPONENT>{ 320<IMPORTTYPECOMPONENT>{
319 {WHITESPACE}+{ } 321 {WHITESPACE}+{ }
320 \n{ 322 \n{
@@ -336,18 +338,19 @@ NOIDCHAR [^A-Za-z0-9_]
336 } 338 }
337} 339}
338 340
339<DERIVELINE>{ 341<DERIVELINE>{
340 {WHITESPACE}+{ } 342 {WHITESPACE}+{ }
341 {ID}{ 343 {ID}{
342 if(!modi.front()._name.empty()) 344 modus_operandi& m = M();
343 throw preprocessor_error(CODEPOINT,"syntax_error",lineno()); 345 if(!m._name.empty())
344 modi.front()._name = yytext; 346 throw preprocessor_error(CODEPOINT,"syntax_error",lineno());
345 } 347 m._name = yytext;
348 }
346 \= { 349 \= {
347 modi.front().output.clear(); 350 M().output.clear();
348 BEGIN(DERIVECOMPONENT); 351 BEGIN(DERIVECOMPONENT);
349 } 352 }
350} 353}
351<DERIVECOMPONENT>{ 354<DERIVECOMPONENT>{
352 {WHITESPACE}+{ } 355 {WHITESPACE}+{ }
353 \n { 356 \n {
@@ -368,34 +371,34 @@ NOIDCHAR [^A-Za-z0-9_]
368 BEGIN(INITIAL); 371 BEGIN(INITIAL);
369 } 372 }
370} 373}
371 374
372<VARLINE>{ 375<VARLINE>{
373 {WHITESPACE}+{ 376 {WHITESPACE}+{
374 modus_operandi& m = modi.front(); 377 modus_operandi& m = M();
375 if(!m.output.empty()) { 378 if(!m.output.empty()) {
376 if(!m._lastid.empty()) { 379 if(!m._lastid.empty()) {
377 if(!m._type.empty()) m._type += ' '; 380 if(!m._type.empty()) m._type += ' ';
378 m._type += m._lastid; 381 m._type += m._lastid;
379 } 382 }
380 m._lastid = m.output; 383 m._lastid = m.output;
381 m.output.clear(); 384 m.output.clear();
382 } 385 }
383 } 386 }
384 \*{ 387 \*{
385 modus_operandi& m = modi.front(); 388 modus_operandi& m = M();
386 ECHO; 389 ECHO;
387 if(!m._lastid.empty()) { 390 if(!m._lastid.empty()) {
388 if(!m._type.empty()) m._type += ' '; 391 if(!m._type.empty()) m._type += ' ';
389 m._type += m._lastid; 392 m._type += m._lastid;
390 } 393 }
391 m._lastid = m.output; 394 m._lastid = m.output;
392 m.output.clear(); 395 m.output.clear();
393 } 396 }
394 \;|\n|\={ 397 \;|\n|\={
395 modus_operandi& m = modi.front(); 398 modus_operandi& m = M();
396 if(m.output.empty()) { 399 if(m.output.empty()) {
397 m._name=m._lastid; 400 m._name=m._lastid;
398 }else{ 401 }else{
399 if(!m._lastid.empty()) { // XXX: lastid should never be emtpy, I believe? 402 if(!m._lastid.empty()) { // XXX: lastid should never be emtpy, I believe?
400 if(!m._type.empty()) m._type += ' '; 403 if(!m._type.empty()) m._type += ' ';
401 m._type += m._lastid; 404 m._type += m._lastid;
@@ -407,13 +410,13 @@ NOIDCHAR [^A-Za-z0-9_]
407 if(*yytext!='=') 410 if(*yytext!='=')
408 unput('\n'); 411 unput('\n');
409 } 412 }
410} 413}
411<VARINIT>{ 414<VARINIT>{
412 \n{ 415 \n{
413 modus_operandi& m = modi.front(); 416 modus_operandi& m = M();
414 string::size_type t = m.output.find_first_not_of(" \t"); 417 string::size_type t = m.output.find_first_not_of(" \t");
415 if(t!=string::npos) 418 if(t!=string::npos)
416 m.output.erase(0,t); 419 m.output.erase(0,t);
417 t = m.output.find_last_not_of(" \t;"); 420 t = m.output.find_last_not_of(" \t;");
418 if(t!=string::npos) 421 if(t!=string::npos)
419 m.output.erase(t+1); 422 m.output.erase(t+1);
@@ -423,24 +426,24 @@ NOIDCHAR [^A-Za-z0-9_]
423 modi.pop_front(); 426 modi.pop_front();
424 BEGIN(INITIAL); 427 BEGIN(INITIAL);
425 } 428 }
426} 429}
427 <DECLLINE>\n{ 430 <DECLLINE>\n{
428 ECHO; 431 ECHO;
429 decl += modi.front().output; 432 decl += M().output;
430 modi.pop_front(); 433 modi.pop_front();
431 BEGIN(INITIAL); 434 BEGIN(INITIAL);
432} 435}
433 <IMPLLINE>\n{ 436 <IMPLLINE>\n{
434 ECHO; 437 ECHO;
435 impl += modi.front().output; 438 impl += M().output;
436 modi.pop_front(); 439 modi.pop_front();
437 BEGIN(INITIAL); 440 BEGIN(INITIAL);
438} 441}
439 <CLASSLINE>\n{ 442 <CLASSLINE>\n{
440 class_name = modi.front().output; 443 class_name = M().output;
441 modi.pop_front(); 444 modi.pop_front();
442 BEGIN(INITIAL); 445 BEGIN(INITIAL);
443} 446}
444<CLASSLINE,DECLLINE,IMPLLINE,VARLINE,VARINIT,IMPORTLINE,IMPORTCOMPONENT,CODEMETHODLINE,CODEMETHODARGS,INLINE,METHODLINE,METHODARGS,DECLBLOCK,IMPLBLOCK,CONSTRUCTOR,DESTRUCTOR,CODEMETHODBLOCK,CODELINE,CODEBLOCK,PRAGMALINE>{ 447<CLASSLINE,DECLLINE,IMPLLINE,VARLINE,VARINIT,IMPORTLINE,IMPORTCOMPONENT,CODEMETHODLINE,CODEMETHODARGS,INLINE,METHODLINE,METHODARGS,DECLBLOCK,IMPLBLOCK,CONSTRUCTOR,DESTRUCTOR,CODEMETHODBLOCK,CODELINE,CODEBLOCK,PRAGMALINE>{
445 "/*"{ 448 "/*"{
446 yy_push_state(SLASHSTAR_COMMENT); 449 yy_push_state(SLASHSTAR_COMMENT);
@@ -474,45 +477,45 @@ NOIDCHAR [^A-Za-z0-9_]
474 {WHITESPACE}+soft_anchor(); M().modify(modus_operandi::modus_text); ECHO; 477 {WHITESPACE}+soft_anchor(); M().modify(modus_operandi::modus_text); ECHO;
475} 478}
476 479
477<DECLBLOCK,IMPLBLOCK,CONSTRUCTOR,DESTRUCTOR,CODEMETHODBLOCK,METHODBLOCK,CODEBLOCK>{ 480<DECLBLOCK,IMPLBLOCK,CONSTRUCTOR,DESTRUCTOR,CODEMETHODBLOCK,METHODBLOCK,CODEBLOCK>{
478 \<\/\%decl\>{ 481 \<\/\%decl\>{
479 if(YY_START!=DECLBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno()); 482 if(YY_START!=DECLBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno());
480 decl += modi.front().output; 483 decl += M().output;
481 modi.pop_front(); 484 modi.pop_front();
482 BEGIN(INITIAL); 485 BEGIN(INITIAL);
483 } 486 }
484 \<\/\%impl\>{ 487 \<\/\%impl\>{
485 if(YY_START!=IMPLBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno()); 488 if(YY_START!=IMPLBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno());
486 impl += modi.front().output; 489 impl += M().output;
487 modi.pop_front(); 490 modi.pop_front();
488 BEGIN(INITIAL); 491 BEGIN(INITIAL);
489 } 492 }
490 \<\/\%constructor\>{ 493 \<\/\%constructor\>{
491 if(YY_START!=CONSTRUCTOR) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno()); 494 if(YY_START!=CONSTRUCTOR) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno());
492 member_functions.push_back(member_function("","","",modi.front().output)); 495 member_functions.push_back(member_function("","","",M().output));
493 have_constructor = true; 496 have_constructor = true;
494 modi.pop_front(); 497 modi.pop_front();
495 BEGIN(INITIAL); 498 BEGIN(INITIAL);
496 } 499 }
497 \<\/\%destructor\>{ 500 \<\/\%destructor\>{
498 if(YY_START!=DESTRUCTOR) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno()); 501 if(YY_START!=DESTRUCTOR) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno());
499 member_functions.push_back(member_function("","~","",modi.front().output)); 502 member_functions.push_back(member_function("","~","",M().output));
500 modi.pop_front(); 503 modi.pop_front();
501 BEGIN(INITIAL); 504 BEGIN(INITIAL);
502 } 505 }
503 \<\/\%codemethod\>{ 506 \<\/\%codemethod\>{
504 if(YY_START!=CODEMETHODBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno()); 507 if(YY_START!=CODEMETHODBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno());
505 modus_operandi& m = modi.front(); 508 modus_operandi& m = M();
506 member_functions.push_back(member_function(m._type,m._name,m._args,m.output)); 509 member_functions.push_back(member_function(m._type,m._name,m._args,m.output));
507 modi.pop_front(); 510 modi.pop_front();
508 BEGIN(INITIAL); 511 BEGIN(INITIAL);
509 } 512 }
510 \<\/%method\> { 513 \<\/%method\> {
511 if(YY_START!=METHODBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno()); 514 if(YY_START!=METHODBLOCK) throw preprocessor_error(CODEPOINT,"tags mismatch",lineno());
512 modus_operandi& m = modi.front(); 515 modus_operandi& m = M();
513 m.modify(modus_operandi::modus_code); 516 m.modify(modus_operandi::modus_code);
514 member_functions.push_back(member_function(m._type,m._name,m._args,m.output)); 517 member_functions.push_back(member_function(m._type,m._name,m._args,m.output));
515 modi.pop_front(); 518 modi.pop_front();
516 BEGIN(INITIAL); 519 BEGIN(INITIAL);
517 } 520 }
518 \<\/%code\> { 521 \<\/%code\> {