gpt4 book ai didi

parsing - 扫描、解析和编译ABAP源的过程?

转载 作者:行者123 更新时间:2023-12-01 17:23:05 29 4
gpt4 key购买 nike

这是一个关于编译过程的相当技术性的问题ABAP代码。

我知道有ABAP解析器和扫描器类实际上调用 C 内核函数来完成实际工作。然后就是代码补全事务的功能,该事务以 ABAP 列表或 XML 的形式返回并打印程序的 AST(抽象源树)。

现在我的问题是:是否可以“跳过”ABAP源代码并通过其他方式直接生成这样的 AST,而不是编写然后执行SE80左右的ABAP程序,并将其交给一些编译和编译的函数执行它就像是用ABAP代码编写并解析的一样?

也就是说,我可以跳过源的扫描和解析,直接给出编译器的 AST?如果有,是什么格式? ABAP列表查看更多打印格式,不像例如Lisp 列表用括号括起来。

最佳答案

不幸的是,ABAP 编译器不使用 AST 来生成 VM 代码。ABAP 编译器按顺序工作,并将每个语句(即两个“.”之间的所有内容)转换为一个或多个虚拟机操作码。

如果您好奇,可以查看事务 SYNT,它显示了编译器输出。您还可以查看报告 RSLOAD00,其中显示了为程序生成的 ABAP VM 代码。

AST 仅构建在顶部,以允许代码完成或高级分析。

如果您想调用ABAP编译器,您将需要生成文本ABAP源代码。

关于parsing - 扫描、解析和编译ABAP源的过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34559604/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com