Module Expr Str Import alias Assign NameStore Str Assign NameStore Str FunctionDef arguments args NameParam defaults body Assert Call AttributeLoad NameLoad attr NameLoad NameLoad BinOpMod Str NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body If CompareEq NameLoad Str body Return Call NameLoad NameLoad orelse If CompareEq BinOpAdd SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num Str body Return TupleLoad NameLoad SubscriptLoad NameLoad Slice Num Num orelse If CompareIn Str NameLoad body Return TupleLoad NameLoad Call NameLoad NameLoad orelse Return TupleLoad NameLoad Call NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore ListLoad While BoolOpAnd CompareGt Call NameLoad NameLoad Num CompareNotIn SubscriptLoad NameLoad Index Num Str body Assign NameStore Call NameLoad SubscriptLoad NameLoad Index Num Assign TupleStore NameStore NameStore Call NameLoad SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Slice Num Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad Return TupleLoad SubscriptLoad NameLoad Slice Num Call NameLoad NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign TupleStore NameStore NameStore TupleLoad NameLoad NameLoad For TupleStore NameStore NameStore NameLoad body If CompareEq NameLoad Str body Assign NameStore Call NameLoad NameLoad orelse If CompareEq NameLoad Str body Assign NameStore NameLoad Assert CompareIsNot NameLoad NameLoad Assign NameStore IfExp CompareIs NameLoad NameLoad NameLoad NameLoad Return TupleLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Assign TupleStore NameStore NameStore NameStore NameStore TupleLoad BinOpMod Str NameLoad NameLoad NameLoad NameLoad For TupleStore NameStore NameStore NameLoad body If CompareEq NameLoad Str body Assign NameStore NameLoad orelse If CompareEq NameLoad Str body Assign NameStore Call NameLoad NameLoad orelse If CompareEq NameLoad Str body Assign NameStore Call NameLoad NameLoad Return TupleLoad NameLoad NameLoad NameLoad NameLoad decorator_list Assign TupleStore NameStore NameStore NameStore NameStore NameStore TupleLoad Num Num Num Num Num FunctionDef arguments args NameParam defaults kwarg body Assign NameStore Call AttributeLoad NameLoad attr Str Str NameLoad Assign NameStore ListComp BoolOpOr SubscriptLoad NameLoad Index Num SubscriptLoad NameLoad Index Num comprehension NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad Assign NameStore AttributeLoad Call NameLoad Call NameLoad Num BinOpPow Num Num attr Assign TupleStore NameStore NameStore TupleLoad ListLoad ListLoad For TupleStore NameStore NameStore NameLoad body If CompareEq Call AttributeLoad NameLoad attr Str body For TupleStore NameStore NameStore NameLoad body If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr Call NameLoad NameLoad orelse If CompareEq Call AttributeLoad NameLoad attr Str body Expr Call AttributeLoad NameLoad attr Call NameLoad NameLoad Call NameLoad Return TupleLoad NameLoad NameLoad orelse Assert NameLoad Str decorator_list
N/A N/A Parser for GML files.

# http://www.fim.uni-passau.de/fileadmin/files/lehrstuhl/brandenburg/projekte/gml/gml-technical-report.pdf

Grammar:

  GML		::= List
  List		::= (whitespace* Key whitespace+ Value)*
  Value		::= Integer | Real | String | [ List ]
  Key		::= [ a-z A-Z ] [ a-z A-Z 0-9 ]*
  Integer	::= sign digit+
  Real		::= sign digit* . digit* mantissa
  String	::= " instring "
  sign		::= empty | + | -
  digit		::= [0-9]
  Mantissa	::= empty | E sign digit
  instring	::= [^&,"] | & character+ ;
  whitespace	::= space | tabulator | newline

Entity names are not mapped.
 N/A re N/A token_pattern ([^ 	
"]+)|("[^"]*") N/A key_pattern [A-Za-z][0-9A-Za-z_-]* check_key N/A N/A s N/A N/A N/A N/A N/A re match key_pattern s N/A parse error at %r s N/A s N/A parse_value N/A N/A s ts N/A N/A N/A N/A s [ N/A N/A N/A parse ts N/A N/A N/A N/A N/A s N/A 0 N/A s N/A -1 "" N/A N/A N/A ts N/A s N/A 1 -1 N/A N/A N/A . s N/A N/A N/A ts N/A float s N/A N/A N/A ts N/A int s N/A parse N/A N/A ts N/A N/A N/A d N/A N/A N/A N/A N/A len ts 1 N/A N/A ts N/A 0 ] N/A N/A key N/A check_key N/A ts N/A 0 N/A N/A ts val N/A parse_value N/A ts N/A 1 N/A ts N/A 2 N/A N/A N/A d append N/A key val N/A N/A N/A ts N/A 1 N/A tuple d N/A build_vert N/A N/A vl N/A N/A N/A N/A v_id v_name N/A None None N/A N/A key value vl N/A N/A N/A key id N/A N/A v_id N/A str value N/A N/A N/A key label N/A N/A v_name value N/A N/A v_id None N/A v_name N/A N/A v_name None v_id v_name N/A N/A v_id v_name N/A build_edge N/A N/A el serial N/A N/A N/A N/A e_id e_name e_src e_tgt N/A N/A e%d serial None None None N/A N/A key value el N/A N/A N/A key label N/A N/A e_name value N/A N/A N/A key source N/A N/A e_src N/A str value N/A N/A N/A key target N/A N/A e_tgt N/A str value N/A N/A e_id e_name e_src e_tgt N/A N/A N/A ID NAME EDGES SRC TGT N/A 0 1 2 2 3 deserialize N/A N/A d N/A kw N/A N/A commented N/A N/A re sub 
\s*#[^
]* d N/A tokenized N/A N/A N/A mo N/A 0 N/A mo N/A 1 N/A mo N/A N/A re findall token_pattern commented N/A N/A empty tree N/A parse tokenized N/A serial N/A N/A iter N/A xrange 0 N/A 2 62 next N/A N/A verts edges N/A N/A N/A N/A N/A key node tree N/A N/A N/A N/A N/A key lower graph N/A N/A N/A key val node N/A N/A N/A N/A N/A key lower node N/A N/A N/A N/A verts append N/A build_vert val N/A N/A N/A N/A N/A key lower edge N/A N/A N/A N/A edges append N/A build_edge val N/A serial N/A N/A verts edges N/A N/A False Could not find graph in file. N/A