1package ast
 2
 3import (
 4	"fmt"
 5
 6	gast "github.com/yuin/goldmark/ast"
 7)
 8
 9// A TaskCheckBox struct represents a checkbox of a task list.
10type TaskCheckBox struct {
11	gast.BaseInline
12	IsChecked bool
13}
14
15// Dump implements Node.Dump.
16func (n *TaskCheckBox) Dump(source []byte, level int) {
17	m := map[string]string{
18		"Checked": fmt.Sprintf("%v", n.IsChecked),
19	}
20	gast.DumpHelper(n, source, level, m, nil)
21}
22
23// KindTaskCheckBox is a NodeKind of the TaskCheckBox node.
24var KindTaskCheckBox = gast.NewNodeKind("TaskCheckBox")
25
26// Kind implements Node.Kind.
27func (n *TaskCheckBox) Kind() gast.NodeKind {
28	return KindTaskCheckBox
29}
30
31// NewTaskCheckBox returns a new TaskCheckBox node.
32func NewTaskCheckBox(checked bool) *TaskCheckBox {
33	return &TaskCheckBox{
34		IsChecked: checked,
35	}
36}