mirror of
https://github.com/GaloisInc/cryptol.git
synced 2024-09-19 18:08:37 +03:00
parent
0c88cc328d
commit
e47ebcbc8a
@ -244,16 +244,17 @@ showTypeHelp ctxparams env nameEnv name =
|
|||||||
|
|
||||||
fromNominal =
|
fromNominal =
|
||||||
do nt <- Map.lookup name (M.ifNominalTypes env)
|
do nt <- Map.lookup name (M.ifNominalTypes env)
|
||||||
let decl = pp nt $$
|
let kw = case T.ntDef nt of
|
||||||
vcat
|
T.Struct {} -> "newtype"
|
||||||
[ pp x <+> text ":" <+> pp t
|
T.Enum {} -> "enum"
|
||||||
| case T.ntDef nt of
|
let decl =
|
||||||
T.Struct {} -> False
|
vcat
|
||||||
-- Don't show constructor, as it will be shown
|
[ kw <+> pp (T.ntName nt) <.> ":" <+> pp (T.kindOf nt)
|
||||||
-- separately
|
, ""
|
||||||
_ -> True
|
, "Constructors:" <+>
|
||||||
, (x,t) <- T.nominalTypeConTypes nt
|
commaSep
|
||||||
]
|
(map (pp . fst) (T.nominalTypeConTypes nt))
|
||||||
|
]
|
||||||
return $ doShowTyHelp nameEnv decl (T.ntDoc nt)
|
return $ doShowTyHelp nameEnv decl (T.ntDoc nt)
|
||||||
|
|
||||||
fromPrimType =
|
fromPrimType =
|
||||||
@ -312,8 +313,8 @@ showConHelp env nameEnv qname name =
|
|||||||
where
|
where
|
||||||
getDocs nt =
|
getDocs nt =
|
||||||
case T.ntDef nt of
|
case T.ntDef nt of
|
||||||
T.Struct {} -> [ T.ntDoc nt ]
|
T.Struct {} -> [ Nothing ]
|
||||||
T.Enum cs -> map T.ecDoc cs
|
T.Enum cs -> map (Just . T.ecDoc) cs
|
||||||
|
|
||||||
addCons nt mp = foldr (addCon nt) mp
|
addCons nt mp = foldr (addCon nt) mp
|
||||||
(zip (T.nominalTypeConTypes nt) (getDocs nt))
|
(zip (T.nominalTypeConTypes nt) (getDocs nt))
|
||||||
@ -323,7 +324,7 @@ showConHelp env nameEnv qname name =
|
|||||||
[ "Constructor of" <+> pp (T.ntName nt)
|
[ "Constructor of" <+> pp (T.ntName nt)
|
||||||
, indent 4 $ hsep [ pp qname, ":", pp t ]
|
, indent 4 $ hsep [ pp qname, ":", pp t ]
|
||||||
])
|
])
|
||||||
doShowDocString d
|
maybe (pure ()) doShowDocString d
|
||||||
|
|
||||||
|
|
||||||
showValHelp ::
|
showValHelp ::
|
||||||
|
@ -2,10 +2,9 @@ Loading module Cryptol
|
|||||||
Loading module Cryptol
|
Loading module Cryptol
|
||||||
Loading module Main
|
Loading module Main
|
||||||
|
|
||||||
enum E1
|
enum E1: *
|
||||||
A : E1
|
|
||||||
B : E1
|
Constructors: A, B, C
|
||||||
C : E1
|
|
||||||
|
|
||||||
Custom docs fo E1
|
Custom docs fo E1
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user