3 Star 0 Fork 0

Gitee 极速下载/cxml-xml

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/python-openxml/cxml
克隆/下载
parser.py 1.57 KB
一键复制 编辑 原始数据 按行查看 历史
Steve Canny 提交于 10年前 . first version
# encoding: utf-8
"""
Parser for CXML language.
"""
from __future__ import (
absolute_import, division, print_function, unicode_literals
)
from .lib.grammar import Productions
from .lib.parser import Parser
from .symbols import (
COLON, COMMA, EQUAL, LBRACE, LPAREN, NAME, RBRACE, RPAREN, SLASH, SNTL,
TEXT, attr, attr_list, attrs, element, nsdecl, qname, root, root_element,
str_attr, tree, tree_list, trees,
)
productions = Productions.from_seq(
(root, (root_element, SLASH, trees, SNTL)),
(root, (root_element, SNTL)),
(root_element, (qname, attrs, TEXT)),
(root_element, (qname, attrs)),
(root_element, (qname, TEXT)),
(root_element, (qname,)),
(trees, (LPAREN, tree_list, RPAREN)),
(trees, (tree,)),
(tree_list, (tree, COMMA, tree_list)),
(tree_list, (tree,)),
(tree, (element, SLASH, trees)),
(tree, (element,)),
(element, (qname, attrs, TEXT)),
(element, (qname, attrs)),
(element, (qname, TEXT)),
(element, (qname,)),
(attrs, (LBRACE, attr_list, RBRACE)),
(attr_list, (attr, COMMA, attr_list)),
(attr_list, (attr,)),
(attr, (str_attr,)),
(attr, (nsdecl,)),
(str_attr, (qname, EQUAL, TEXT)),
(qname, (NAME, COLON, NAME)),
(qname, (NAME,)),
(nsdecl, (NAME, COLON)),
)
class CxmlParser(Parser):
"""
Parser for Compact XML Expression Languate (CXML).
"""
def __init__(self, lexer):
super(CxmlParser, self).__init__(lexer, productions)
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/mirrors/cxml-xml.git
git@gitee.com:mirrors/cxml-xml.git
mirrors
cxml-xml
cxml-xml
master

搜索帮助