Rascal MPL动态获取变量的属性/字段



我经常发现自己在迷路时使用typeOf进行测试。是否有类似的方法来打印变量的所有属性或字段,类似于Object。key (JavaScript)还是vars (Python)?

打印构造函数中所有当前关键字字段:

import Node;
iprintln(getKeywordParameters(myInput));
例如,我经常使用它来打印M3模型的字段。但是,这不会打印设置了而不是的字段。Rascal是一种静态类型语言,可以检索值中不存在的信息(例如默认字段)。

如果我想知道函数或构造函数的一般签名,我可以在控制台中键入名称,然后单击其源位置:

rascal>println
value: choice(
[
function(|file:///Users/jurgenv/git/rascal/src/org/rascalmpl/library/IO.rsc|(11118,784,<418,0>,<455,36>)),
function(|file:///Users/jurgenv/git/rascal/src/org/rascalmpl/library/IO.rsc|(11904,69,<457,0>,<458,27>))
],
[])

对于构造函数来说很好,所以你可以看到它们有哪些位置字段或关键字字段。

查找当前构造函数的名称:

import Node;
getName(myValue);

相关内容

  • 没有找到相关文章

最新更新