在ANTLR4中解析时创建对象的最佳性能是什么?

时间:2016-07-21 10:32:53

标签: performance parsing grammar antlr4

我正在解析消息并在进行解析时创建自定义对象消息。我想知道性能明智,在解析器操作或其他地方创建对象是否更好?

现在我要覆盖退出规则方法。

parser.addParseListener(new MessageGrammarBaseListener(){
            MessageType message = null;

            @Override
            public void exitStartofMessage(StartofMessageContext ctx) {
                message = new MessageType();
            }

            @Override
                public void exitPersonalInformation( PersonalInformationContext ctx) {
                    Person p = new Person();
                    p.setName(ctx.name.getText());
                    message.setPersonalInformation(p);

                    }
(...)
});

以这种方式或在解析器操作中更好吗?

1 个答案:

答案 0 :(得分:0)

将解析过程和AST旁路分开是一个很好的做法,因为解析可以针对不同的运行时实现。这些行动也是不同的逻辑步骤。所以我认为你做的一切都是正确的。

相关问题