func main() { … } func convert(w io.Writer, r io.Reader) error { … } type Style … const Bold … const Italic … const Code … var cssRules … func parseStyles(style *html.Node) error { … } var newlineRun … func limitNewlineRuns(s string) string { … } func makeHeadings(body string) string { … } func isBoldTitle(s string) bool { … } func indent(buf *bytes.Buffer, s string) { … } func unwrap(buf *bytes.Buffer, s string) { … } func text(n *html.Node) string { … } func childText(node *html.Node) string { … } func highlight(node *html.Node, char string) string { … } type selector … func isTag(a atom.Atom) selector { … } func hasClass(name string) selector { … } func hasStyle(s Style) selector { … } func attr(node *html.Node, key string) (value string) { … } func find(n *html.Node, fn selector) *html.Node { … } func walk(n *html.Node, fn selector) { … }