diff options
| -rw-r--r-- | compiler/basicTypes/Module.hs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/compiler/basicTypes/Module.hs b/compiler/basicTypes/Module.hs index a20de2d0b3..2c60463c04 100644 --- a/compiler/basicTypes/Module.hs +++ b/compiler/basicTypes/Module.hs @@ -42,6 +42,7 @@ module Module dphParPackageKey, mainPackageKey, thisGhcPackageKey, + holePackageKey, isHoleModule, interactivePackageKey, isInteractiveModule, wiredInPackageKeys, @@ -399,9 +400,17 @@ interactivePackageKey = fsToPackageKey (fsLit "interactive") -- to symbol names, since there can be only one main package per program. mainPackageKey = fsToPackageKey (fsLit "main") +-- | This is a fake package id used to provide identities to any un-implemented +-- signatures. The set of hole identities is global over an entire compilation. +holePackageKey :: PackageKey +holePackageKey = fsToPackageKey (fsLit "hole") + isInteractiveModule :: Module -> Bool isInteractiveModule mod = modulePackageKey mod == interactivePackageKey +isHoleModule :: Module -> Bool +isHoleModule mod = modulePackageKey mod == holePackageKey + wiredInPackageKeys :: [PackageKey] wiredInPackageKeys = [ primPackageKey, integerPackageKey, |
