Haskell экспортирует текущий модуль с дополнительным импортированным модулем


можно ли написать модуль в Haskell, который реэкспортирует модуль в дополнение к экспорту всего видимого внутри?

давайте рассмотрим следующий модуль:

module Test where
import A

f x = x

этот модуль экспортирует все определена внутри, поэтому его экспорт f но не реэкспортирует ничего импортированного из A.

С другой стороны, если я хочу повторно экспортировать модуль A:

module Test (
    module A,
    f
) where
import A

f x = x

есть ли способ для реэкспорта A и экспорта все определена в Test без необходимости явно писать каждую функцию, определенную в Test?

1 76

1 ответ:

есть простое решение, просто экспортируйте модуль из модуля:

module Test
    ( module Test
    , module A
    ) where

import Prelude()
import A
f x = x