Beispiel #1
0
def traducir(json_text):
    input = InputStream(json_text)
    lexer = JSONLexer(input)
    stream = CommonTokenStream(lexer)
    parser = JSONParser(stream)
    parser._listeners = [MyErrorListener()]
    tree = parser.json()
def main():
    lexer = JSONLexer(InputStream(sys.stdin.read()))
    stream = CommonTokenStream(lexer)
    parser = JSONParser(stream)
    tree = parser.json()
    visitor = CustomVisitor()
    visitor.visit(tree)
Beispiel #3
0
def main(args):
    input_stream = FileStream(args.filename)
    lexer = JSONLexer(input_stream)
    token_stream = CommonTokenStream(lexer)
    parser = JSONParser(token_stream)
    tree = parser.json()

    emiter = XmlEmitter
    if args.iterative:
        emiter = MyXmlEmitter

    xml = emiter()
    walker = ParseTreeWalker()
    walker.walk(xml, tree)
    print(xml.result())
Beispiel #4
0
        self.setXML(ctx, self.getXML(ctx.array()))

    def exitEmptyArray(self, ctx: JSONParser.EmptyArrayContext):
        self.setXML(ctx, "")

    def exitJson(self, ctx: JSONParser.JsonContext):
        self.setXML(ctx, self.getXML(ctx.getChild(0)))


if __name__ == '__main__':
    if len(sys.argv) > 1:
        input_stream = FileStream(sys.argv[1])
    else:
        input_stream = InputStream(sys.stdin.read())

    lexer = JSONLexer(input_stream)
    token_stream = CommonTokenStream(lexer)
    parser = JSONParser(token_stream)
    tree = parser.json()

    lisp_tree_str = tree.toStringTree(recog=parser)
    print(lisp_tree_str)

    # listener
    print("Start Walking...")
    listener = XmlEmitter()
    walker = ParseTreeWalker()
    walker.walk(listener, tree)
    print(listener.getXML(tree))