在ATS中$ effmask_all是什么意思?

时间:2016-12-31 15:49:21

标签: ats

我在ATS库代码中多次看到准函数符号$effmask_all$effmask_ref。这些符号的含义是什么?什么时候应该被召唤?

1 个答案:

答案 0 :(得分:1)

ATS可以跟踪一些效果(例如,非终止(ntm),参考(ref),写(wrt))。有时,您可能希望类型检查器忽略可能从表达式求值中生成的效果。为此,您可以使用$effmask_all来屏蔽所有效果,$effmask_ref仅屏蔽参考效果。还有$effmask_wrt用于屏蔽写效果。