首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用模板haskell获取作用域中的所有函数/值

使用模板haskell获取作用域中的所有函数/值
EN

Stack Overflow用户
提问于 2012-08-02 10:59:24
回答 1查看 248关注 0票数 4

使用模板haskell,有没有办法列出作用域中的所有函数?就像这样

代码语言:javascript
复制
allVarsInScope :: Q [Name]

我要做的是获取所有以test_开头的导入函数的列表,并自动运行测试。

EN

回答 1

Stack Overflow用户

发布于 2012-08-02 17:59:09

遗憾的是,模板Haskell中没有这样的反射功能,但有解决方法。但是,在您自己编写类似的代码之前,我建议您尝试使用test-framework-th包,它已经对以case_开头的HUnit测试和以prop_开头的QuickCheck属性执行了此操作。

在幕后,这个包使用了language-haskell-extract包,它本质上是在模块上运行自己的解析过程来挑选出定义。这是一个有点老生常谈的解决方案,但它在实践中工作得很好。然而,它确实带来了相当多的依赖项,并且额外的解析过程会减慢构建速度。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11770449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档