diff options
| author | Alex Biehl <alexbiehl@gmail.com> | 2017-06-03 20:37:28 +0200 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-06-03 20:37:28 +0200 | 
| commit | bfb3563f730fd1c973a6611a0fba3435fb1df489 (patch) | |
| tree | 78fe1e944e74c7840bc64cb03ea33b4e23e0ed7e /haddock-api/src/Haddock/GhcUtils.hs | |
| parent | 75e1e19d0d6c139c3c7d9b77b2928e6eb286dd48 (diff) | |
Allow user defined signatures for pattern synonyms (#631)
Diffstat (limited to 'haddock-api/src/Haddock/GhcUtils.hs')
| -rw-r--r-- | haddock-api/src/Haddock/GhcUtils.hs | 5 | 
1 files changed, 5 insertions, 0 deletions
diff --git a/haddock-api/src/Haddock/GhcUtils.hs b/haddock-api/src/Haddock/GhcUtils.hs index dcc1d834..4280cd80 100644 --- a/haddock-api/src/Haddock/GhcUtils.hs +++ b/haddock-api/src/Haddock/GhcUtils.hs @@ -88,6 +88,10 @@ filterSigNames p (ClassOpSig is_default ns ty) =    case filter (p . unLoc) ns of      []       -> Nothing      filtered -> Just (ClassOpSig is_default filtered ty) +filterSigNames p (PatSynSig ns ty) = +  case filter (p . unLoc) ns of +    []       -> Nothing +    filtered -> Just (PatSynSig filtered ty)  filterSigNames _ _                           = Nothing  ifTrueJust :: Bool -> name -> Maybe name @@ -110,6 +114,7 @@ sigNameNoLoc _                         = []  isUserLSig :: LSig name -> Bool  isUserLSig (L _(TypeSig {}))    = True  isUserLSig (L _(ClassOpSig {})) = True +isUserLSig (L _(PatSynSig {}))  = True  isUserLSig _                    = False  | 
