问题描述
|
嘿,
Delphi Web Script是非常出色的脚本引擎。我正在尝试在我的一个项目中使用它。但是,我不确定是否可以枚举脚本引擎中可用的所有类型和功能,例如我想列出所有在脚本编写时可以使用的方法(包括所有内部和外部类型,函数,过程等)。快速脚本具有treeview组件,该组件公开了您可以使用的所有类型。我正在dwscript中寻找类似的内容。提前致谢。
解决方法
您将在每个已编译DWScript实体所附的符号表(TSymbolTable)中找到所有类型,在已编译程序,已编译函数/方法以及具有作用域的块中都拥有一个类型。
如果要枚举在特定范围内可见的所有符号,则不仅要查看特定TSymbolTable包含的内容,还必须查看其父级(也就是TSymbolTable),这些父级包含来自父级的符号范围(包括单位和库符号)。对于类方法和类型,可以在TClassSymbol的Members []中找到它们。
sourceforge上的DWS2存储库包含一些示例,这些示例尚未在DWS2.x存储库中进行转换,但是应该相当容易地进行调整。