feat: Inductive constructor doc strings
parent
55f0399ed3
commit
601b895e89
|
@ -7,10 +7,21 @@ namespace Output
|
|||
|
||||
open scoped DocGen4.Jsx
|
||||
|
||||
def ctorToHtml (i : Process.NameInfo) : HtmlM Html := do
|
||||
let shortName := i.name.components'.head!.toString
|
||||
let name := i.name.toString
|
||||
pure <li class="constructor" id={name}>{shortName} : [←infoFormatToHtml i.type]</li>
|
||||
def ctorToHtml (c : Process.NameInfo) : HtmlM Html := do
|
||||
let shortName := c.name.components'.head!.toString
|
||||
let name := c.name.toString
|
||||
if let some doc := c.doc then
|
||||
let renderedDoc ← docStringToHtml doc
|
||||
pure
|
||||
<li class="constructor" id={name}>
|
||||
<div class="inductive_ctor_doc">[renderedDoc]</div>
|
||||
{shortName} : [←infoFormatToHtml c.type]
|
||||
</li>
|
||||
else
|
||||
pure
|
||||
<li class="constructor" id={name}>
|
||||
{shortName} : [←infoFormatToHtml c.type]
|
||||
</li>
|
||||
|
||||
def inductiveToHtml (i : Process.InductiveInfo) : HtmlM (Array Html) := do
|
||||
let constructorsHtml := <ul class="constructors">[← i.ctors.toArray.mapM ctorToHtml]</ul>
|
||||
|
|
|
@ -491,6 +491,11 @@ pre code { padding: 0 0; }
|
|||
margin-left: 2ex;
|
||||
}
|
||||
|
||||
.inductive_ctor_doc {
|
||||
text-indent: 2ex;
|
||||
padding-top: 1ex;
|
||||
}
|
||||
|
||||
.structure_field_doc {
|
||||
text-indent: 0;
|
||||
padding-top: 1ex;
|
||||
|
|
Loading…
Reference in New Issue