module - 重新导出实现而不导出定义
问题描述
假设我有M1
一个根据另一个现有类型定义类型的模块:
module M1
import public Control.Monad.Identity
public export M : Type -> Type
M = Identity
我当然可以在任何期望的地方导入M1
和使用:M
Applicative
module M2
import M1
bar : M ()
bar = pure ()
但是如果我不想 exportM
的定义呢?换句话说,我想写
export M :: Type -> Type
M = Identity
这样客户端代码就不能依赖于M
的定义,但我仍然希望客户端代码能够访问Applicative M
.
解决方案
推荐阅读
- javascript - 从excel获取数据到HTML,NaN的Javascript问题
- android - APK 大小是否受 ReactNative 中未使用的包的影响?
- python - 如何自动创建 sparkmagic 会话(无需手动与小部件用户界面交互)?
- oracle - ORA-00920: 无效的关系运算符(没有缺失/额外的括号)
- javascript - 如何在 react native 中从命令行更改 .env var 的值?
- c++ - 如何内存对齐派生类?
- css - 如何使用 react 渲染不同的 SVG onhover
- java - Spring Boot jar 中的 FileNotFoundException 但文件存在
- python - 登录并更改 url 以进行抓取
- wpf-mediakit - EnhancedVideoRenderer 的工作原理