Back to godoc.org
github.com/vito/booklit

Package booklit

v0.11.0
Latest Go to latest

The latest major version is .

Published: May 8, 2020 | License: MIT | Module: github.com/vito/booklit

Index

Variables

var Version = "0.0.0-dev"

overridden via linker flags

func ErrorPage

func ErrorPage(err error, w http.ResponseWriter)

func RegisterPlugin

func RegisterPlugin(name string, factory PluginFactory)

type AmbiguousReferenceError

type AmbiguousReferenceError struct {
	TagName          string
	DefinedLocations []ErrorLocation

	ErrorLocation
}

func (AmbiguousReferenceError) Error

func (err AmbiguousReferenceError) Error() string

func (AmbiguousReferenceError) PrettyHTML

func (err AmbiguousReferenceError) PrettyHTML(out io.Writer) error

func (AmbiguousReferenceError) PrettyPrint

func (err AmbiguousReferenceError) PrettyPrint(out io.Writer)

type AnnotationData

type AnnotationData struct {
	FilePath                  string
	EOF                       bool
	Lineno                    string
	Prefix, Annotated, Suffix string
}

type Aux

type Aux struct {
	Content
}

type Content

type Content interface {
	String() string

	IsFlow() bool

	Visit(Visitor) error
}

func Append

func Append(first Content, rest ...Content) Content

func StripAux

func StripAux(content Content) Content

type Definition

type Definition struct {
	Subject    Content
	Definition Content
}

type Definitions

type Definitions []Definition

func (Definitions) IsFlow

func (con Definitions) IsFlow() bool

func (Definitions) String

func (con Definitions) String() string

func (Definitions) Visit

func (con Definitions) Visit(visitor Visitor) error

type ErrorLocation

type ErrorLocation struct {
	FilePath     string
	NodeLocation ast.Location
	Length       int
}

func (ErrorLocation) Annotate

func (loc ErrorLocation) Annotate(msg string, args ...interface{}) string

func (ErrorLocation) AnnotateLocation

func (loc ErrorLocation) AnnotateLocation(out io.Writer) error

func (ErrorLocation) AnnotatedHTML

func (loc ErrorLocation) AnnotatedHTML(out io.Writer) error

type FailedFunctionError

type FailedFunctionError struct {
	Function string
	Err      error

	ErrorLocation
}

func (FailedFunctionError) Error

func (err FailedFunctionError) Error() string

func (FailedFunctionError) PrettyHTML

func (err FailedFunctionError) PrettyHTML(out io.Writer) error

func (FailedFunctionError) PrettyPrint

func (err FailedFunctionError) PrettyPrint(out io.Writer)

type Image

type Image struct {
	Path        string
	Description string
}

func (Image) IsFlow

func (con Image) IsFlow() bool

func (Image) String

func (con Image) String() string

func (Image) Visit

func (con Image) Visit(visitor Visitor) error
type Link struct {
	Content

	Target string
}

func (Link) Visit

func (con Link) Visit(visitor Visitor) error

type List

type List struct {
	Items []Content

	Ordered bool
}

func (List) IsFlow

func (con List) IsFlow() bool

func (List) String

func (con List) String() string

func (List) Visit

func (con List) Visit(visitor Visitor) error

type Paragraph

type Paragraph []Content

func (Paragraph) IsFlow

func (con Paragraph) IsFlow() bool

func (Paragraph) String

func (con Paragraph) String() string

func (Paragraph) Visit

func (con Paragraph) Visit(visitor Visitor) error

type ParseError

type ParseError struct {
	Err error

	ErrorLocation
}

func (ParseError) Error

func (err ParseError) Error() string

func (ParseError) PrettyHTML

func (err ParseError) PrettyHTML(out io.Writer) error

func (ParseError) PrettyPrint

func (err ParseError) PrettyPrint(out io.Writer)

type Partials

type Partials map[string]Content

type Plugin

type Plugin interface {
}

type PluginFactory

type PluginFactory func(*Section) Plugin

func LookupPlugin

func LookupPlugin(name string) (PluginFactory, bool)

type Preformatted

type Preformatted []Content

func (Preformatted) IsFlow

func (con Preformatted) IsFlow() bool

func (Preformatted) String

func (con Preformatted) String() string

func (Preformatted) Visit

func (con Preformatted) Visit(visitor Visitor) error

type PrettyError

type PrettyError interface {
	PrettyPrint(io.Writer)
	PrettyHTML(io.Writer) error
}

type Reference

type Reference struct {
	TagName string
	Content Content

	Tag *Tag

	// original location of the reference
	Location ast.Location
}

func (*Reference) Display

func (con *Reference) Display() Content

func (*Reference) IsFlow

func (con *Reference) IsFlow() bool

func (*Reference) String

func (con *Reference) String() string

func (*Reference) Visit

func (con *Reference) Visit(visitor Visitor) error

type Section

type Section struct {
	Path string

	Title Content
	Body  Content

	PrimaryTag Tag
	Tags       []Tag

	Parent   *Section
	Children []*Section

	Style    string
	Partials Partials

	SplitSections        bool
	PreventSplitSections bool

	ResetDepth bool

	OmitChildrenFromTableOfContents bool

	Processor       SectionProcessor
	PluginFactories []PluginFactory
	Plugins         []Plugin

	Location       ast.Location
	InvokeLocation ast.Location
}

func (*Section) AnchorTags

func (con *Section) AnchorTags() []Tag

func (*Section) Contains

func (con *Section) Contains(sub *Section) bool

func (*Section) Depth

func (con *Section) Depth() int

