]> git.maquefel.me Git - brevno-suite/hugo/commitdiff
tpl: Misco GoDoc improvements
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Tue, 29 Nov 2022 10:38:21 +0000 (11:38 +0100)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sat, 3 Dec 2022 10:54:33 +0000 (11:54 +0100)
tpl/diagrams/diagrams.go
tpl/diagrams/init.go
tpl/internal/templatefuncsRegistry.go

index 7f0a171b2cb06d2e40a9e8ccfc287898aa228b19..9abe9e24c7e47f388806a2cc6fbae11d772f2e63 100644 (file)
@@ -59,11 +59,12 @@ func (d goatDiagram) Height() int {
        return d.d.Height
 }
 
-type Diagrams struct {
+// Namespace provides template functions for the diagrams namespace.
+type Namespace struct {
        d *deps.Deps
 }
 
-func (d *Diagrams) Goat(v any) SVGDiagram {
+func (d *Namespace) Goat(v any) SVGDiagram {
        var r io.Reader
 
        switch vv := v.(type) {
index fed85e6a3589ff015c51ebcb843ed99e4376aa32..005e942b720e616eadc13b6ea93d24e53dfb0123 100644 (file)
@@ -22,7 +22,7 @@ const name = "diagrams"
 
 func init() {
        f := func(d *deps.Deps) *internal.TemplateFuncsNamespace {
-               ctx := &Diagrams{
+               ctx := &Namespace{
                        d: d,
                }
 
index d06b55b4d06b536f94535ffc9f8f215a91b39f34..da9aa5d292b4c478f2e1eba27e8e4212657e8b73 100644 (file)
@@ -141,6 +141,22 @@ func (t goDocFunc) toJSON() ([]byte, error) {
        return buf.Bytes(), nil
 }
 
+// ToMap returns a limited map representation of the namespaces.
+func (namespaces TemplateFuncsNamespaces) ToMap() map[string]any {
+       m := make(map[string]any)
+       for _, ns := range namespaces {
+               mm := make(map[string]any)
+               for name, mapping := range ns.MethodMappings {
+                       mm[name] = map[string]any{
+                               "Examples": mapping.Examples,
+                               "Aliases":  mapping.Aliases,
+                       }
+               }
+               m[ns.Name] = mm
+       }
+       return m
+}
+
 // MarshalJSON returns the JSON encoding of namespaces.
 func (namespaces TemplateFuncsNamespaces) MarshalJSON() ([]byte, error) {
        var buf bytes.Buffer