如何在Chapel中获取当前文件,模块和过程的名称

时间:2019-02-27 20:27:21

标签: chapel

在Chapel中,是否可以通过某种方式(例如通过帮助函数)获取当前文件,模块或过程的名称?我的目标是打印例程名称,而不用手工在writeln()中明确地写它。

proc calculate_this_and_that_ver2() {
  // writeln( "In calculate_this_and_that_ver2()" ); // long...
  writeln( "In ", modname(), " : ", procname() );
  ...
}

我在这里希望与Swift中的#function等类似:

func mytest() {
   print( "file =", #file, "func =", #function, "line =", #line )
}
mytest()  // --> file = test.swift func = mytest() line = 2

1 个答案:

答案 0 :(得分:2)

我不相信Chapel当前支持这样的功能,尽管已经不时讨论该功能,并且在这些对话中普遍得到好评。我建议将来在我们的GitHub issues page上针对它提出功能请求。