Haskell - 模块内模块
Haskell - module inside module
我有这样一个模块:
module Model where
import FlowType
.
.
.
我在 Model
的正文中使用 FlowType
,但我也想与模型的函数 FlowType 一起导出。我找到了一个具有以下语法的模块:
module Import
( module Import
) where
import Foundation as Import
.
.
.
这是什么module Import ( module Import) where
???
我怎样才能在我的 Model
模块中做同样的事情(并导出它自己的函数)?
假设模块 Foundation
导出名称 foo
和 bar
.
首先,import Foundation as Import
使这些名称在当前定义的模块中可用为 Import.foo
和 Import.bar
。
module
语句然后也导出这些名称。而不是必须写
module Import (foo, bar) where
您可以使用问题中的语法导出通过名称 Import
可访问的所有内容。该示例有点混乱,因为它使用 Import
作为 Foundation
的内部名称和当前模块的名称。写成
会更明显
module Import (module Foundation) where
import Foundation
.
.
.
在你的情况下,你会写
module Model (module FlowType) where
import FlowType
从您的模块导出从 FlowType
导入的所有内容。
我有这样一个模块:
module Model where
import FlowType
.
.
.
我在 Model
的正文中使用 FlowType
,但我也想与模型的函数 FlowType 一起导出。我找到了一个具有以下语法的模块:
module Import
( module Import
) where
import Foundation as Import
.
.
.
这是什么module Import ( module Import) where
???
我怎样才能在我的 Model
模块中做同样的事情(并导出它自己的函数)?
假设模块 Foundation
导出名称 foo
和 bar
.
首先,import Foundation as Import
使这些名称在当前定义的模块中可用为 Import.foo
和 Import.bar
。
module
语句然后也导出这些名称。而不是必须写
module Import (foo, bar) where
您可以使用问题中的语法导出通过名称 Import
可访问的所有内容。该示例有点混乱,因为它使用 Import
作为 Foundation
的内部名称和当前模块的名称。写成
module Import (module Foundation) where
import Foundation
.
.
.
在你的情况下,你会写
module Model (module FlowType) where
import FlowType
从您的模块导出从 FlowType
导入的所有内容。