yml2/grammar.py
changeset 74 c3c5a089072a
parent 72 e52ee17bca47
equal deleted inserted replaced
73:483d99ba1b16 74:c3c5a089072a
    77 def constant():     return 0, keyword("define"), [pointer, symbol], "=", literal, 0, [";", "."]
    77 def constant():     return 0, keyword("define"), [pointer, symbol], "=", literal, 0, [";", "."]
    78 def in_ns():        return keyword("in"), xmlSymbol, [_decl, ("{", -2, _decl, "}")]
    78 def in_ns():        return keyword("in"), xmlSymbol, [_decl, ("{", -2, _decl, "}")]
    79 _decl = keyword("decl"), listing(decl), [";", "."]
    79 _decl = keyword("decl"), listing(decl), [";", "."]
    80 def textsection():  return r(r'(\|\|(\>*)(.*?)\|\|(\>*))\s*$', re.S | re.M)
    80 def textsection():  return r(r'(\|\|(\>*)(.*?)\|\|(\>*))\s*$', re.S | re.M)
    81 def textsectionu(): return r(r'(\>\>.*?\>\>)', re.S)
    81 def textsectionu(): return r(r'(\>\>.*?\>\>)', re.S)
    82 def include():      return keyword("include"), 0, reverse, 0, [ktext, kxml], [(kpointer, pointer), filename], 0, [";", "."]
    82 def include():      return keyword("include"), 0, reverse, 0, [ktext, kxml], 0, kpointer, filename, 0, [";", "."]
    83 def func():         return _func, 0, content
    83 def func():         return _func, 0, content
    84 def funclist():     return listing(func)
    84 def funclist():     return listing(func)
    85 _cmd = funclist, 0, [";", "."]
    85 _cmd = funclist, 0, [";", "."]
    86 _inner = [include, textsection, textsectionu, pythonCall, _cmd, quote, lineQuote, tagQuote, pyExp]
    86 _inner = [include, textsection, textsectionu, pythonCall, _cmd, quote, lineQuote, tagQuote, pyExp]
    87 _cc = "{", -1, _inner, "}"
    87 _cc = "{", -1, _inner, "}"
   104 
   104 
   105 def content():      return [ (_l, 0, _p, 0, _b, 0, _c), (_p, 0, _b, 0, _c), (_b, 0, _c), _c ]
   105 def content():      return [ (_l, 0, _p, 0, _b, 0, _c), (_p, 0, _b, 0, _c), (_b, 0, _c), _c ]
   106 def reverse():      return keyword("reverse")
   106 def reverse():      return keyword("reverse")
   107 def ktext():        return keyword("text")
   107 def ktext():        return keyword("text")
   108 def kxml():         return keyword("xml")
   108 def kxml():         return keyword("xml")
   109 def kpointer():     return keyword("pointer")
   109 def kpointer():     return keyword("from")
   110 def ymlCStyle():    return -1, [_decl, in_ns, include, python, operator, constant, tagQuote, lineQuote, quote, _cmd]
   110 def ymlCStyle():    return -1, [_decl, in_ns, include, python, operator, constant, tagQuote, lineQuote, quote, _cmd]