X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/406f54970c00ca178fa918763d943027bd09e3ba..32ac22172e63ef2bfeb0f82fbf11b5ccd920f2cb:/src/xbt/graphxml.c diff --git a/src/xbt/graphxml.c b/src/xbt/graphxml.c index 59d9895d55..7c6579dd5b 100644 --- a/src/xbt/graphxml.c +++ b/src/xbt/graphxml.c @@ -474,8 +474,8 @@ static yyconst flex_int16_t yy_accept[564] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 13, 0, 0, 14, - 0, 15, 0 + 0, 0, 0, 0, 0, 0, 15, 0, 0, 13, + 0, 14, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -1057,8 +1057,8 @@ char *xbt_graph_parse_text; * * This program was generated with the FleXML XML processor generator. * 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.62 2007/10/11 10:00:14 mquinson Exp). + * FleXML is Copyright (C) 2003-2013 Martin Quinson. All rights reserved. + * (1.9.6). * * There are two, intertwined parts to this program, part A and part B. * @@ -1067,7 +1067,7 @@ char *xbt_graph_parse_text; * * Some parts, here collectively called "Part A", are found in the * FleXML package. They are Copyright (C) 1999-2005 Kristoffer Rose - * and Copyright (C) 2003-2006 Martin Quinson. All rights reserved. + * and Copyright (C) 2003-2013 Martin Quinson. All rights reserved. * * You can redistribute, use, perform, display and/or modify "Part A" * provided the following two conditions hold: @@ -1100,10 +1100,7 @@ char *xbt_graph_parse_text; */ /* Version strings. */ -const char rcs_graphxml_flexml_skeleton[] = - "$" "Id: skel,v 1.40 2007/10/11 09:57:24 mquinson Exp $"; -const char rcs_graphxml_flexml[] = - "$" "Id: flexml.pl,v 1.62 2007/10/11 10:00:14 mquinson Exp $"; +const char graphxml_flexml_version[] = "1.9.6"; /* ANSI headers. */ #include /* for realloc() -- needed here when using flex 2.5.4 */ @@ -1138,30 +1135,42 @@ const char rcs_graphxml_flexml[] = int graphxml_pcdata_ix; extern char *graphxml_bufferstack; #define graphxml_pcdata (graphxml_bufferstack + graphxml_pcdata_ix) -AT_graphxml_node_name AX_graphxml_node_name; -#define A_graphxml_node_name (graphxml_bufferstack + AX_graphxml_node_name) AT_graphxml_edge_source AX_graphxml_edge_source; #define A_graphxml_edge_source (graphxml_bufferstack + AX_graphxml_edge_source) -AT_graphxml_node_position_y AX_graphxml_node_position_y; -#define A_graphxml_node_position_y (graphxml_bufferstack + AX_graphxml_node_position_y) -AT_graphxml_node_position_x AX_graphxml_node_position_x; -#define A_graphxml_node_position_x (graphxml_bufferstack + AX_graphxml_node_position_x) -AT_graphxml_edge_data AX_graphxml_edge_data; -#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) +short int graphxml_edge_source_isset; AT_graphxml_edge_target AX_graphxml_edge_target; #define A_graphxml_edge_target (graphxml_bufferstack + AX_graphxml_edge_target) -AT_graphxml_graph_isDirected AX_graphxml_graph_isDirected; -#define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected -AT_graphxml_node_label AX_graphxml_node_label; -#define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label) +short int graphxml_edge_target_isset; +AT_graphxml_edge_name AX_graphxml_edge_name; +#define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name) +short int graphxml_edge_name_isset; +AT_graphxml_node_position___y AX_graphxml_node_position___y; +#define A_graphxml_node_position___y (graphxml_bufferstack + AX_graphxml_node_position___y) +short int graphxml_node_position___y_isset; AT_graphxml_node_data AX_graphxml_node_data; #define A_graphxml_node_data (graphxml_bufferstack + AX_graphxml_node_data) -AT_graphxml_edge_label AX_graphxml_edge_label; -#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) +short int graphxml_node_data_isset; AT_graphxml_edge_length AX_graphxml_edge_length; #define A_graphxml_edge_length (graphxml_bufferstack + AX_graphxml_edge_length) -AT_graphxml_edge_name AX_graphxml_edge_name; -#define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name) +short int graphxml_edge_length_isset; +AT_graphxml_node_label AX_graphxml_node_label; +#define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label) +short int graphxml_node_label_isset; +AT_graphxml_edge_label AX_graphxml_edge_label; +#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) +short int graphxml_edge_label_isset; +AT_graphxml_graph_isDirected AX_graphxml_graph_isDirected; +#define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected +short int graphxml_graph_isDirected_isset; +AT_graphxml_node_position___x AX_graphxml_node_position___x; +#define A_graphxml_node_position___x (graphxml_bufferstack + AX_graphxml_node_position___x) +short int graphxml_node_position___x_isset; +AT_graphxml_edge_data AX_graphxml_edge_data; +#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) +short int graphxml_edge_data_isset; +AT_graphxml_node_name AX_graphxml_node_name; +#define A_graphxml_node_name (graphxml_bufferstack + AX_graphxml_node_name) +short int graphxml_node_name_isset; /* XML state. */ #ifdef FLEX_DEBUG @@ -1245,13 +1254,24 @@ static int ck_ilimit() #ifdef FLEXML_NEED_BUFFERLIT static void graphxml_bufferliteral(char c, int* pp, const char* text) { - const char *s = (c ? strchr(text,c) : text-1), *e = strrchr(text,c); - assert(s <= e); BUFFERSET(*pp); - while (++s' expected.",xbt_graph_parse_text[0]); YY_BREAK -case YY_STATE_EOF(S_graphxml_graph_1): -case YY_STATE_EOF(E_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_3): -case YY_STATE_EOF(S_graphxml_graph_5): +case YY_STATE_EOF(E_graphxml_graph): +case YY_STATE_EOF(S_graphxml_graph_1): case YY_STATE_EOF(S_graphxml_graph): +case YY_STATE_EOF(S_graphxml_graph_5): FAIL("Premature EOF: `' expected."); YY_BREAK @@ -1854,10 +1875,15 @@ case 32: YY_RULE_SETUP { AX_graphxml_node_label = 0; + graphxml_node_label_isset = 0; AX_graphxml_node_name = 0; + graphxml_node_name_isset = 0; AX_graphxml_node_data = 0; - AX_graphxml_node_position_x = 1; - AX_graphxml_node_position_y = 6; + graphxml_node_data_isset = 0; + AX_graphxml_node_position___x = 1; + graphxml_node_position___x_isset = 0; + AX_graphxml_node_position___y = 6; + graphxml_node_position___y_isset = 0; ENTER(AL_graphxml_node); pushbuffer(0); } YY_BREAK @@ -1865,52 +1891,52 @@ YY_RULE_SETUP case 33: /* rule 33 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_node_label); +if (graphxml_node_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_node_label_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_label); YY_BREAK case 34: /* rule 34 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_node_label); +if (graphxml_node_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_node_label_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_label); YY_BREAK case 35: /* rule 35 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_node_name); +if (graphxml_node_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_node_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_name); YY_BREAK case 36: /* rule 36 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_node_name); +if (graphxml_node_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_node_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_name); YY_BREAK case 37: /* rule 37 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_node_data); +if (graphxml_node_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_node_data_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_data); YY_BREAK case 38: /* rule 38 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_node_data); +if (graphxml_node_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_node_data_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_data); YY_BREAK case 39: /* rule 39 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position_x); +if (graphxml_node_position___x_isset != 0) {FAIL("Multiple definition of attribute position_x in ");} graphxml_node_position___x_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position___x); YY_BREAK case 40: /* rule 40 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position_x); +if (graphxml_node_position___x_isset != 0) {FAIL("Multiple definition of attribute position_x in ");} graphxml_node_position___x_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position___x); YY_BREAK case 41: /* rule 41 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position_y); +if (graphxml_node_position___y_isset != 0) {FAIL("Multiple definition of attribute position_y in ");} graphxml_node_position___y_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position___y); YY_BREAK case 42: /* rule 42 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position_y); +if (graphxml_node_position___y_isset != 0) {FAIL("Multiple definition of attribute position_y in ");} graphxml_node_position___y_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position___y); YY_BREAK case 43: YY_RULE_SETUP @@ -1925,7 +1951,7 @@ YY_RULE_SETUP if (!AX_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); LEAVE; STag_graphxml_node(); graphxml_pcdata_ix = 0; ETag_graphxml_node(); popbuffer(); /* attribute */ switch (YY_START) { - case S_graphxml_graph_2: case S_graphxml_graph_3: case S_graphxml_graph: SET(S_graphxml_graph_3); break; + case S_graphxml_graph_3: case S_graphxml_graph_2: case S_graphxml_graph: SET(S_graphxml_graph_3); break; case ROOT_graphxml_node: SET(EPILOG); break; } } @@ -1950,7 +1976,7 @@ YY_RULE_SETUP ETag_graphxml_node(); popbuffer(); /* attribute */ switch (YY_START) { - case S_graphxml_graph_2: case S_graphxml_graph_3: case S_graphxml_graph: SET(S_graphxml_graph_3); break; + case S_graphxml_graph_3: case S_graphxml_graph_2: case S_graphxml_graph: SET(S_graphxml_graph_3); break; case ROOT_graphxml_node: SET(EPILOG); break; } } @@ -1985,11 +2011,17 @@ case 51: YY_RULE_SETUP { AX_graphxml_edge_label = 0; + graphxml_edge_label_isset = 0; AX_graphxml_edge_name = 0; + graphxml_edge_name_isset = 0; AX_graphxml_edge_source = 0; + graphxml_edge_source_isset = 0; AX_graphxml_edge_target = 0; + graphxml_edge_target_isset = 0; AX_graphxml_edge_length = 11; + graphxml_edge_length_isset = 0; AX_graphxml_edge_data = 0; + graphxml_edge_data_isset = 0; ENTER(AL_graphxml_edge); pushbuffer(0); } YY_BREAK @@ -1997,62 +2029,62 @@ YY_RULE_SETUP case 52: /* rule 52 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_label); +if (graphxml_edge_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_edge_label_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_label); YY_BREAK case 53: /* rule 53 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_label); +if (graphxml_edge_label_isset != 0) {FAIL("Multiple definition of attribute label in ");} graphxml_edge_label_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_label); YY_BREAK case 54: /* rule 54 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_name); +if (graphxml_edge_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_edge_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_name); YY_BREAK case 55: /* rule 55 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_name); +if (graphxml_edge_name_isset != 0) {FAIL("Multiple definition of attribute name in ");} graphxml_edge_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_name); YY_BREAK case 56: /* rule 56 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_source); +if (graphxml_edge_source_isset != 0) {FAIL("Multiple definition of attribute source in ");} graphxml_edge_source_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_source); YY_BREAK case 57: /* rule 57 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_source); +if (graphxml_edge_source_isset != 0) {FAIL("Multiple definition of attribute source in ");} graphxml_edge_source_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_source); YY_BREAK case 58: /* rule 58 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_target); +if (graphxml_edge_target_isset != 0) {FAIL("Multiple definition of attribute target in ");} graphxml_edge_target_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_target); YY_BREAK case 59: /* rule 59 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_target); +if (graphxml_edge_target_isset != 0) {FAIL("Multiple definition of attribute target in ");} graphxml_edge_target_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_target); YY_BREAK case 60: /* rule 60 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_length); +if (graphxml_edge_length_isset != 0) {FAIL("Multiple definition of attribute length in ");} graphxml_edge_length_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_length); YY_BREAK case 61: /* rule 61 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_length); +if (graphxml_edge_length_isset != 0) {FAIL("Multiple definition of attribute length in ");} graphxml_edge_length_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_length); YY_BREAK case 62: /* rule 62 can match eol */ YY_RULE_SETUP -ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_data); +if (graphxml_edge_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_edge_data_isset = 1; ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_data); YY_BREAK case 63: /* rule 63 can match eol */ YY_RULE_SETUP -ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_data); +if (graphxml_edge_data_isset != 0) {FAIL("Multiple definition of attribute data in ");} graphxml_edge_data_isset = 1; ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_data); YY_BREAK case 64: YY_RULE_SETUP @@ -2069,7 +2101,7 @@ YY_RULE_SETUP if (!AX_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); LEAVE; STag_graphxml_edge(); graphxml_pcdata_ix = 0; ETag_graphxml_edge(); popbuffer(); /* attribute */ switch (YY_START) { - case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_5: case S_graphxml_graph_4: case S_graphxml_graph: SET(S_graphxml_graph_5); break; + case S_graphxml_graph_3: case S_graphxml_graph_1: case S_graphxml_graph: case S_graphxml_graph_4: case S_graphxml_graph_5: SET(S_graphxml_graph_5); break; case ROOT_graphxml_edge: SET(EPILOG); break; } } @@ -2094,7 +2126,7 @@ YY_RULE_SETUP ETag_graphxml_edge(); popbuffer(); /* attribute */ switch (YY_START) { - case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_5: case S_graphxml_graph_4: case S_graphxml_graph: SET(S_graphxml_graph_5); break; + case S_graphxml_graph_3: case S_graphxml_graph_1: case S_graphxml_graph: case S_graphxml_graph_4: case S_graphxml_graph_5: SET(S_graphxml_graph_5); break; case ROOT_graphxml_edge: SET(EPILOG); break; } }