1 /* XML processor/application API for ../../src/xbt/graphxml.dtd.
2 * Generated 2006/03/21 13:43:39.
4 * This program was generated with the FleXML XML processor generator.
5 * FleXML is Copyright © 1999-2005 Kristoffer Rose. All rights reserved.
6 * (Id: flexml.pl,v 1.47 2006/03/21 11:12:57 legranda Exp).
8 * There are two, intertwined parts to this program, part A and part B.
13 * Some parts, here collectively called "Part A", are found in the
14 * FleXML package. They are Copyright © 1999-2005 Kristoffer Rose.
15 * All rights reserved.
17 * You can redistribute, use, perform, display and/or modify "Part A"
18 * provided the following two conditions hold:
20 * 1. The program is distributed WITHOUT ANY WARRANTY from the author of
21 * FleXML; without even the implied warranty of MERCHANTABILITY or
22 * FITNESS FOR A PARTICULAR PURPOSE.
24 * 2. The program distribution conditions do not in any way affect the
25 * distribution conditions of the FleXML system used to generate this
26 * file or any version of FleXML derived from that system.
28 * Notice that these are explicit rights granted to you for files
29 * generated by the FleXML system. For your rights in connection with
30 * the FleXML system itself please consult the GNU General Public License.
35 * The other parts, here collectively called "Part B", and which came
36 * from the DTD used by FleXML to generate this program, can be
37 * distributed (or not, as the case may be) under the terms of whoever
38 * wrote them, provided these terms respect and obey the two conditions
39 * above under the heading "Part A".
41 * The author of and contributors to FleXML specifically disclaim
42 * any copyright interest in "Part B", unless "Part B" was written
43 * by the author of or contributors to FleXML.
47 #ifndef _FLEXML_graphxml_H
48 #define _FLEXML_graphxml_H
50 /* XML application entry points. */
51 extern void STag_graphxml_graph(void);
52 extern void ETag_graphxml_graph(void);
53 extern void STag_graphxml_node(void);
54 extern void ETag_graphxml_node(void);
55 extern void STag_graphxml_edge(void);
56 extern void ETag_graphxml_edge(void);
58 /* XML application data. */
59 typedef const char* AT_graphxml_node_name;
60 #define AU_graphxml_node_name NULL
61 typedef const char* AT_graphxml_edge_source;
62 #define AU_graphxml_edge_source NULL
63 typedef enum { AU_graphxml_edge_isDirected, A_graphxml_edge_isDirected_true,A_graphxml_edge_isDirected_false } AT_graphxml_edge_isDirected;
64 typedef const char* AT_graphxml_edge_target;
65 #define AU_graphxml_edge_target NULL
66 typedef const char* AT_graphxml_node_label;
67 #define AU_graphxml_node_label NULL
68 typedef const char* AT_graphxml_edge_label;
69 #define AU_graphxml_edge_label NULL
70 typedef const char* AT_graphxml_edge_name;
71 #define AU_graphxml_edge_name NULL
72 typedef const char* AT_graphxml_edge_length;
73 #define AU_graphxml_edge_length NULL
75 /* FleXML-provided data. */
76 extern const char* pcdata;
77 extern AT_graphxml_node_name A_graphxml_node_name;
78 extern AT_graphxml_edge_source A_graphxml_edge_source;
79 extern AT_graphxml_edge_isDirected A_graphxml_edge_isDirected;
80 extern AT_graphxml_edge_target A_graphxml_edge_target;
81 extern AT_graphxml_node_label A_graphxml_node_label;
82 extern AT_graphxml_edge_label A_graphxml_edge_label;
83 extern AT_graphxml_edge_name A_graphxml_edge_name;
84 extern AT_graphxml_edge_length A_graphxml_edge_length;
86 /* XML application utilities. */
87 extern int graphxml_element_context(int);
89 /* XML processor entry point. */
90 extern int yylex(void);
92 /* Flexml error handling function (useful only when -q flag passed to flexml) */
93 const char * graphxml_parse_err_msg(void);