#define YY_RESTORE_YY_MORE_OFFSET
char *surf_parse_text;
#line 1 "surf/surfxml.l"
-/* Validating XML processor for surfxml.dtd.
- * Generated 2006/05/29 23:03:05.
+/* Validating XML processor for surf/surfxml.dtd.
+ * Generated 2006/07/18 21:02:15.
*
* This program was generated with the FleXML XML processor generator.
- * FleXML is Copyright © 1999-2005 Kristoffer Rose. All rights reserved.
- * (Id: flexml.pl,v 1.48 2006/03/21 13:09:12 mquinson Exp).
+ * FleXML is Copyright (C) 1999-2005 Kristoffer Rose. All rights reserved.
+ * FleXML is Copyright (C) 2003-2006 Martin Quinson. All rights reserved.
+ * (Id: flexml.pl,v 1.53 2006/07/18 12:12:06 mquinson Exp).
*
* There are two, intertwined parts to this program, part A and part B.
*
* ------
*
* Some parts, here collectively called "Part A", are found in the
- * FleXML package. They are Copyright © 1999-2005 Kristoffer Rose.
- * All rights reserved.
+ * FleXML package. They are Copyright (C) 1999-2005 Kristoffer Rose
+ * and Copyright (C) 2003-2006 Martin Quinson. All rights reserved.
*
* You can redistribute, use, perform, display and/or modify "Part A"
* provided the following two conditions hold:
* by the author of or contributors to FleXML.
*
*/
-#line 48 "surf/surfxml.l"
+#line 49 "surf/surfxml.l"
/* Version strings. */
const char rcs_surfxml_flexml_skeleton[] =
- "$" "Id: skel,v 1.28 2006/03/21 12:04:13 legranda Exp $";
+ "$" "Id: skel,v 1.31 2006/07/18 18:21:13 mquinson Exp $";
const char rcs_surfxml_flexml[] =
- "$" "Id: flexml.pl,v 1.48 2006/03/21 13:09:12 mquinson Exp $";
+ "$" "Id: flexml.pl,v 1.53 2006/07/18 12:12:06 mquinson Exp $";
/* ANSI headers. */
#include <unistd.h>
static char bufferstack[FLEXML_BUFFERSTACKSIZE];
static char* limit = bufferstack + FLEXML_BUFFERSTACKSIZE;
typedef struct BufferLast_s {
- struct BufferLast_s *old; char* saved; char new1[1];
+ struct BufferLast_s *old; const char* saved; char new1[1];
} BufferLast;
#ifdef FLEXML_HasMixed
static BufferLast* last = (BufferLast*)0;
}
#ifdef FLEXML_HasMixed
-static void pushbuffer(char* p)
+static void pushbuffer(const char* p)
{
BufferLast* l = (BufferLast*)next;
assert(next < limit);
last = l;
}
-static char* popbuffer(void)
+static const char* popbuffer(void)
{
BufferLast* l = last;
assert(last != (BufferLast*)0);
-#line 240 "surf/surfxml.l"
+#line 241 "surf/surfxml.l"
/* State names. */
const char* *surfxml_statenames=NULL;
-#line 1964 "surf/surfxml.c"
+#line 1965 "surf/surfxml.c"
#define INITIAL 0
#define PROLOG 1
register char *yy_cp, *yy_bp;
register int yy_act;
-#line 244 "surf/surfxml.l"
+#line 245 "surf/surfxml.l"
/* Bypass Flex's default INITIAL state and begin by parsing the XML prolog. */
/* COMMENTS and PIs: handled uniformly for efficiency. */
-#line 2222 "surf/surfxml.c"
+#line 2223 "surf/surfxml.c"
if ( (yy_init) )
{
case 1:
YY_RULE_SETUP
-#line 300 "surf/surfxml.l"
+#line 301 "surf/surfxml.l"
ENTER(INCOMMENT);
YY_BREAK
case 2:
YY_RULE_SETUP
-#line 301 "surf/surfxml.l"
+#line 302 "surf/surfxml.l"
ENTER(INPI);
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 304 "surf/surfxml.l"
+#line 305 "surf/surfxml.l"
LEAVE;
YY_BREAK
case 4:
-#line 306 "surf/surfxml.l"
-case 5:
#line 307 "surf/surfxml.l"
+case 5:
+#line 308 "surf/surfxml.l"
case 6:
/* rule 6 can match eol */
YY_RULE_SETUP
-#line 307 "surf/surfxml.l"
+#line 308 "surf/surfxml.l"
SKIP;
YY_BREAK
case YY_STATE_EOF(INCOMMENT):
-#line 308 "surf/surfxml.l"
+#line 309 "surf/surfxml.l"
FAIL("EOF in comment.");
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 311 "surf/surfxml.l"
+#line 312 "surf/surfxml.l"
LEAVE;
YY_BREAK
case 8:
-#line 313 "surf/surfxml.l"
+#line 314 "surf/surfxml.l"
case 9:
/* rule 9 can match eol */
YY_RULE_SETUP
-#line 313 "surf/surfxml.l"
+#line 314 "surf/surfxml.l"
SKIP;
YY_BREAK
case YY_STATE_EOF(INPI):
-#line 314 "surf/surfxml.l"
+#line 315 "surf/surfxml.l"
FAIL("EOF in PI (processing instruction).");
YY_BREAK
case 10:
/* rule 10 can match eol */
YY_RULE_SETUP
-#line 319 "surf/surfxml.l"
+#line 320 "surf/surfxml.l"
SKIP;
YY_BREAK
/* PROLOG: determine root element and process it. */
case 11:
/* rule 11 can match eol */
YY_RULE_SETUP
-#line 324 "surf/surfxml.l"
+#line 325 "surf/surfxml.l"
SET(DOCTYPE);
YY_BREAK
case 12:
/* rule 12 can match eol */
YY_RULE_SETUP
-#line 325 "surf/surfxml.l"
+#line 326 "surf/surfxml.l"
FAIL("Bad declaration %s.",surf_parse_text);
YY_BREAK
case 13:
/* rule 13 can match eol */
YY_RULE_SETUP
-#line 329 "surf/surfxml.l"
+#line 330 "surf/surfxml.l"
SET(ROOT_surfxml_argument);
YY_BREAK
case 14:
/* rule 14 can match eol */
YY_RULE_SETUP
-#line 330 "surf/surfxml.l"
+#line 331 "surf/surfxml.l"
SET(ROOT_surfxml_route_element);
YY_BREAK
case 15:
/* rule 15 can match eol */
YY_RULE_SETUP
-#line 331 "surf/surfxml.l"
+#line 332 "surf/surfxml.l"
SET(ROOT_surfxml_cpu);
YY_BREAK
case 16:
/* rule 16 can match eol */
YY_RULE_SETUP
-#line 332 "surf/surfxml.l"
+#line 333 "surf/surfxml.l"
SET(ROOT_surfxml_include);
YY_BREAK
case 17:
/* rule 17 can match eol */
YY_RULE_SETUP
-#line 333 "surf/surfxml.l"
+#line 334 "surf/surfxml.l"
SET(ROOT_surfxml_route);
YY_BREAK
case 18:
/* rule 18 can match eol */
YY_RULE_SETUP
-#line 334 "surf/surfxml.l"
+#line 335 "surf/surfxml.l"
SET(ROOT_surfxml_platform_description);
YY_BREAK
case 19:
/* rule 19 can match eol */
YY_RULE_SETUP
-#line 335 "surf/surfxml.l"
+#line 336 "surf/surfxml.l"
SET(ROOT_surfxml_network_link);
YY_BREAK
case 20:
/* rule 20 can match eol */
YY_RULE_SETUP
-#line 336 "surf/surfxml.l"
+#line 337 "surf/surfxml.l"
SET(ROOT_surfxml_process);
YY_BREAK
case 21:
/* rule 21 can match eol */
YY_RULE_SETUP
-#line 337 "surf/surfxml.l"
+#line 338 "surf/surfxml.l"
FAIL("Bad declaration %s.",surf_parse_text);
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 338 "surf/surfxml.l"
+#line 339 "surf/surfxml.l"
FAIL("Unexpected character `%c' in prolog.", surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(PROLOG):
case YY_STATE_EOF(DOCTYPE):
-#line 339 "surf/surfxml.l"
+#line 340 "surf/surfxml.l"
FAIL("EOF in prolog.");
YY_BREAK
case 23:
/* rule 23 can match eol */
YY_RULE_SETUP
-#line 346 "surf/surfxml.l"
+#line 347 "surf/surfxml.l"
{
A_surfxml_platform_description_version = "0.0";
ENTER(AL_surfxml_platform_description);
case 24:
/* rule 24 can match eol */
YY_RULE_SETUP
-#line 352 "surf/surfxml.l"
+#line 353 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_platform_description_version);
YY_BREAK
case 25:
/* rule 25 can match eol */
YY_RULE_SETUP
-#line 353 "surf/surfxml.l"
+#line 354 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_platform_description_version);
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 355 "surf/surfxml.l"
+#line 356 "surf/surfxml.l"
{
LEAVE; STag_surfxml_platform_description();surfxml_pcdata = NULL; ENTER(S_surfxml_platform_description);
}
YY_BREAK
case 27:
YY_RULE_SETUP
-#line 358 "surf/surfxml.l"
+#line 359 "surf/surfxml.l"
{
LEAVE; STag_surfxml_platform_description(); surfxml_pcdata = NULL; ETag_surfxml_platform_description();
switch (YY_START) {
YY_BREAK
case 28:
YY_RULE_SETUP
-#line 364 "surf/surfxml.l"
+#line 365 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of platform_description element.", surf_parse_text[0]);
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 365 "surf/surfxml.l"
+#line 366 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `platform_description' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_platform_description):
-#line 366 "surf/surfxml.l"
+#line 367 "surf/surfxml.l"
FAIL("EOF in attribute list of `platform_description' element.");
YY_BREAK
case 30:
/* rule 30 can match eol */
YY_RULE_SETUP
-#line 370 "surf/surfxml.l"
+#line 371 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_platform_description();
case 31:
/* rule 31 can match eol */
YY_RULE_SETUP
-#line 377 "surf/surfxml.l"
+#line 378 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</platform_description>' expected.",surf_parse_text);
YY_BREAK
case 32:
YY_RULE_SETUP
-#line 378 "surf/surfxml.l"
+#line 379 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</platform_description>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_surfxml_platform_description):
case YY_STATE_EOF(S_surfxml_platform_description_2):
case YY_STATE_EOF(S_surfxml_platform_description):
-#line 379 "surf/surfxml.l"
+#line 380 "surf/surfxml.l"
FAIL("Premature EOF: `</platform_description>' expected.");
YY_BREAK
case 33:
/* rule 33 can match eol */
YY_RULE_SETUP
-#line 382 "surf/surfxml.l"
+#line 383 "surf/surfxml.l"
{
A_surfxml_include_file = NULL;
ENTER(AL_surfxml_include);
case 34:
/* rule 34 can match eol */
YY_RULE_SETUP
-#line 388 "surf/surfxml.l"
+#line 389 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_include_file);
YY_BREAK
case 35:
/* rule 35 can match eol */
YY_RULE_SETUP
-#line 389 "surf/surfxml.l"
+#line 390 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_include_file);
YY_BREAK
case 36:
YY_RULE_SETUP
-#line 391 "surf/surfxml.l"
+#line 392 "surf/surfxml.l"
{
if (!A_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
LEAVE; STag_surfxml_include();surfxml_pcdata = NULL; ENTER(S_surfxml_include);
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 395 "surf/surfxml.l"
+#line 396 "surf/surfxml.l"
{
if (!A_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
LEAVE; STag_surfxml_include(); surfxml_pcdata = NULL; ETag_surfxml_include();
YY_BREAK
case 38:
YY_RULE_SETUP
-#line 404 "surf/surfxml.l"
+#line 405 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of include element.", surf_parse_text[0]);
YY_BREAK
case 39:
YY_RULE_SETUP
-#line 405 "surf/surfxml.l"
+#line 406 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `include' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_include):
-#line 406 "surf/surfxml.l"
+#line 407 "surf/surfxml.l"
FAIL("EOF in attribute list of `include' element.");
YY_BREAK
case 40:
/* rule 40 can match eol */
YY_RULE_SETUP
-#line 410 "surf/surfxml.l"
+#line 411 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_include();
case 41:
/* rule 41 can match eol */
YY_RULE_SETUP
-#line 419 "surf/surfxml.l"
+#line 420 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</include>' expected.",surf_parse_text);
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 420 "surf/surfxml.l"
+#line 421 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</include>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_surfxml_include):
case YY_STATE_EOF(S_surfxml_include):
case YY_STATE_EOF(S_surfxml_include_2):
-#line 421 "surf/surfxml.l"
+#line 422 "surf/surfxml.l"
FAIL("Premature EOF: `</include>' expected.");
YY_BREAK
case 43:
/* rule 43 can match eol */
YY_RULE_SETUP
-#line 424 "surf/surfxml.l"
+#line 425 "surf/surfxml.l"
{
A_surfxml_cpu_name = NULL;
A_surfxml_cpu_power = NULL;
case 44:
/* rule 44 can match eol */
YY_RULE_SETUP
-#line 439 "surf/surfxml.l"
+#line 440 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_name);
YY_BREAK
case 45:
/* rule 45 can match eol */
YY_RULE_SETUP
-#line 440 "surf/surfxml.l"
+#line 441 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_name);
YY_BREAK
case 46:
/* rule 46 can match eol */
YY_RULE_SETUP
-#line 442 "surf/surfxml.l"
+#line 443 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_power);
YY_BREAK
case 47:
/* rule 47 can match eol */
YY_RULE_SETUP
-#line 443 "surf/surfxml.l"
+#line 444 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_power);
YY_BREAK
case 48:
/* rule 48 can match eol */
YY_RULE_SETUP
-#line 445 "surf/surfxml.l"
+#line 446 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_availability);
YY_BREAK
case 49:
/* rule 49 can match eol */
YY_RULE_SETUP
-#line 446 "surf/surfxml.l"
+#line 447 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_availability);
YY_BREAK
case 50:
/* rule 50 can match eol */
YY_RULE_SETUP
-#line 448 "surf/surfxml.l"
+#line 449 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_availability_file);
YY_BREAK
case 51:
/* rule 51 can match eol */
YY_RULE_SETUP
-#line 449 "surf/surfxml.l"
+#line 450 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_availability_file);
YY_BREAK
case 52:
/* rule 52 can match eol */
-#line 452 "surf/surfxml.l"
+#line 453 "surf/surfxml.l"
case 53:
/* rule 53 can match eol */
YY_RULE_SETUP
-#line 452 "surf/surfxml.l"
+#line 453 "surf/surfxml.l"
A_surfxml_cpu_state = A_surfxml_cpu_state_ON;
YY_BREAK
case 54:
/* rule 54 can match eol */
-#line 454 "surf/surfxml.l"
+#line 455 "surf/surfxml.l"
case 55:
/* rule 55 can match eol */
YY_RULE_SETUP
-#line 454 "surf/surfxml.l"
+#line 455 "surf/surfxml.l"
A_surfxml_cpu_state = A_surfxml_cpu_state_OFF;
YY_BREAK
case 56:
/* rule 56 can match eol */
YY_RULE_SETUP
-#line 456 "surf/surfxml.l"
+#line 457 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_state_file);
YY_BREAK
case 57:
/* rule 57 can match eol */
YY_RULE_SETUP
-#line 457 "surf/surfxml.l"
+#line 458 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_state_file);
YY_BREAK
case 58:
/* rule 58 can match eol */
YY_RULE_SETUP
-#line 459 "surf/surfxml.l"
+#line 460 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_interference_send);
YY_BREAK
case 59:
/* rule 59 can match eol */
YY_RULE_SETUP
-#line 460 "surf/surfxml.l"
+#line 461 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_interference_send);
YY_BREAK
case 60:
/* rule 60 can match eol */
YY_RULE_SETUP
-#line 462 "surf/surfxml.l"
+#line 463 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_interference_recv);
YY_BREAK
case 61:
/* rule 61 can match eol */
YY_RULE_SETUP
-#line 463 "surf/surfxml.l"
+#line 464 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_interference_recv);
YY_BREAK
case 62:
/* rule 62 can match eol */
YY_RULE_SETUP
-#line 465 "surf/surfxml.l"
+#line 466 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_interference_send_recv);
YY_BREAK
case 63:
/* rule 63 can match eol */
YY_RULE_SETUP
-#line 466 "surf/surfxml.l"
+#line 467 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_interference_send_recv);
YY_BREAK
case 64:
/* rule 64 can match eol */
YY_RULE_SETUP
-#line 468 "surf/surfxml.l"
+#line 469 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_max_outgoing_rate);
YY_BREAK
case 65:
/* rule 65 can match eol */
YY_RULE_SETUP
-#line 469 "surf/surfxml.l"
+#line 470 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_max_outgoing_rate);
YY_BREAK
case 66:
YY_RULE_SETUP
-#line 471 "surf/surfxml.l"
+#line 472 "surf/surfxml.l"
{
if (!A_surfxml_cpu_name) FAIL("Required attribute `name' not set for `cpu' element.");
if (!A_surfxml_cpu_power) FAIL("Required attribute `power' not set for `cpu' element.");
YY_BREAK
case 67:
YY_RULE_SETUP
-#line 476 "surf/surfxml.l"
+#line 477 "surf/surfxml.l"
{
if (!A_surfxml_cpu_name) FAIL("Required attribute `name' not set for `cpu' element.");
if (!A_surfxml_cpu_power) FAIL("Required attribute `power' not set for `cpu' element.");
YY_BREAK
case 68:
YY_RULE_SETUP
-#line 486 "surf/surfxml.l"
+#line 487 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of cpu element.", surf_parse_text[0]);
YY_BREAK
case 69:
YY_RULE_SETUP
-#line 487 "surf/surfxml.l"
+#line 488 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `cpu' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_cpu):
-#line 488 "surf/surfxml.l"
+#line 489 "surf/surfxml.l"
FAIL("EOF in attribute list of `cpu' element.");
YY_BREAK
case 70:
/* rule 70 can match eol */
YY_RULE_SETUP
-#line 492 "surf/surfxml.l"
+#line 493 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_cpu();
case 71:
/* rule 71 can match eol */
YY_RULE_SETUP
-#line 501 "surf/surfxml.l"
+#line 502 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</cpu>' expected.",surf_parse_text);
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 502 "surf/surfxml.l"
+#line 503 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</cpu>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_surfxml_cpu):
-#line 503 "surf/surfxml.l"
+#line 504 "surf/surfxml.l"
FAIL("Premature EOF: `</cpu>' expected.");
YY_BREAK
case 73:
/* rule 73 can match eol */
YY_RULE_SETUP
-#line 506 "surf/surfxml.l"
+#line 507 "surf/surfxml.l"
{
A_surfxml_network_link_name = NULL;
A_surfxml_network_link_bandwidth = NULL;
case 74:
/* rule 74 can match eol */
YY_RULE_SETUP
-#line 519 "surf/surfxml.l"
+#line 520 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_name);
YY_BREAK
case 75:
/* rule 75 can match eol */
YY_RULE_SETUP
-#line 520 "surf/surfxml.l"
+#line 521 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_name);
YY_BREAK
case 76:
/* rule 76 can match eol */
YY_RULE_SETUP
-#line 522 "surf/surfxml.l"
+#line 523 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_bandwidth);
YY_BREAK
case 77:
/* rule 77 can match eol */
YY_RULE_SETUP
-#line 523 "surf/surfxml.l"
+#line 524 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_bandwidth);
YY_BREAK
case 78:
/* rule 78 can match eol */
YY_RULE_SETUP
-#line 525 "surf/surfxml.l"
+#line 526 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_bandwidth_file);
YY_BREAK
case 79:
/* rule 79 can match eol */
YY_RULE_SETUP
-#line 526 "surf/surfxml.l"
+#line 527 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_bandwidth_file);
YY_BREAK
case 80:
/* rule 80 can match eol */
YY_RULE_SETUP
-#line 528 "surf/surfxml.l"
+#line 529 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_latency);
YY_BREAK
case 81:
/* rule 81 can match eol */
YY_RULE_SETUP
-#line 529 "surf/surfxml.l"
+#line 530 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_latency);
YY_BREAK
case 82:
/* rule 82 can match eol */
YY_RULE_SETUP
-#line 531 "surf/surfxml.l"
+#line 532 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_latency_file);
YY_BREAK
case 83:
/* rule 83 can match eol */
YY_RULE_SETUP
-#line 532 "surf/surfxml.l"
+#line 533 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_latency_file);
YY_BREAK
case 84:
/* rule 84 can match eol */
-#line 535 "surf/surfxml.l"
+#line 536 "surf/surfxml.l"
case 85:
/* rule 85 can match eol */
YY_RULE_SETUP
-#line 535 "surf/surfxml.l"
+#line 536 "surf/surfxml.l"
A_surfxml_network_link_state = A_surfxml_network_link_state_ON;
YY_BREAK
case 86:
/* rule 86 can match eol */
-#line 537 "surf/surfxml.l"
+#line 538 "surf/surfxml.l"
case 87:
/* rule 87 can match eol */
YY_RULE_SETUP
-#line 537 "surf/surfxml.l"
+#line 538 "surf/surfxml.l"
A_surfxml_network_link_state = A_surfxml_network_link_state_OFF;
YY_BREAK
case 88:
/* rule 88 can match eol */
YY_RULE_SETUP
-#line 539 "surf/surfxml.l"
+#line 540 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_state_file);
YY_BREAK
case 89:
/* rule 89 can match eol */
YY_RULE_SETUP
-#line 540 "surf/surfxml.l"
+#line 541 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_state_file);
YY_BREAK
case 90:
/* rule 90 can match eol */
-#line 543 "surf/surfxml.l"
+#line 544 "surf/surfxml.l"
case 91:
/* rule 91 can match eol */
YY_RULE_SETUP
-#line 543 "surf/surfxml.l"
+#line 544 "surf/surfxml.l"
A_surfxml_network_link_sharing_policy = A_surfxml_network_link_sharing_policy_SHARED;
YY_BREAK
case 92:
/* rule 92 can match eol */
-#line 545 "surf/surfxml.l"
+#line 546 "surf/surfxml.l"
case 93:
/* rule 93 can match eol */
YY_RULE_SETUP
-#line 545 "surf/surfxml.l"
+#line 546 "surf/surfxml.l"
A_surfxml_network_link_sharing_policy = A_surfxml_network_link_sharing_policy_FATPIPE;
YY_BREAK
case 94:
YY_RULE_SETUP
-#line 547 "surf/surfxml.l"
+#line 548 "surf/surfxml.l"
{
if (!A_surfxml_network_link_name) FAIL("Required attribute `name' not set for `network_link' element.");
if (!A_surfxml_network_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `network_link' element.");
YY_BREAK
case 95:
YY_RULE_SETUP
-#line 552 "surf/surfxml.l"
+#line 553 "surf/surfxml.l"
{
if (!A_surfxml_network_link_name) FAIL("Required attribute `name' not set for `network_link' element.");
if (!A_surfxml_network_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `network_link' element.");
YY_BREAK
case 96:
YY_RULE_SETUP
-#line 562 "surf/surfxml.l"
+#line 563 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of network_link element.", surf_parse_text[0]);
YY_BREAK
case 97:
YY_RULE_SETUP
-#line 563 "surf/surfxml.l"
+#line 564 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `network_link' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_network_link):
-#line 564 "surf/surfxml.l"
+#line 565 "surf/surfxml.l"
FAIL("EOF in attribute list of `network_link' element.");
YY_BREAK
case 98:
/* rule 98 can match eol */
YY_RULE_SETUP
-#line 568 "surf/surfxml.l"
+#line 569 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_network_link();
case 99:
/* rule 99 can match eol */
YY_RULE_SETUP
-#line 577 "surf/surfxml.l"
+#line 578 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</network_link>' expected.",surf_parse_text);
YY_BREAK
case 100:
YY_RULE_SETUP
-#line 578 "surf/surfxml.l"
+#line 579 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</network_link>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_surfxml_network_link):
-#line 579 "surf/surfxml.l"
+#line 580 "surf/surfxml.l"
FAIL("Premature EOF: `</network_link>' expected.");
YY_BREAK
case 101:
/* rule 101 can match eol */
YY_RULE_SETUP
-#line 582 "surf/surfxml.l"
+#line 583 "surf/surfxml.l"
{
A_surfxml_route_src = NULL;
A_surfxml_route_dst = NULL;
case 102:
/* rule 102 can match eol */
YY_RULE_SETUP
-#line 593 "surf/surfxml.l"
+#line 594 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_route_src);
YY_BREAK
case 103:
/* rule 103 can match eol */
YY_RULE_SETUP
-#line 594 "surf/surfxml.l"
+#line 595 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_route_src);
YY_BREAK
case 104:
/* rule 104 can match eol */
YY_RULE_SETUP
-#line 596 "surf/surfxml.l"
+#line 597 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_route_dst);
YY_BREAK
case 105:
/* rule 105 can match eol */
YY_RULE_SETUP
-#line 597 "surf/surfxml.l"
+#line 598 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_route_dst);
YY_BREAK
case 106:
/* rule 106 can match eol */
YY_RULE_SETUP
-#line 599 "surf/surfxml.l"
+#line 600 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_src);
YY_BREAK
case 107:
/* rule 107 can match eol */
YY_RULE_SETUP
-#line 600 "surf/surfxml.l"
+#line 601 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_src);
YY_BREAK
case 108:
/* rule 108 can match eol */
YY_RULE_SETUP
-#line 602 "surf/surfxml.l"
+#line 603 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_dst);
YY_BREAK
case 109:
/* rule 109 can match eol */
YY_RULE_SETUP
-#line 603 "surf/surfxml.l"
+#line 604 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_dst);
YY_BREAK
case 110:
/* rule 110 can match eol */
YY_RULE_SETUP
-#line 605 "surf/surfxml.l"
+#line 606 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_src_with_other_recv);
YY_BREAK
case 111:
/* rule 111 can match eol */
YY_RULE_SETUP
-#line 606 "surf/surfxml.l"
+#line 607 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_src_with_other_recv);
YY_BREAK
case 112:
/* rule 112 can match eol */
YY_RULE_SETUP
-#line 608 "surf/surfxml.l"
+#line 609 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_dst_with_other_send);
YY_BREAK
case 113:
/* rule 113 can match eol */
YY_RULE_SETUP
-#line 609 "surf/surfxml.l"
+#line 610 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_dst_with_other_send);
YY_BREAK
case 114:
YY_RULE_SETUP
-#line 611 "surf/surfxml.l"
+#line 612 "surf/surfxml.l"
{
if (!A_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
if (!A_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
YY_BREAK
case 115:
YY_RULE_SETUP
-#line 616 "surf/surfxml.l"
+#line 617 "surf/surfxml.l"
{
if (!A_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
if (!A_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
YY_BREAK
case 116:
YY_RULE_SETUP
-#line 626 "surf/surfxml.l"
+#line 627 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of route element.", surf_parse_text[0]);
YY_BREAK
case 117:
YY_RULE_SETUP
-#line 627 "surf/surfxml.l"
+#line 628 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `route' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_route):
-#line 628 "surf/surfxml.l"
+#line 629 "surf/surfxml.l"
FAIL("EOF in attribute list of `route' element.");
YY_BREAK
case 118:
/* rule 118 can match eol */
YY_RULE_SETUP
-#line 632 "surf/surfxml.l"
+#line 633 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_route();
case 119:
/* rule 119 can match eol */
YY_RULE_SETUP
-#line 641 "surf/surfxml.l"
+#line 642 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</route>' expected.",surf_parse_text);
YY_BREAK
case 120:
YY_RULE_SETUP
-#line 642 "surf/surfxml.l"
+#line 643 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</route>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(S_surfxml_route):
case YY_STATE_EOF(S_surfxml_route_2):
case YY_STATE_EOF(E_surfxml_route):
-#line 643 "surf/surfxml.l"
+#line 644 "surf/surfxml.l"
FAIL("Premature EOF: `</route>' expected.");
YY_BREAK
case 121:
/* rule 121 can match eol */
YY_RULE_SETUP
-#line 646 "surf/surfxml.l"
+#line 647 "surf/surfxml.l"
{
A_surfxml_route_element_name = NULL;
ENTER(AL_surfxml_route_element);
case 122:
/* rule 122 can match eol */
YY_RULE_SETUP
-#line 652 "surf/surfxml.l"
+#line 653 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_route_element_name);
YY_BREAK
case 123:
/* rule 123 can match eol */
YY_RULE_SETUP
-#line 653 "surf/surfxml.l"
+#line 654 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_route_element_name);
YY_BREAK
case 124:
YY_RULE_SETUP
-#line 655 "surf/surfxml.l"
+#line 656 "surf/surfxml.l"
{
if (!A_surfxml_route_element_name) FAIL("Required attribute `name' not set for `route_element' element.");
LEAVE; STag_surfxml_route_element();surfxml_pcdata = NULL; ENTER(E_surfxml_route_element);
YY_BREAK
case 125:
YY_RULE_SETUP
-#line 659 "surf/surfxml.l"
+#line 660 "surf/surfxml.l"
{
if (!A_surfxml_route_element_name) FAIL("Required attribute `name' not set for `route_element' element.");
LEAVE; STag_surfxml_route_element(); surfxml_pcdata = NULL; ETag_surfxml_route_element();
YY_BREAK
case 126:
YY_RULE_SETUP
-#line 667 "surf/surfxml.l"
+#line 668 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of route_element element.", surf_parse_text[0]);
YY_BREAK
case 127:
YY_RULE_SETUP
-#line 668 "surf/surfxml.l"
+#line 669 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `route_element' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_route_element):
-#line 669 "surf/surfxml.l"
+#line 670 "surf/surfxml.l"
FAIL("EOF in attribute list of `route_element' element.");
YY_BREAK
case 128:
/* rule 128 can match eol */
YY_RULE_SETUP
-#line 673 "surf/surfxml.l"
+#line 674 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_route_element();
case 129:
/* rule 129 can match eol */
YY_RULE_SETUP
-#line 681 "surf/surfxml.l"
+#line 682 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</route_element>' expected.",surf_parse_text);
YY_BREAK
case 130:
YY_RULE_SETUP
-#line 682 "surf/surfxml.l"
+#line 683 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</route_element>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_surfxml_route_element):
-#line 683 "surf/surfxml.l"
+#line 684 "surf/surfxml.l"
FAIL("Premature EOF: `</route_element>' expected.");
YY_BREAK
case 131:
/* rule 131 can match eol */
YY_RULE_SETUP
-#line 686 "surf/surfxml.l"
+#line 687 "surf/surfxml.l"
{
A_surfxml_process_host = NULL;
A_surfxml_process_function = NULL;
case 132:
/* rule 132 can match eol */
YY_RULE_SETUP
-#line 695 "surf/surfxml.l"
+#line 696 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_process_host);
YY_BREAK
case 133:
/* rule 133 can match eol */
YY_RULE_SETUP
-#line 696 "surf/surfxml.l"
+#line 697 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_process_host);
YY_BREAK
case 134:
/* rule 134 can match eol */
YY_RULE_SETUP
-#line 698 "surf/surfxml.l"
+#line 699 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_process_function);
YY_BREAK
case 135:
/* rule 135 can match eol */
YY_RULE_SETUP
-#line 699 "surf/surfxml.l"
+#line 700 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_process_function);
YY_BREAK
case 136:
/* rule 136 can match eol */
YY_RULE_SETUP
-#line 701 "surf/surfxml.l"
+#line 702 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_process_start_time);
YY_BREAK
case 137:
/* rule 137 can match eol */
YY_RULE_SETUP
-#line 702 "surf/surfxml.l"
+#line 703 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_process_start_time);
YY_BREAK
case 138:
/* rule 138 can match eol */
YY_RULE_SETUP
-#line 704 "surf/surfxml.l"
+#line 705 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_process_kill_time);
YY_BREAK
case 139:
/* rule 139 can match eol */
YY_RULE_SETUP
-#line 705 "surf/surfxml.l"
+#line 706 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_process_kill_time);
YY_BREAK
case 140:
YY_RULE_SETUP
-#line 707 "surf/surfxml.l"
+#line 708 "surf/surfxml.l"
{
if (!A_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
if (!A_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
YY_BREAK
case 141:
YY_RULE_SETUP
-#line 712 "surf/surfxml.l"
+#line 713 "surf/surfxml.l"
{
if (!A_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
if (!A_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
YY_BREAK
case 142:
YY_RULE_SETUP
-#line 722 "surf/surfxml.l"
+#line 723 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of process element.", surf_parse_text[0]);
YY_BREAK
case 143:
YY_RULE_SETUP
-#line 723 "surf/surfxml.l"
+#line 724 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `process' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_process):
-#line 724 "surf/surfxml.l"
+#line 725 "surf/surfxml.l"
FAIL("EOF in attribute list of `process' element.");
YY_BREAK
case 144:
/* rule 144 can match eol */
YY_RULE_SETUP
-#line 728 "surf/surfxml.l"
+#line 729 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_process();
case 145:
/* rule 145 can match eol */
YY_RULE_SETUP
-#line 737 "surf/surfxml.l"
+#line 738 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</process>' expected.",surf_parse_text);
YY_BREAK
case 146:
YY_RULE_SETUP
-#line 738 "surf/surfxml.l"
+#line 739 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</process>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(S_surfxml_process):
case YY_STATE_EOF(E_surfxml_process):
case YY_STATE_EOF(S_surfxml_process_2):
-#line 739 "surf/surfxml.l"
+#line 740 "surf/surfxml.l"
FAIL("Premature EOF: `</process>' expected.");
YY_BREAK
case 147:
/* rule 147 can match eol */
YY_RULE_SETUP
-#line 742 "surf/surfxml.l"
+#line 743 "surf/surfxml.l"
{
A_surfxml_argument_value = NULL;
ENTER(AL_surfxml_argument);
case 148:
/* rule 148 can match eol */
YY_RULE_SETUP
-#line 748 "surf/surfxml.l"
+#line 749 "surf/surfxml.l"
ENTER(VALUE1); BUFFERSET(A_surfxml_argument_value);
YY_BREAK
case 149:
/* rule 149 can match eol */
YY_RULE_SETUP
-#line 749 "surf/surfxml.l"
+#line 750 "surf/surfxml.l"
ENTER(VALUE2); BUFFERSET(A_surfxml_argument_value);
YY_BREAK
case 150:
YY_RULE_SETUP
-#line 751 "surf/surfxml.l"
+#line 752 "surf/surfxml.l"
{
if (!A_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
LEAVE; STag_surfxml_argument();surfxml_pcdata = NULL; ENTER(E_surfxml_argument);
YY_BREAK
case 151:
YY_RULE_SETUP
-#line 755 "surf/surfxml.l"
+#line 756 "surf/surfxml.l"
{
if (!A_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
LEAVE; STag_surfxml_argument(); surfxml_pcdata = NULL; ETag_surfxml_argument();
YY_BREAK
case 152:
YY_RULE_SETUP
-#line 763 "surf/surfxml.l"
+#line 764 "surf/surfxml.l"
FAIL("Unexpected character `%c' in attribute list of argument element.", surf_parse_text[0]);
YY_BREAK
case 153:
YY_RULE_SETUP
-#line 764 "surf/surfxml.l"
+#line 765 "surf/surfxml.l"
FAIL("Bad attribute `%s' in `argument' element start tag.",surf_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_surfxml_argument):
-#line 765 "surf/surfxml.l"
+#line 766 "surf/surfxml.l"
FAIL("EOF in attribute list of `argument' element.");
YY_BREAK
case 154:
/* rule 154 can match eol */
YY_RULE_SETUP
-#line 769 "surf/surfxml.l"
+#line 770 "surf/surfxml.l"
{
LEAVE;
ETag_surfxml_argument();
case 155:
/* rule 155 can match eol */
YY_RULE_SETUP
-#line 777 "surf/surfxml.l"
+#line 778 "surf/surfxml.l"
FAIL("Unexpected end-tag `%s': `</argument>' expected.",surf_parse_text);
YY_BREAK
case 156:
YY_RULE_SETUP
-#line 778 "surf/surfxml.l"
+#line 779 "surf/surfxml.l"
FAIL("Unexpected character `%c': `</argument>' expected.",surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_surfxml_argument):
-#line 779 "surf/surfxml.l"
+#line 780 "surf/surfxml.l"
FAIL("Premature EOF: `</argument>' expected.");
YY_BREAK
case 157:
YY_RULE_SETUP
-#line 785 "surf/surfxml.l"
+#line 786 "surf/surfxml.l"
{SET(PROLOG); yyless(0); CLEANUP; return -1;}
YY_BREAK
case YY_STATE_EOF(EPILOG):
-#line 786 "surf/surfxml.l"
+#line 787 "surf/surfxml.l"
SUCCEED;
YY_BREAK
/* Non-defined standard entities... */
case 158:
YY_RULE_SETUP
-#line 793 "surf/surfxml.l"
+#line 794 "surf/surfxml.l"
BUFFERPUTC('&');
YY_BREAK
case 159:
YY_RULE_SETUP
-#line 794 "surf/surfxml.l"
+#line 795 "surf/surfxml.l"
BUFFERPUTC('<');
YY_BREAK
case 160:
YY_RULE_SETUP
-#line 795 "surf/surfxml.l"
+#line 796 "surf/surfxml.l"
BUFFERPUTC('>');
YY_BREAK
case 161:
YY_RULE_SETUP
-#line 796 "surf/surfxml.l"
+#line 797 "surf/surfxml.l"
BUFFERPUTC('\'');
YY_BREAK
case 162:
YY_RULE_SETUP
-#line 797 "surf/surfxml.l"
+#line 798 "surf/surfxml.l"
BUFFERPUTC('"');
YY_BREAK
/* Character entities. */
case 163:
YY_RULE_SETUP
-#line 800 "surf/surfxml.l"
+#line 801 "surf/surfxml.l"
BUFFERPUTC((unsigned char)atoi(surf_parse_text+2));
YY_BREAK
case 164:
YY_RULE_SETUP
-#line 801 "surf/surfxml.l"
+#line 802 "surf/surfxml.l"
BUFFERPUTC((unsigned char)strtol(surf_parse_text+3,NULL,16));
YY_BREAK
case 165:
/* rule 165 can match eol */
-#line 806 "surf/surfxml.l"
+#line 807 "surf/surfxml.l"
case 166:
/* rule 166 can match eol */
-#line 807 "surf/surfxml.l"
+#line 808 "surf/surfxml.l"
case 167:
/* rule 167 can match eol */
-#line 808 "surf/surfxml.l"
+#line 809 "surf/surfxml.l"
case 168:
/* rule 168 can match eol */
YY_RULE_SETUP
-#line 808 "surf/surfxml.l"
+#line 809 "surf/surfxml.l"
BUFFERPUTC('\n');
YY_BREAK
case 169:
YY_RULE_SETUP
-#line 812 "surf/surfxml.l"
+#line 813 "surf/surfxml.l"
ENTER(CDATA);
YY_BREAK
case 170:
YY_RULE_SETUP
-#line 813 "surf/surfxml.l"
+#line 814 "surf/surfxml.l"
FAIL("Unexpected `]""]>' in character data.");
YY_BREAK
case 171:
YY_RULE_SETUP
-#line 817 "surf/surfxml.l"
+#line 818 "surf/surfxml.l"
BUFFERDONE; LEAVE;
YY_BREAK
case YY_STATE_EOF(VALUE1):
-#line 818 "surf/surfxml.l"
+#line 819 "surf/surfxml.l"
FAIL("EOF in literal (\"'\" expected).");
YY_BREAK
case 172:
YY_RULE_SETUP
-#line 822 "surf/surfxml.l"
+#line 823 "surf/surfxml.l"
BUFFERDONE; LEAVE;
YY_BREAK
case YY_STATE_EOF(VALUE2):
-#line 823 "surf/surfxml.l"
+#line 824 "surf/surfxml.l"
FAIL("EOF in literal (`\"' expected).");
YY_BREAK
case 173:
/* rule 173 can match eol */
YY_RULE_SETUP
-#line 827 "surf/surfxml.l"
+#line 828 "surf/surfxml.l"
BUFFERPUTC(surf_parse_text[0]);
YY_BREAK
case 174:
YY_RULE_SETUP
-#line 828 "surf/surfxml.l"
+#line 829 "surf/surfxml.l"
FAIL("Spurious `%c' in character data.",surf_parse_text[0]);
YY_BREAK
case 175:
YY_RULE_SETUP
-#line 832 "surf/surfxml.l"
+#line 833 "surf/surfxml.l"
LEAVE;
YY_BREAK
/* "]""]" BUFFERPUTC(surf_parse_text[0]); BUFFERPUTC(surf_parse_text[1]); */
case 176:
YY_RULE_SETUP
-#line 834 "surf/surfxml.l"
+#line 835 "surf/surfxml.l"
BUFFERPUTC(surf_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(CDATA):
-#line 835 "surf/surfxml.l"
+#line 836 "surf/surfxml.l"
FAIL("EOF in CDATA section.");
YY_BREAK
case 177:
/* rule 177 can match eol */
YY_RULE_SETUP
-#line 842 "surf/surfxml.l"
+#line 843 "surf/surfxml.l"
FAIL("Syntax error on character `%c'.", surf_parse_text[0]);
YY_BREAK
case 178:
YY_RULE_SETUP
-#line 845 "surf/surfxml.l"
+#line 846 "surf/surfxml.l"
ECHO;
YY_BREAK
-#line 3653 "surf/surfxml.c"
+#line 3654 "surf/surfxml.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(ROOT_surfxml_platform_description):
case YY_STATE_EOF(S_surfxml_platform_description_1):
#undef YY_DECL_IS_OURS
#undef YY_DECL
#endif
-#line 845 "surf/surfxml.l"
+#line 846 "surf/surfxml.l"
#define YY_RESTORE_YY_MORE_OFFSET
char *xbt_graph_parse_text;
#line 1 "xbt/graphxml.l"
-/* Validating XML processor for graphxml.dtd.
- * Generated 2006/04/22 01:36:55.
+/* Validating XML processor for xbt/graphxml.dtd.
+ * Generated 2006/07/18 21:02:16.
*
* This program was generated with the FleXML XML processor generator.
- * FleXML is Copyright © 1999-2005 Kristoffer Rose. All rights reserved.
- * (Id: flexml.pl,v 1.48 2006/03/21 13:09:12 mquinson Exp).
+ * FleXML is Copyright (C) 1999-2005 Kristoffer Rose. All rights reserved.
+ * FleXML is Copyright (C) 2003-2006 Martin Quinson. All rights reserved.
+ * (Id: flexml.pl,v 1.53 2006/07/18 12:12:06 mquinson Exp).
*
* There are two, intertwined parts to this program, part A and part B.
*
* ------
*
* Some parts, here collectively called "Part A", are found in the
- * FleXML package. They are Copyright © 1999-2005 Kristoffer Rose.
- * All rights reserved.
+ * FleXML package. They are Copyright (C) 1999-2005 Kristoffer Rose
+ * and Copyright (C) 2003-2006 Martin Quinson. All rights reserved.
*
* You can redistribute, use, perform, display and/or modify "Part A"
* provided the following two conditions hold:
* by the author of or contributors to FleXML.
*
*/
-#line 48 "xbt/graphxml.l"
+#line 49 "xbt/graphxml.l"
/* Version strings. */
const char rcs_graphxml_flexml_skeleton[] =
- "$" "Id: skel,v 1.28 2006/03/21 12:04:13 legranda Exp $";
+ "$" "Id: skel,v 1.31 2006/07/18 18:21:13 mquinson Exp $";
const char rcs_graphxml_flexml[] =
- "$" "Id: flexml.pl,v 1.48 2006/03/21 13:09:12 mquinson Exp $";
+ "$" "Id: flexml.pl,v 1.53 2006/07/18 12:12:06 mquinson Exp $";
/* ANSI headers. */
#include <unistd.h>
static char bufferstack[FLEXML_BUFFERSTACKSIZE];
static char* limit = bufferstack + FLEXML_BUFFERSTACKSIZE;
typedef struct BufferLast_s {
- struct BufferLast_s *old; char* saved; char new1[1];
+ struct BufferLast_s *old; const char* saved; char new1[1];
} BufferLast;
#ifdef FLEXML_HasMixed
static BufferLast* last = (BufferLast*)0;
}
#ifdef FLEXML_HasMixed
-static void pushbuffer(char* p)
+static void pushbuffer(const char* p)
{
BufferLast* l = (BufferLast*)next;
assert(next < limit);
last = l;
}
-static char* popbuffer(void)
+static const char* popbuffer(void)
{
BufferLast* l = last;
assert(last != (BufferLast*)0);
-#line 215 "xbt/graphxml.l"
+#line 216 "xbt/graphxml.l"
/* State names. */
const char* *graphxml_statenames=NULL;
-#line 1194 "xbt/graphxml.c"
+#line 1195 "xbt/graphxml.c"
#define INITIAL 0
#define PROLOG 1
register char *yy_cp, *yy_bp;
register int yy_act;
-#line 219 "xbt/graphxml.l"
+#line 220 "xbt/graphxml.l"
/* Bypass Flex's default INITIAL state and begin by parsing the XML prolog. */
/* COMMENTS and PIs: handled uniformly for efficiency. */
-#line 1410 "xbt/graphxml.c"
+#line 1411 "xbt/graphxml.c"
if ( (yy_init) )
{
case 1:
YY_RULE_SETUP
-#line 254 "xbt/graphxml.l"
+#line 255 "xbt/graphxml.l"
ENTER(INCOMMENT);
YY_BREAK
case 2:
YY_RULE_SETUP
-#line 255 "xbt/graphxml.l"
+#line 256 "xbt/graphxml.l"
ENTER(INPI);
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 258 "xbt/graphxml.l"
+#line 259 "xbt/graphxml.l"
LEAVE;
YY_BREAK
case 4:
-#line 260 "xbt/graphxml.l"
-case 5:
#line 261 "xbt/graphxml.l"
+case 5:
+#line 262 "xbt/graphxml.l"
case 6:
/* rule 6 can match eol */
YY_RULE_SETUP
-#line 261 "xbt/graphxml.l"
+#line 262 "xbt/graphxml.l"
SKIP;
YY_BREAK
case YY_STATE_EOF(INCOMMENT):
-#line 262 "xbt/graphxml.l"
+#line 263 "xbt/graphxml.l"
FAIL("EOF in comment.");
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 265 "xbt/graphxml.l"
+#line 266 "xbt/graphxml.l"
LEAVE;
YY_BREAK
case 8:
-#line 267 "xbt/graphxml.l"
+#line 268 "xbt/graphxml.l"
case 9:
/* rule 9 can match eol */
YY_RULE_SETUP
-#line 267 "xbt/graphxml.l"
+#line 268 "xbt/graphxml.l"
SKIP;
YY_BREAK
case YY_STATE_EOF(INPI):
-#line 268 "xbt/graphxml.l"
+#line 269 "xbt/graphxml.l"
FAIL("EOF in PI (processing instruction).");
YY_BREAK
case 10:
/* rule 10 can match eol */
YY_RULE_SETUP
-#line 273 "xbt/graphxml.l"
+#line 274 "xbt/graphxml.l"
SKIP;
YY_BREAK
/* PROLOG: determine root element and process it. */
case 11:
/* rule 11 can match eol */
YY_RULE_SETUP
-#line 278 "xbt/graphxml.l"
+#line 279 "xbt/graphxml.l"
SET(DOCTYPE);
YY_BREAK
case 12:
/* rule 12 can match eol */
YY_RULE_SETUP
-#line 279 "xbt/graphxml.l"
+#line 280 "xbt/graphxml.l"
FAIL("Bad declaration %s.",xbt_graph_parse_text);
YY_BREAK
case 13:
/* rule 13 can match eol */
YY_RULE_SETUP
-#line 283 "xbt/graphxml.l"
+#line 284 "xbt/graphxml.l"
SET(ROOT_graphxml_edge);
YY_BREAK
case 14:
/* rule 14 can match eol */
YY_RULE_SETUP
-#line 284 "xbt/graphxml.l"
+#line 285 "xbt/graphxml.l"
SET(ROOT_graphxml_node);
YY_BREAK
case 15:
/* rule 15 can match eol */
YY_RULE_SETUP
-#line 285 "xbt/graphxml.l"
+#line 286 "xbt/graphxml.l"
SET(ROOT_graphxml_graph);
YY_BREAK
case 16:
/* rule 16 can match eol */
YY_RULE_SETUP
-#line 286 "xbt/graphxml.l"
+#line 287 "xbt/graphxml.l"
FAIL("Bad declaration %s.",xbt_graph_parse_text);
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 287 "xbt/graphxml.l"
+#line 288 "xbt/graphxml.l"
FAIL("Unexpected character `%c' in prolog.", xbt_graph_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(PROLOG):
case YY_STATE_EOF(DOCTYPE):
-#line 288 "xbt/graphxml.l"
+#line 289 "xbt/graphxml.l"
FAIL("EOF in prolog.");
YY_BREAK
case 18:
/* rule 18 can match eol */
YY_RULE_SETUP
-#line 298 "xbt/graphxml.l"
+#line 299 "xbt/graphxml.l"
{
A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_true;
ENTER(AL_graphxml_graph);
case 19:
/* rule 19 can match eol */
-#line 305 "xbt/graphxml.l"
+#line 306 "xbt/graphxml.l"
case 20:
/* rule 20 can match eol */
YY_RULE_SETUP
-#line 305 "xbt/graphxml.l"
+#line 306 "xbt/graphxml.l"
A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_true;
YY_BREAK
case 21:
/* rule 21 can match eol */
-#line 307 "xbt/graphxml.l"
+#line 308 "xbt/graphxml.l"
case 22:
/* rule 22 can match eol */
YY_RULE_SETUP
-#line 307 "xbt/graphxml.l"
+#line 308 "xbt/graphxml.l"
A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_false;
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 309 "xbt/graphxml.l"
+#line 310 "xbt/graphxml.l"
{
LEAVE; STag_graphxml_graph();graphxml_pcdata = NULL; ENTER(S_graphxml_graph);
}
YY_BREAK
case 24:
YY_RULE_SETUP
-#line 312 "xbt/graphxml.l"
+#line 313 "xbt/graphxml.l"
{
LEAVE; STag_graphxml_graph(); graphxml_pcdata = NULL; ETag_graphxml_graph();
switch (YY_START) {
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 318 "xbt/graphxml.l"
+#line 319 "xbt/graphxml.l"
FAIL("Unexpected character `%c' in attribute list of graph element.", xbt_graph_parse_text[0]);
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 319 "xbt/graphxml.l"
+#line 320 "xbt/graphxml.l"
FAIL("Bad attribute `%s' in `graph' element start tag.",xbt_graph_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_graphxml_graph):
-#line 320 "xbt/graphxml.l"
+#line 321 "xbt/graphxml.l"
FAIL("EOF in attribute list of `graph' element.");
YY_BREAK
case 27:
/* rule 27 can match eol */
YY_RULE_SETUP
-#line 324 "xbt/graphxml.l"
+#line 325 "xbt/graphxml.l"
{
LEAVE;
ETag_graphxml_graph();
case 28:
/* rule 28 can match eol */
YY_RULE_SETUP
-#line 331 "xbt/graphxml.l"
+#line 332 "xbt/graphxml.l"
FAIL("Unexpected end-tag `%s': `</graph>' expected.",xbt_graph_parse_text);
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 332 "xbt/graphxml.l"
+#line 333 "xbt/graphxml.l"
FAIL("Unexpected character `%c': `</graph>' expected.",xbt_graph_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(S_graphxml_graph_1):
case YY_STATE_EOF(S_graphxml_graph_3):
case YY_STATE_EOF(S_graphxml_graph_5):
case YY_STATE_EOF(S_graphxml_graph):
-#line 333 "xbt/graphxml.l"
+#line 334 "xbt/graphxml.l"
FAIL("Premature EOF: `</graph>' expected.");
YY_BREAK
case 30:
/* rule 30 can match eol */
YY_RULE_SETUP
-#line 343 "xbt/graphxml.l"
+#line 344 "xbt/graphxml.l"
{
A_graphxml_node_label = NULL;
A_graphxml_node_name = NULL;
case 31:
/* rule 31 can match eol */
YY_RULE_SETUP
-#line 353 "xbt/graphxml.l"
+#line 354 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_node_label);
YY_BREAK
case 32:
/* rule 32 can match eol */
YY_RULE_SETUP
-#line 354 "xbt/graphxml.l"
+#line 355 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_node_label);
YY_BREAK
case 33:
/* rule 33 can match eol */
YY_RULE_SETUP
-#line 356 "xbt/graphxml.l"
+#line 357 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_node_name);
YY_BREAK
case 34:
/* rule 34 can match eol */
YY_RULE_SETUP
-#line 357 "xbt/graphxml.l"
+#line 358 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_node_name);
YY_BREAK
case 35:
/* rule 35 can match eol */
YY_RULE_SETUP
-#line 359 "xbt/graphxml.l"
+#line 360 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_node_data);
YY_BREAK
case 36:
/* rule 36 can match eol */
YY_RULE_SETUP
-#line 360 "xbt/graphxml.l"
+#line 361 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_node_data);
YY_BREAK
case 37:
/* rule 37 can match eol */
YY_RULE_SETUP
-#line 362 "xbt/graphxml.l"
+#line 363 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_node_position_x);
YY_BREAK
case 38:
/* rule 38 can match eol */
YY_RULE_SETUP
-#line 363 "xbt/graphxml.l"
+#line 364 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_node_position_x);
YY_BREAK
case 39:
/* rule 39 can match eol */
YY_RULE_SETUP
-#line 365 "xbt/graphxml.l"
+#line 366 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_node_position_y);
YY_BREAK
case 40:
/* rule 40 can match eol */
YY_RULE_SETUP
-#line 366 "xbt/graphxml.l"
+#line 367 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_node_position_y);
YY_BREAK
case 41:
YY_RULE_SETUP
-#line 368 "xbt/graphxml.l"
+#line 369 "xbt/graphxml.l"
{
if (!A_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element.");
LEAVE; STag_graphxml_node();graphxml_pcdata = NULL; ENTER(E_graphxml_node);
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 372 "xbt/graphxml.l"
+#line 373 "xbt/graphxml.l"
{
if (!A_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element.");
LEAVE; STag_graphxml_node(); graphxml_pcdata = NULL; ETag_graphxml_node();
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 380 "xbt/graphxml.l"
+#line 381 "xbt/graphxml.l"
FAIL("Unexpected character `%c' in attribute list of node element.", xbt_graph_parse_text[0]);
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 381 "xbt/graphxml.l"
+#line 382 "xbt/graphxml.l"
FAIL("Bad attribute `%s' in `node' element start tag.",xbt_graph_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_graphxml_node):
-#line 382 "xbt/graphxml.l"
+#line 383 "xbt/graphxml.l"
FAIL("EOF in attribute list of `node' element.");
YY_BREAK
case 45:
/* rule 45 can match eol */
YY_RULE_SETUP
-#line 386 "xbt/graphxml.l"
+#line 387 "xbt/graphxml.l"
{
LEAVE;
ETag_graphxml_node();
case 46:
/* rule 46 can match eol */
YY_RULE_SETUP
-#line 394 "xbt/graphxml.l"
+#line 395 "xbt/graphxml.l"
FAIL("Unexpected end-tag `%s': `</node>' expected.",xbt_graph_parse_text);
YY_BREAK
case 47:
YY_RULE_SETUP
-#line 395 "xbt/graphxml.l"
+#line 396 "xbt/graphxml.l"
FAIL("Unexpected character `%c': `</node>' expected.",xbt_graph_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_graphxml_node):
-#line 396 "xbt/graphxml.l"
+#line 397 "xbt/graphxml.l"
FAIL("Premature EOF: `</node>' expected.");
YY_BREAK
case 48:
/* rule 48 can match eol */
YY_RULE_SETUP
-#line 407 "xbt/graphxml.l"
+#line 408 "xbt/graphxml.l"
{
A_graphxml_edge_label = NULL;
A_graphxml_edge_name = NULL;
case 49:
/* rule 49 can match eol */
YY_RULE_SETUP
-#line 418 "xbt/graphxml.l"
+#line 419 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_edge_label);
YY_BREAK
case 50:
/* rule 50 can match eol */
YY_RULE_SETUP
-#line 419 "xbt/graphxml.l"
+#line 420 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_edge_label);
YY_BREAK
case 51:
/* rule 51 can match eol */
YY_RULE_SETUP
-#line 421 "xbt/graphxml.l"
+#line 422 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_edge_name);
YY_BREAK
case 52:
/* rule 52 can match eol */
YY_RULE_SETUP
-#line 422 "xbt/graphxml.l"
+#line 423 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_edge_name);
YY_BREAK
case 53:
/* rule 53 can match eol */
YY_RULE_SETUP
-#line 424 "xbt/graphxml.l"
+#line 425 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_edge_source);
YY_BREAK
case 54:
/* rule 54 can match eol */
YY_RULE_SETUP
-#line 425 "xbt/graphxml.l"
+#line 426 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_edge_source);
YY_BREAK
case 55:
/* rule 55 can match eol */
YY_RULE_SETUP
-#line 427 "xbt/graphxml.l"
+#line 428 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_edge_target);
YY_BREAK
case 56:
/* rule 56 can match eol */
YY_RULE_SETUP
-#line 428 "xbt/graphxml.l"
+#line 429 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_edge_target);
YY_BREAK
case 57:
/* rule 57 can match eol */
YY_RULE_SETUP
-#line 430 "xbt/graphxml.l"
+#line 431 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_edge_length);
YY_BREAK
case 58:
/* rule 58 can match eol */
YY_RULE_SETUP
-#line 431 "xbt/graphxml.l"
+#line 432 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_edge_length);
YY_BREAK
case 59:
/* rule 59 can match eol */
YY_RULE_SETUP
-#line 433 "xbt/graphxml.l"
+#line 434 "xbt/graphxml.l"
ENTER(VALUE1); BUFFERSET(A_graphxml_edge_data);
YY_BREAK
case 60:
/* rule 60 can match eol */
YY_RULE_SETUP
-#line 434 "xbt/graphxml.l"
+#line 435 "xbt/graphxml.l"
ENTER(VALUE2); BUFFERSET(A_graphxml_edge_data);
YY_BREAK
case 61:
YY_RULE_SETUP
-#line 436 "xbt/graphxml.l"
+#line 437 "xbt/graphxml.l"
{
if (!A_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element.");
if (!A_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element.");
YY_BREAK
case 62:
YY_RULE_SETUP
-#line 441 "xbt/graphxml.l"
+#line 442 "xbt/graphxml.l"
{
if (!A_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element.");
if (!A_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element.");
YY_BREAK
case 63:
YY_RULE_SETUP
-#line 450 "xbt/graphxml.l"
+#line 451 "xbt/graphxml.l"
FAIL("Unexpected character `%c' in attribute list of edge element.", xbt_graph_parse_text[0]);
YY_BREAK
case 64:
YY_RULE_SETUP
-#line 451 "xbt/graphxml.l"
+#line 452 "xbt/graphxml.l"
FAIL("Bad attribute `%s' in `edge' element start tag.",xbt_graph_parse_text);
YY_BREAK
case YY_STATE_EOF(AL_graphxml_edge):
-#line 452 "xbt/graphxml.l"
+#line 453 "xbt/graphxml.l"
FAIL("EOF in attribute list of `edge' element.");
YY_BREAK
case 65:
/* rule 65 can match eol */
YY_RULE_SETUP
-#line 456 "xbt/graphxml.l"
+#line 457 "xbt/graphxml.l"
{
LEAVE;
ETag_graphxml_edge();
case 66:
/* rule 66 can match eol */
YY_RULE_SETUP
-#line 464 "xbt/graphxml.l"
+#line 465 "xbt/graphxml.l"
FAIL("Unexpected end-tag `%s': `</edge>' expected.",xbt_graph_parse_text);
YY_BREAK
case 67:
YY_RULE_SETUP
-#line 465 "xbt/graphxml.l"
+#line 466 "xbt/graphxml.l"
FAIL("Unexpected character `%c': `</edge>' expected.",xbt_graph_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(E_graphxml_edge):
-#line 466 "xbt/graphxml.l"
+#line 467 "xbt/graphxml.l"
FAIL("Premature EOF: `</edge>' expected.");
YY_BREAK
case 68:
YY_RULE_SETUP
-#line 472 "xbt/graphxml.l"
+#line 473 "xbt/graphxml.l"
{SET(PROLOG); yyless(0); CLEANUP; return -1;}
YY_BREAK
case YY_STATE_EOF(EPILOG):
-#line 473 "xbt/graphxml.l"
+#line 474 "xbt/graphxml.l"
SUCCEED;
YY_BREAK
/* Non-defined standard entities... */
case 69:
YY_RULE_SETUP
-#line 480 "xbt/graphxml.l"
+#line 481 "xbt/graphxml.l"
BUFFERPUTC('&');
YY_BREAK
case 70:
YY_RULE_SETUP
-#line 481 "xbt/graphxml.l"
+#line 482 "xbt/graphxml.l"
BUFFERPUTC('<');
YY_BREAK
case 71:
YY_RULE_SETUP
-#line 482 "xbt/graphxml.l"
+#line 483 "xbt/graphxml.l"
BUFFERPUTC('>');
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 483 "xbt/graphxml.l"
+#line 484 "xbt/graphxml.l"
BUFFERPUTC('\'');
YY_BREAK
case 73:
YY_RULE_SETUP
-#line 484 "xbt/graphxml.l"
+#line 485 "xbt/graphxml.l"
BUFFERPUTC('"');
YY_BREAK
/* Character entities. */
case 74:
YY_RULE_SETUP
-#line 487 "xbt/graphxml.l"
+#line 488 "xbt/graphxml.l"
BUFFERPUTC((unsigned char)atoi(xbt_graph_parse_text+2));
YY_BREAK
case 75:
YY_RULE_SETUP
-#line 488 "xbt/graphxml.l"
+#line 489 "xbt/graphxml.l"
BUFFERPUTC((unsigned char)strtol(xbt_graph_parse_text+3,NULL,16));
YY_BREAK
case 76:
/* rule 76 can match eol */
-#line 493 "xbt/graphxml.l"
+#line 494 "xbt/graphxml.l"
case 77:
/* rule 77 can match eol */
-#line 494 "xbt/graphxml.l"
+#line 495 "xbt/graphxml.l"
case 78:
/* rule 78 can match eol */
-#line 495 "xbt/graphxml.l"
+#line 496 "xbt/graphxml.l"
case 79:
/* rule 79 can match eol */
YY_RULE_SETUP
-#line 495 "xbt/graphxml.l"
+#line 496 "xbt/graphxml.l"
BUFFERPUTC('\n');
YY_BREAK
case 80:
YY_RULE_SETUP
-#line 499 "xbt/graphxml.l"
+#line 500 "xbt/graphxml.l"
ENTER(CDATA);
YY_BREAK
case 81:
YY_RULE_SETUP
-#line 500 "xbt/graphxml.l"
+#line 501 "xbt/graphxml.l"
FAIL("Unexpected `]""]>' in character data.");
YY_BREAK
case 82:
YY_RULE_SETUP
-#line 504 "xbt/graphxml.l"
+#line 505 "xbt/graphxml.l"
BUFFERDONE; LEAVE;
YY_BREAK
case YY_STATE_EOF(VALUE1):
-#line 505 "xbt/graphxml.l"
+#line 506 "xbt/graphxml.l"
FAIL("EOF in literal (\"'\" expected).");
YY_BREAK
case 83:
YY_RULE_SETUP
-#line 509 "xbt/graphxml.l"
+#line 510 "xbt/graphxml.l"
BUFFERDONE; LEAVE;
YY_BREAK
case YY_STATE_EOF(VALUE2):
-#line 510 "xbt/graphxml.l"
+#line 511 "xbt/graphxml.l"
FAIL("EOF in literal (`\"' expected).");
YY_BREAK
case 84:
/* rule 84 can match eol */
YY_RULE_SETUP
-#line 514 "xbt/graphxml.l"
+#line 515 "xbt/graphxml.l"
BUFFERPUTC(xbt_graph_parse_text[0]);
YY_BREAK
case 85:
YY_RULE_SETUP
-#line 515 "xbt/graphxml.l"
+#line 516 "xbt/graphxml.l"
FAIL("Spurious `%c' in character data.",xbt_graph_parse_text[0]);
YY_BREAK
case 86:
YY_RULE_SETUP
-#line 519 "xbt/graphxml.l"
+#line 520 "xbt/graphxml.l"
LEAVE;
YY_BREAK
/* "]""]" BUFFERPUTC(xbt_graph_parse_text[0]); BUFFERPUTC(xbt_graph_parse_text[1]); */
case 87:
YY_RULE_SETUP
-#line 521 "xbt/graphxml.l"
+#line 522 "xbt/graphxml.l"
BUFFERPUTC(xbt_graph_parse_text[0]);
YY_BREAK
case YY_STATE_EOF(CDATA):
-#line 522 "xbt/graphxml.l"
+#line 523 "xbt/graphxml.l"
FAIL("EOF in CDATA section.");
YY_BREAK
case 88:
/* rule 88 can match eol */
YY_RULE_SETUP
-#line 529 "xbt/graphxml.l"
+#line 530 "xbt/graphxml.l"
FAIL("Syntax error on character `%c'.", xbt_graph_parse_text[0]);
YY_BREAK
case 89:
YY_RULE_SETUP
-#line 532 "xbt/graphxml.l"
+#line 533 "xbt/graphxml.l"
ECHO;
YY_BREAK
-#line 2164 "xbt/graphxml.c"
+#line 2165 "xbt/graphxml.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(ROOT_graphxml_graph):
case YY_STATE_EOF(S_graphxml_graph_2):
#undef YY_DECL_IS_OURS
#undef YY_DECL
#endif
-#line 532 "xbt/graphxml.l"
+#line 533 "xbt/graphxml.l"