Frage Haskell exportiert aktuelles Modul mit zusätzlich importiertem Modul


Ist es möglich, ein Modul in Haskell zu schreiben, das neben dem Exportieren alles auch ein Modul re-exportiert sichtbar Innerhalb?

Lass uns folgendes Modul betrachten:

module Test where
import A

f x = x

Dieses Modul exportiert alles definiert drinnen, so exportiert es f exportiert jedoch nichts, das importiert wurde A.

Auf der anderen Seite, wenn ich das Modul reexportieren möchte A:

module Test (
    module A,
    f
) where
import A

f x = x

Gibt es eine Möglichkeit, wieder zu exportieren? A und exportieren alles definiert in Test ohne dass explizit jede darin definierte Funktion geschrieben werden muss Test?


75
2017-08-03 17:31


Ursprung


Antworten:


Es gibt eine einfache Lösung, exportieren Sie einfach das Modul aus dem Modul:

module Test
    ( module Test
    , module A
    ) where

import Prelude()
import A
f x = x

113
2017-08-03 17:57