func (*Section) FilePath

func (con *Section) FilePath() string

func (*Section) FindTag

func (con *Section) FindTag(tagName string) []Tag

func (*Section) HasAnchors

func (con *Section) HasAnchors() bool

func (*Section) IsFlow

func (con *Section) IsFlow() bool

func (*Section) IsOrHasChild

func (con *Section) IsOrHasChild(sub *Section) bool

func (*Section) Next

func (con *Section) Next() *Section

func (*Section) NextSibling

func (con *Section) NextSibling() *Section

func (*Section) Number

func (con *Section) Number() string

func (*Section) PageDepth

func (con *Section) PageDepth() int

func (*Section) Partial

func (con *Section) Partial(name string) Content

func (*Section) Prev

func (con *Section) Prev() *Section

func (*Section) SetPartial

func (con *Section) SetPartial(name string, value Content)

func (*Section) SetTag

func (con *Section) SetTag(name string, title Content, loc ast.Location, optionalAnchor ...string)

func (*Section) SetTagAnchored

func (con *Section) SetTagAnchored(name string, title Content, loc ast.Location, content Content, anchor string)

func (*Section) SetTitle

func (con *Section) SetTitle(title Content, loc ast.Location, tags ...string)

func (*Section) SplitSectionsPrevented

func (con *Section) SplitSectionsPrevented() bool

func (*Section) String

func (con *Section) String() string

func (*Section) Top

func (con *Section) Top() *Section

func (*Section) UsePlugin

func (con *Section) UsePlugin(pf PluginFactory)

func (*Section) Visit

func (con *Section) Visit(visitor Visitor) error

type SectionProcessor

type SectionProcessor interface {
	EvaluateFile(*Section, string, []PluginFactory) (*Section, error)
	EvaluateNode(*Section, ast.Node, []PluginFactory) (*Section, error)
}

type Sequence

type Sequence []Content

func (Sequence) Contents

func (con Sequence) Contents() []Content

func (Sequence) IsFlow

func (con Sequence) IsFlow() bool

func (Sequence) String

func (con Sequence) String() string

func (Sequence) Visit

func (con Sequence) Visit(visitor Visitor) error

type String

type String string
var Empty String

func (String) IsFlow

func (str String) IsFlow() bool

func (String) String

func (str String) String() string

func (String) Visit

func (str String) Visit(visitor Visitor) error

type Style

type Style string
const (
	StyleVerbatim    Style = "verbatim"
	StyleItalic      Style = "italic"
	StyleBold        Style = "bold"
	StyleLarger      Style = "larger"
	StyleSmaller     Style = "smaller"
	StyleStrike      Style = "strike"
	StyleSuperscript Style = "superscript"
	StyleSubscript   Style = "subscript"
	StyleInset       Style = "inset"
	StyleAside       Style = "aside"
)

type Styled

type Styled struct {
	Style Style
	Block bool

	Content  Content
	Partials Partials
}

func (Styled) IsFlow

func (con Styled) IsFlow() bool

func (Styled) Partial

func (con Styled) Partial(name string) Content

func (Styled) String

func (con Styled) String() string

func (Styled) Visit

func (con Styled) Visit(visitor Visitor) error

type Table

type Table struct {
	Rows [][]Content
}

func (Table) IsFlow

func (con Table) IsFlow() bool

func (Table) String

func (con Table) String() string

func (Table) Visit

func (con Table) Visit(visitor Visitor) error

type TableOfContents

type TableOfContents struct {
	Section *Section
}

func (TableOfContents) IsFlow

func (con TableOfContents) IsFlow() bool

func (TableOfContents) String

func (con TableOfContents) String() string

func (TableOfContents) Visit

func (con TableOfContents) Visit(visitor Visitor) error

type Tag

type Tag struct {
	Name  string
	Title Content

	Section  *Section
	Location ast.Location
	Anchor   string

	Content Content
}

type Target

type Target struct {
	TagName  string
	Location ast.Location
	Title    Content
	Content  Content
}

func (Target) IsFlow

func (con Target) IsFlow() bool

func (Target) String

func (con Target) String() string

func (Target) Visit

func (con Target) Visit(visitor Visitor) error

type UndefinedFunctionError

type UndefinedFunctionError struct {
	Function string

	ErrorLocation
}

func (UndefinedFunctionError) Error

func (err UndefinedFunctionError) Error() string

func (UndefinedFunctionError) PrettyHTML

func (err UndefinedFunctionError) PrettyHTML(out io.Writer) error

func (UndefinedFunctionError) PrettyPrint

func (err UndefinedFunctionError) PrettyPrint(out io.Writer)

type UnknownTagError

type UnknownTagError struct {
	TagName string

	ErrorLocation
}

func (UnknownTagError) Error

func (err UnknownTagError) Error() string

func (UnknownTagError) PrettyHTML

func (err UnknownTagError) PrettyHTML(out io.Writer) error

func (UnknownTagError) PrettyPrint

func (err UnknownTagError) PrettyPrint(out io.Writer)

type Visitor

type Visitor interface {
	VisitString(String) error
	VisitSequence(Sequence) error
	VisitReference(*Reference) error
	VisitLink(Link) error
	VisitSection(*Section) error
	VisitParagraph(Paragraph) error
	VisitTableOfContents(TableOfContents) error
	VisitPreformatted(Preformatted) error
	VisitStyled(Styled) error
	VisitTarget(Target) error
	VisitImage(Image) error
	VisitList(List) error
	VisitTable(Table) error
	VisitDefinitions(Definitions) error
}

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier