bookshelf-doc/DocGen4/Output/Class.lean

28 lines
713 B
Plaintext
Raw Normal View History

import DocGen4.Output.Template
import DocGen4.Output.Structure
namespace DocGen4
namespace Output
open scoped DocGen4.Jsx
2022-01-06 13:51:46 +00:00
open Lean
2022-02-04 21:48:08 +00:00
def classInstanceToHtml (name : Name) : HtmlM Html := do
2022-02-12 14:09:13 +00:00
pure <li><a href={←declNameToLink name}>{name.toString}</a></li>
2022-01-06 13:51:46 +00:00
2022-02-06 19:14:36 +00:00
def classInstancesToHtml (instances : Array Name) : HtmlM Html := do
let instancesHtml ← instances.mapM classInstanceToHtml
2022-02-12 14:09:13 +00:00
pure
<details «class»="instances">
2022-01-06 13:51:46 +00:00
<summary>Instances</summary>
<ul>
[instancesHtml]
</ul>
</details>
def classToHtml (i : ClassInfo) : HtmlM (Array Html) := do
2022-02-12 14:09:13 +00:00
pure $ (←structureToHtml i.toStructureInfo).push (←classInstancesToHtml i.instances)
end Output
end DocGen4