diff options
author | mniip <mniip@mniip.com> | 2020-04-22 22:40:58 +0300 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-04-23 18:33:21 -0400 |
commit | 2c23e2e37d6c937a425c53da643aec90bda01ef6 (patch) | |
tree | fafda34b379a6238e712085d38386a1762238297 /compiler/GHC/Builtin/Utils.hs | |
parent | 72da0c29cd7c336cdce3b36d1dd9e8b65a53afbd (diff) | |
download | haskell-2c23e2e37d6c937a425c53da643aec90bda01ef6.tar.gz |
Include docs for non-primop entries in primops.txt as well
Diffstat (limited to 'compiler/GHC/Builtin/Utils.hs')
-rw-r--r-- | compiler/GHC/Builtin/Utils.hs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/compiler/GHC/Builtin/Utils.hs b/compiler/GHC/Builtin/Utils.hs index 1c7ede7c64..2b8b0bf698 100644 --- a/compiler/GHC/Builtin/Utils.hs +++ b/compiler/GHC/Builtin/Utils.hs @@ -75,7 +75,7 @@ import GHC.Builtin.Types.Literals ( typeNatTyCons ) import GHC.Hs.Doc import Control.Applicative ((<|>)) -import Data.List ( intercalate ) +import Data.List ( intercalate , find ) import Data.Array import Data.Maybe import qualified Data.Map as Map @@ -260,8 +260,15 @@ ghcPrimExports | tc <- funTyCon : exposedPrimTyCons, let n = tyConName tc ] ghcPrimDeclDocs :: DeclDocMap -ghcPrimDeclDocs = DeclDocMap $ Map.fromList $ mapMaybe mkDeclDoc allThePrimOps - where mkDeclDoc po = fmap (\doc -> (idName (primOpId po), mkHsDocString doc)) $ primOpDocs po +ghcPrimDeclDocs = DeclDocMap $ Map.fromList $ mapMaybe findName primOpDocs + where + names = map idName ghcPrimIds ++ + map (idName . primOpId) allThePrimOps ++ + map tyConName (funTyCon : exposedPrimTyCons) + findName (nameStr, doc) + | Just name <- find ((nameStr ==) . getOccString) names + = Just (name, mkHsDocString doc) + | otherwise = Nothing {- ************************************************************************ |