diff --git a/pkg/parser/context.go b/pkg/parser/context.go index 5e22469d..894b87bc 100644 --- a/pkg/parser/context.go +++ b/pkg/parser/context.go @@ -25,7 +25,7 @@ func NewParseContext(config *configuration.Configuration, opts ...Option) *Parse opts = append(opts, Entrypoint("DocumentFragment")) opts = append(opts, GlobalStore(frontMatterKey, true)) opts = append(opts, GlobalStore(documentHeaderKey, true)) - opts = append(opts, GlobalStore(enabledSubstitutions, []string{Attributes})) + opts = append(opts, GlobalStore(enabledSubstitutions, []string{AttributeRefs})) opts = append(opts, GlobalStore(usermacrosKey, config.Macros)) return &ParseContext{ filename: config.Filename, diff --git a/pkg/parser/delimited_block_listing_test.go b/pkg/parser/delimited_block_listing_test.go index 0b200107..a91f7050 100644 --- a/pkg/parser/delimited_block_listing_test.go +++ b/pkg/parser/delimited_block_listing_test.go @@ -406,6 +406,53 @@ import Expect(ParseDocument(source)).To(MatchDocument(expected)) }) + It("with quoted text and link in title", func() { + source := `.a *link* to https://github.com[GitHub] +---- +content +----` + expected := &types.Document{ + Elements: []interface{}{ + &types.DelimitedBlock{ + Kind: types.Listing, + Attributes: types.Attributes{ + types.AttrTitle: []interface{}{ + &types.StringElement{ + Content: "a ", + }, + &types.QuotedText{ + Kind: types.SingleQuoteBold, + Elements: []interface{}{ + &types.StringElement{ + Content: "link", + }, + }, + }, + &types.StringElement{ + Content: " to ", + }, + &types.InlineLink{ + Attributes: types.Attributes{ + types.AttrInlineLinkText: "GitHub", + }, + Location: &types.Location{ + Scheme: "https://", + Path: "github.com", + }, + }, + }, + }, + Elements: []interface{}{ + &types.StringElement{ + Content: "content", + }, + }, + }, + }, + } + Expect(ParseDocument(source)).To(MatchDocument(expected)) + }) + Context("with custom substitutions", func() { // testing custom substitutions on listing blocks only, as diff --git a/pkg/parser/document_preprocessing.go b/pkg/parser/document_preprocessing.go index 98ae9b6c..adba6f64 100644 --- a/pkg/parser/document_preprocessing.go +++ b/pkg/parser/document_preprocessing.go @@ -91,7 +91,7 @@ func preprocess(ctx *ParseContext, source io.Reader) (string, error) { func includeFile(ctx *ParseContext, incl *types.FileInclusion) (string, error) { ctx.Opts = append(ctx.Opts, GlobalStore(documentHeaderKey, false)) if l, ok := incl.GetLocation().Path.([]interface{}); ok { - l, _, err := replaceAttributeRefsInSlice(ctx, l) + l, _, err := replaceAttributeRefsInSlice(ctx, l, noneSubstitutions()) if err != nil { return "", errors.Errorf("Unresolved directive in %s - %s", ctx.filename, incl.RawText) } diff --git a/pkg/parser/document_processing_apply_substitutions.go b/pkg/parser/document_processing_apply_substitutions.go index da559bb0..392eeb03 100644 --- a/pkg/parser/document_processing_apply_substitutions.go +++ b/pkg/parser/document_processing_apply_substitutions.go @@ -67,15 +67,15 @@ func applySubstitutionsOnElement(ctx *ParseContext, element interface{}, opts .. case *types.DocumentHeader: return applySubstitutionsOnDocumentHeader(ctx, b, opts...) case *types.Section: - return applySubstitutionsOnBlockWithTitle(ctx, b, opts...) + return applySubstitutionsOnWithTitle(ctx, b, opts...) case *types.Table: return applySubstitutionsOnTable(ctx, b, opts...) case *types.ListElementContinuation: return applySubstitutionsOnElement(ctx, b.Element, opts...) case types.WithElements: - return applySubstitutionsOnBlockWithElements(ctx, b, opts...) + return applySubstitutionsOnWithElements(ctx, b, opts...) case types.WithLocation: - return applySubstitutionsOnBlockWithLocation(ctx, b, opts...) + return applySubstitutionsOnWithLocation(ctx, b, opts...) default: // do nothing return nil @@ -83,7 +83,7 @@ func applySubstitutionsOnElement(ctx *ParseContext, element interface{}, opts .. } func applySubstitutionsOnDocumentHeader(ctx *ParseContext, b *types.DocumentHeader, opts ...Option) error { - // process attribute declarations and resets defined in the header + // process attribute declarations and resets defined in the header before the title itself for _, elmt := range b.Elements { if err := applySubstitutionsOnElement(ctx, elmt, opts...); err != nil { return err @@ -95,12 +95,12 @@ func applySubstitutionsOnDocumentHeader(ctx *ParseContext, b *types.DocumentHead if revision := b.Revision(); revision != nil { ctx.attributes.setAll(revision.Expand()) } - return applySubstitutionsOnBlockWithTitle(ctx, b, opts...) + return applySubstitutionsOnWithTitle(ctx, b, opts...) } -func applySubstitutionsOnBlockWithTitle(ctx *ParseContext, b types.WithTitle, opts ...Option) error { +func applySubstitutionsOnWithTitle(ctx *ParseContext, b types.WithTitle, opts ...Option) error { log.Debugf("processing element with title of type '%T' in 3 steps", b) - if err := replaceAttributeRefsInBlockAttributes(ctx, b); err != nil { + if err := applySubstitutionsOnAttributes(ctx, b, headerSubstitutions()); err != nil { return err } opts = append(opts, Entrypoint("HeaderGroup")) @@ -114,7 +114,7 @@ func applySubstitutionsOnBlockWithTitle(ctx *ParseContext, b types.WithTitle, op } func applySubstitutionsOnTable(ctx *ParseContext, t *types.Table, opts ...Option) error { - if err := replaceAttributeRefsInBlockAttributes(ctx, t); err != nil { + if err := applySubstitutionsOnAttributes(ctx, t, headerSubstitutions()); err != nil { return err } // also, deal with special `cols` attribute @@ -128,14 +128,14 @@ func applySubstitutionsOnTable(ctx *ParseContext, t *types.Table, opts ...Option } if t.Header != nil { for _, c := range t.Header.Cells { - if err := applySubstitutionsOnBlockWithElements(ctx, c, opts...); err != nil { + if err := applySubstitutionsOnWithElements(ctx, c, opts...); err != nil { return err } } } for _, r := range t.Rows { for _, c := range r.Cells { - if err := applySubstitutionsOnBlockWithElements(ctx, c, opts...); err != nil { + if err := applySubstitutionsOnWithElements(ctx, c, opts...); err != nil { return err } } @@ -146,7 +146,7 @@ func applySubstitutionsOnTable(ctx *ParseContext, t *types.Table, opts ...Option } if t.Footer != nil { for _, c := range t.Footer.Cells { - if err := applySubstitutionsOnBlockWithElements(ctx, c, opts...); err != nil { + if err := applySubstitutionsOnWithElements(ctx, c, opts...); err != nil { return err } } @@ -154,8 +154,11 @@ func applySubstitutionsOnTable(ctx *ParseContext, t *types.Table, opts ...Option return nil } -func applySubstitutionsOnBlockWithElements(ctx *ParseContext, b types.WithElements, opts ...Option) error { - if err := replaceAttributeRefsInBlockAttributes(ctx, b); err != nil { +func applySubstitutionsOnWithElements(ctx *ParseContext, b types.WithElements, opts ...Option) error { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("applying substitutions on 'WithElements' of type '%T'", b) + } + if err := applySubstitutionsOnAttributes(ctx, b, headerSubstitutions()); err != nil { return err } if s := b.GetAttributes().GetAsStringWithDefault(types.AttrStyle, ""); s == types.Passthrough { @@ -182,7 +185,8 @@ func applySubstitutionsOnBlockWithElements(ctx *ParseContext, b types.WithElemen opts = append(opts, Entrypoint("Substitutions")) switch b := b.(type) { case *types.LabeledListElement: - if b.Term, err = parseElements(b.Term, subs, opts...); err != nil { + // if b.Term, err = parseElements(b.Term, subs, opts...); err != nil { // TODO: call `processSubstitutions` instead of `parseElements`? + if b.Term, err = processSubstitutions(ctx, b.Term, subs, opts...); err != nil { return err } for _, e := range b.GetElements() { @@ -227,17 +231,44 @@ func applySubstitutionsOnBlockWithElements(ctx *ParseContext, b types.WithElemen } } -func applySubstitutionsOnBlockWithLocation(ctx *ParseContext, b types.WithLocation, _ ...Option) error { - _, _, err := replaceAttributeRefs(ctx, b) +func extractMarkdownQuoteAttribution(elements []interface{}) ([]interface{}, string) { + // first, check if last line is an attribution (author) + if len(elements) == 0 { + return elements, "" + } + log.Debugf("attempting to extract markdown-style quote block author") + if l, ok := elements[len(elements)-1].(types.RawLine); ok { + a, err := ParseReader("", strings.NewReader(string(l)), Entrypoint("MarkdownQuoteAttribution")) + // assume that the last line is not an author attribution if an error occurred + if err != nil { + log.Debugf("failed to extract markdown-style quote block author: %v", err) + return elements, "" + } + log.Debugf("found attribution in markdown block: '%[1]v' (%[1]T)", a) + if a, ok := a.(string); ok { + return elements[:len(elements)-1], a + } + } + return elements, "" +} + +func applySubstitutionsOnWithLocation(ctx *ParseContext, b types.WithLocation, _ ...Option) error { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("applying substitution on WithLocation of type '%T'", b) + } + _, _, err := replaceAttributeRefs(ctx, b, headerSubstitutions()) return err } func processSubstitutions(ctx *ParseContext, elements []interface{}, subs []string, opts ...Option) ([]interface{}, error) { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("processing substitutions on %d element(s) with %s", len(elements), spew.Sdump(subs)) + } // split the steps if attribute substitution is enabled for i, s := range subs { - if s == Attributes { + if s == AttributeRefs { var err error - // apply until Attribute substitution included + // apply until Attribute substitution included // TODO: not all `subs`, then? if elements, err = parseElements(elements, subs, opts...); err != nil { return nil, err } @@ -245,32 +276,42 @@ func processSubstitutions(ctx *ParseContext, elements []interface{}, subs []stri return replaceAttributeRefsAndReparse(ctx, elements, subs[i+1:], opts...) } } - return parseElements(elements, subs, opts...) + elements, err := parseElements(elements, subs, opts...) + if err != nil { + return nil, err + } + // also, reparse some attributes (`text`, etc.) if needed + err = reparseAttributesInElements(elements, subs, opts...) + return elements, err + // return parseElements(elements, subs, opts...) } // replaceAttributeRefsAndReparse recursively replaces the attribute refs, but only reparse the portions in which the replacements happened. // for example: the location of an inline link, but not the whole paragraph. func replaceAttributeRefsAndReparse(ctx *ParseContext, elements []interface{}, subs []string, opts ...Option) ([]interface{}, error) { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("replacing attribute refs in %d element(s)", len(elements)) + } found := false for i, e := range elements { switch e := e.(type) { case types.WithElements: // replace in attributes - if err := replaceAttributeRefsInBlockAttributes(ctx, e); err != nil { + if err := applySubstitutionsOnAttributes(ctx, e, subs); err != nil { return nil, err } - // replace in elements + // replace in elements // TODO: need? (elements will be parsed again below) if elements, err := replaceAttributeRefsAndReparse(ctx, e.GetElements(), subs, opts...); err != nil { return nil, err } else if err := e.SetElements(elements); err != nil { return nil, err } default: - e, f, err := replaceAttributeRefs(ctx, e) + e, f, err := replaceAttributeRefs(ctx, e, subs) if err != nil { return nil, err } - found = found || f + found = found || f // TODO: call `parseElements` here instead of after the whole loop? elements[i] = e } } @@ -284,6 +325,125 @@ func replaceAttributeRefsAndReparse(ctx *ParseContext, elements []interface{}, s return elements, nil } +func applySubstitutionsOnAttributes(ctx *ParseContext, b types.WithAttributes, subs []string) error { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("applying substitutions in attributes of element of type '%T':\n%s", b, spew.Sdump(b.GetAttributes())) + } + attrs := b.GetAttributes() + for k, v := range attrs { + switch v := v.(type) { + case []interface{}: + v, _, err := replaceAttributeRefsInSlice(ctx, v, subs) + if err != nil { + return err + } + attrs[k] = types.Reduce(v) + case types.Roles: + roles := make(types.Roles, len(v)) + for i, r := range v { + r, _, err := replaceAttributeRefs(ctx, r, noneSubstitutions()) + if err != nil { + return err + } + roles[i] = types.Reduce(r) + } + attrs[k] = roles + case types.Options: + options := make(types.Options, len(v)) + for i, r := range v { + r, _, err := replaceAttributeRefs(ctx, r, noneSubstitutions()) + if err != nil { + return err + } + options[i] = types.Reduce(r) + } + attrs[k] = options + default: + // do nothing + } + } + b.SetAttributes(attrs) + return reparseAttributes(b, subs) + // return nil +} + +func replaceAttributeRefsInSlice(ctx *ParseContext, elements []interface{}, subs []string) ([]interface{}, bool, error) { + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("replacing attribute refs in slice %s", spew.Sdump(elements)) + // } + found := false + for i, e := range elements { + v, f, err := replaceAttributeRefs(ctx, e, subs) + if err != nil { + return nil, false, err + } + elements[i] = v + found = found || f + } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("replaced attribute refs: %s", spew.Sdump(elements)) + // } + return elements, found, nil // reduce elements to return a single `string` when it's possible +} + +func replaceAttributeRefs(ctx *ParseContext, b interface{}, subs []string) (interface{}, bool, error) { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("replacing attribute refs in element of type '%T'", b) + } + switch b := b.(type) { + case []interface{}: + return replaceAttributeRefsInSlice(ctx, b, subs) + case types.WithLocation: + // replace in attributes + if err := applySubstitutionsOnAttributes(ctx, b, subs); err != nil { + return nil, false, err + } + // replace in location + if b.GetLocation() == nil { + // skip + return b, false, nil + } + p, found, err := replaceAttributeRefs(ctx, b.GetLocation().Path, subs) + if err != nil { + return nil, false, err + } + b.GetLocation().SetPath(p) + return b, found, nil + case *types.AttributeReference: + e, err := replaceAttributeRef(ctx, b) + if err != nil { + return nil, false, err + } + return e, true, nil + case *types.CounterSubstitution: + s, err := counterToStringElement(ctx, b) + if err != nil { + return nil, false, err + } + return &types.StringElement{ + Content: s, + }, true, nil + default: + // do nothing, keep as-is + return b, false, nil + } +} + +func replaceAttributeRef(ctx *ParseContext, a *types.AttributeReference) (*types.StringElement, error) { + s, found, err := ctx.attributes.getAsString(a.Name) + if err != nil { + return nil, err + } else if !found { + log.Warnf("unable to find attribute '%s'", a.Name) + return &types.StringElement{ + Content: "{" + a.Name + "}", + }, nil + } + return &types.StringElement{ + Content: s, + }, nil +} + // parseElements parse the elements, using placeholders for existing "structured" elements (ie, not RawLine or StringElements) // Also, does not parse the content of the placeholders, but restores them at the end. func parseElements(elements []interface{}, subs []string, opts ...Option) ([]interface{}, error) { @@ -302,31 +462,69 @@ func parseElements(elements []interface{}, subs []string, opts ...Option) ([]int if !ok { return nil, fmt.Errorf("unexpected type of content after parsing elements: '%T'", result) } + elements = placeholders.restore(elmts) if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("parsed content:\n%s", spew.Sdump(elmts)) + log.Debugf("parsed content:\n%s", spew.Sdump(elements)) } - return placeholders.restore(elmts) + return elements, nil } -func extractMarkdownQuoteAttribution(elements []interface{}) ([]interface{}, string) { - // first, check if last line is an attribution (author) - if len(elements) == 0 { - return elements, "" +func reparseAttributesInElements(elements []interface{}, subs []string, opts ...Option) error { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("reparsing attributes in elements") } - log.Debugf("attempting to extract markdown-style quote block author") - if l, ok := elements[len(elements)-1].(types.RawLine); ok { - a, err := ParseReader("", strings.NewReader(string(l)), Entrypoint("MarkdownQuoteAttribution")) - // assume that the last line is not an author attribution if an error occurred - if err != nil { - log.Debugf("failed to extract markdown-style quote block author: %v", err) - return elements, "" + for _, e := range elements { + if e, ok := e.(types.WithElements); ok { + if err := reparseAttributesInElements(e.GetElements(), subs, opts...); err != nil { + return err + } } - log.Debugf("found attribution in markdown block: '%[1]v' (%[1]T)", a) - if a, ok := a.(string); ok { - return elements[:len(elements)-1], a + if e, ok := e.(types.WithAttributes); ok { + err := reparseAttributes(e, subs, opts...) + if err != nil { + return err + } + // e.SetAttributes(attrs) // needed? } } - return elements, "" + return nil +} + +func reparseAttributes(e types.WithAttributes, subs []string, opts ...Option) error { + attributes := e.GetAttributes() + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("reparsing attributes in %s", spew.Sdump(attributes)) + } + for k, v := range attributes { + switch k { + case types.AttrTitle, types.AttrXRefLabel, types.AttrInlineLinkText, types.AttrImageAlt: + v, err := ReparseAttributeValue(v, subs, opts...) + if err != nil { + return err + } + attributes[k] = types.Reduce(v) + } + } + return nil +} + +func ReparseAttributeValue(value interface{}, subs []string, opts ...Option) ([]interface{}, error) { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("reparsing attribute value: %s", spew.Sdump(value)) + } + switch v := value.(type) { + case []interface{}: + return parseElements(v, subs, append(opts, Entrypoint("AttributeStructuredValue"))...) + case string: + return parseElements( + []interface{}{ + types.RawLine(v), + }, + subs, + append(opts, Entrypoint("AttributeStructuredValue"))...) + default: + return nil, fmt.Errorf("unexpected type of value: %T", value) + } } func serialize(content []interface{}) ([]byte, *placeholders) { @@ -383,13 +581,13 @@ func (p *placeholders) add(element interface{}) *types.ElementPlaceHolder { } // replace the placeholders with their original element in the given elements -func (p *placeholders) restore(elements []interface{}) ([]interface{}, error) { +func (p *placeholders) restore(elements []interface{}) []interface{} { // if log.IsLevelEnabled(log.DebugLevel) { // log.Debugf("restoring placeholders in\n%s", spew.Sdump(elements)) // } // skip if there's nothing to restore if len(p.elements) == 0 { - return elements, nil + return elements } for i, e := range elements { if e, ok := e.(*types.ElementPlaceHolder); ok { @@ -399,7 +597,7 @@ func (p *placeholders) restore(elements []interface{}) ([]interface{}, error) { // if log.IsLevelEnabled(log.DebugLevel) { // log.Debugf("restored elements:\n%v", spew.Sdump(elements)) // } - return elements, nil + return elements } // ---------------------------------------------- @@ -533,7 +731,7 @@ func isIncrementalSubstitution(sub string) bool { func normalSubstitutions() []string { return []string{ InlinePassthroughs, - Attributes, + AttributeRefs, SpecialCharacters, Quotes, Replacements, @@ -545,7 +743,18 @@ func normalSubstitutions() []string { func headerSubstitutions() []string { return []string{ InlinePassthroughs, - Attributes, + AttributeRefs, + SpecialCharacters, + Quotes, + Macros, + Replacements, + } +} + +func HeaderSubstitutions() []string { + return []string{ + InlinePassthroughs, + AttributeRefs, SpecialCharacters, Quotes, Macros, @@ -615,8 +824,8 @@ const ( // enabledSubstitutions the key in which enabled substitutions are stored in the parser's GlobalStore enabledSubstitutions string = "enabled_substitutions" - // Attributes the "attributes" substitution - Attributes string = "attributes" + // AttributeRefs the "attribute_refs" substitution + AttributeRefs string = "attributes" // TODO: no need to export // Callouts the "callouts" substitution Callouts string = "callouts" // InlinePassthroughs the "inline_passthrough" substitution @@ -671,135 +880,3 @@ func counterToStringElement(ctx *ParseContext, c *types.CounterSubstitution) (st return "", fmt.Errorf("unexpected type of counter value: '%T'", counter) } } - -func replaceAttributeRefsInBlockAttributes(ctx *ParseContext, b types.WithAttributes) error { - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("replacing attribute refs in attributes of block of type '%T':\n%s", b, spew.Sdump(b.GetAttributes())) - } - attrs := b.GetAttributes() - for k, v := range attrs { - switch v := v.(type) { - case []interface{}: - v, _, err := replaceAttributeRefsInSlice(ctx, v) - if err != nil { - return err - } - attrs[k] = types.Reduce(v) - case types.Roles: - roles := make(types.Roles, len(v)) - for i, r := range v { - r, _, err := replaceAttributeRefs(ctx, r) - if err != nil { - return err - } - roles[i] = types.Reduce(r) - } - attrs[k] = roles - case types.Options: - options := make(types.Options, len(v)) - for i, r := range v { - r, _, err := replaceAttributeRefs(ctx, r) - if err != nil { - return err - } - options[i] = types.Reduce(r) - } - attrs[k] = options - default: - // do nothing - } - } - b.SetAttributes(attrs) - return nil -} - -func replaceAttributeRefsInSlice(ctx *ParseContext, elements []interface{}) ([]interface{}, bool, error) { - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("replacing attribute refs in slice %s", spew.Sdump(elements)) - } - found := false - for i, e := range elements { - v, f, err := replaceAttributeRefs(ctx, e) - if err != nil { - return nil, false, err - } - elements[i] = v - found = found || f - } - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("replaced attribute refs: %s", spew.Sdump(elements)) - } - return elements, found, nil // reduce elements to return a single `string` when it's possible -} - -func replaceAttributeRefs(ctx *ParseContext, b interface{}) (interface{}, bool, error) { - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("replacing attribute refs in %s", spew.Sdump(b)) - } - switch b := b.(type) { - case []interface{}: - return replaceAttributeRefsInSlice(ctx, b) - case types.WithElements: - // replace in attributes - if err := replaceAttributeRefsInBlockAttributes(ctx, b); err != nil { - return nil, false, err - } - // replace in elements - elements, found, err := replaceAttributeRefsInSlice(ctx, b.GetElements()) - if err != nil { - return nil, false, err - } - if err := b.SetElements(elements); err != nil { - return nil, false, err - } - return b, found, nil - case types.WithLocation: - // replace in attributes - if err := replaceAttributeRefsInBlockAttributes(ctx, b); err != nil { - return nil, false, err - } - // replace in location - if b.GetLocation() == nil { - // skip - return b, false, nil - } - p, found, err := replaceAttributeRefs(ctx, b.GetLocation().Path) - if err != nil { - return nil, false, err - } - b.GetLocation().SetPath(p) - return b, found, nil - case *types.AttributeReference: - e, err := replaceAttributeRef(ctx, b) - if err != nil { - return nil, false, err - } - return e, true, nil - case *types.CounterSubstitution: - s, err := counterToStringElement(ctx, b) - if err != nil { - return nil, false, err - } - return &types.StringElement{ - Content: s, - }, true, nil - default: - // do nothing, keep as-is - return b, false, nil - } -} - -func replaceAttributeRef(ctx *ParseContext, a *types.AttributeReference) (*types.StringElement, error) { - s, found, err := ctx.attributes.getAsString(a.Name) - if err != nil { - return nil, err - } else if !found { - log.Warnf("unable to find attribute '%s'", a.Name) - return &types.StringElement{ - Content: "{" + a.Name + "}", - }, nil - } - return &types.StringElement{ - Content: s, - }, nil -} diff --git a/pkg/parser/document_processing_parse_fragments.go b/pkg/parser/document_processing_parse_fragments.go index 6d80d5e4..a340149a 100644 --- a/pkg/parser/document_processing_parse_fragments.go +++ b/pkg/parser/document_processing_parse_fragments.go @@ -121,8 +121,8 @@ func parseDelimitedBlockElements(ctx *ParseContext, b *types.DelimitedBlock) err b.Elements = e[:len(e)-1] return nil } - b.Elements, err = placeholders.restore(e) - return err + b.Elements = placeholders.restore(e) + return nil default: return errors.Errorf("unexpected type of result after parsing elements of delimited block: '%T'", e) } diff --git a/pkg/parser/generate.go b/pkg/parser/generate.go index e68b20ee..212fd9ff 100644 --- a/pkg/parser/generate.go +++ b/pkg/parser/generate.go @@ -1,3 +1,3 @@ package parser -//go:generate pigeon -optimize-parser -optimize-grammar -alternate-entrypoints DocumentRawLine,DocumentFragment,Substitutions,DelimitedBlockElements,HeaderGroup,FileLocation,IncludedFileLine,MarkdownQuoteAttribution,BlockAttributes,InlineAttributes,TableColumnsAttribute,LineRanges,TagRanges -o parser.go parser.peg +//go:generate pigeon -optimize-parser -optimize-grammar -alternate-entrypoints DocumentRawLine,DocumentFragment,Substitutions,AttributeStructuredValue,DelimitedBlockElements,HeaderGroup,FileLocation,IncludedFileLine,MarkdownQuoteAttribution,BlockAttributes,InlineAttributes,TableColumnsAttribute,LineRanges,TagRanges -o parser.go parser.peg diff --git a/pkg/parser/parse_attribute_value.go b/pkg/parser/parse_attribute_value.go deleted file mode 100644 index 91e90354..00000000 --- a/pkg/parser/parse_attribute_value.go +++ /dev/null @@ -1,13 +0,0 @@ -package parser - -import ( - "github.com/bytesparadise/libasciidoc/pkg/configuration" - "github.com/bytesparadise/libasciidoc/pkg/types" -) - -func ParseAttributeValue(value string) ([]interface{}, error) { - ctx := NewParseContext(configuration.NewConfiguration()) - return processSubstitutions(ctx, []interface{}{ - types.RawLine(value), - }, headerSubstitutions(), Entrypoint("HeaderGroup")) -} diff --git a/pkg/parser/parse_attribute_value_test.go b/pkg/parser/parse_attribute_value_test.go deleted file mode 100644 index f92080e6..00000000 --- a/pkg/parser/parse_attribute_value_test.go +++ /dev/null @@ -1,55 +0,0 @@ -package parser_test - -import ( - "github.com/bytesparadise/libasciidoc/pkg/parser" - "github.com/bytesparadise/libasciidoc/pkg/types" - - . "github.com/onsi/ginkgo/v2" - . "github.com/onsi/gomega" -) - -var _ = Describe("parse attribute value", func() { - - It("should parse content with special characters", func() { - source := "

Table of Contents

" - expected := []interface{}{ - &types.SpecialCharacter{ - Name: "<", - }, - &types.StringElement{ - Content: "h3", - }, - &types.SpecialCharacter{ - Name: ">", - }, - &types.StringElement{ - Content: "Table of Contents", - }, - &types.SpecialCharacter{ - Name: "<", - }, - &types.StringElement{ - Content: "/h3", - }, - &types.SpecialCharacter{ - Name: ">", - }, - } - Expect(parser.ParseAttributeValue(source)).To(Equal(expected)) - }) - - It("should parse content within inline passthrough", func() { - source := "pass:[

Table of Contents

]" - expected := []interface{}{ - &types.InlinePassthrough{ - Kind: types.PassthroughMacro, - Elements: []interface{}{ - &types.StringElement{ - Content: "

Table of Contents

", - }, - }, - }, - } - Expect(parser.ParseAttributeValue(source)).To(Equal(expected)) - }) -}) diff --git a/pkg/parser/parser.go b/pkg/parser/parser.go index e7c58873..d751cf04 100644 --- a/pkg/parser/parser.go +++ b/pkg/parser/parser.go @@ -13,6 +13,7 @@ import ( "sort" "strconv" "strings" + "sync" "unicode" "unicode/utf8" @@ -42,13276 +43,1528 @@ var g = &grammar{ pos: position{line: 28, col: 9, offset: 515}, name: "AttributeDeclaration", }, - &actionExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - run: (*parser).callonDocumentRawLine6, - expr: &seqExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 364, col: 19, offset: 11171}, - val: ":!", - ignoreCase: false, - want: "\":!\"", - }, - &labeledExpr{ - pos: position{line: 364, col: 24, offset: 11176}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine10, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 364, col: 45, offset: 11197}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 364, col: 49, offset: 11201}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine17, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine20, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - run: (*parser).callonDocumentRawLine27, - expr: &seqExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 366, col: 9, offset: 11292}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 366, col: 13, offset: 11296}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine31, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 366, col: 34, offset: 11317}, - val: "!:", - ignoreCase: false, - want: "\"!:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 366, col: 39, offset: 11322}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine38, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine41, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 29, col: 11, offset: 546}, + name: "AttributeReset", }, &ruleRefExpr{ pos: position{line: 30, col: 11, offset: 571}, name: "FileInclusion", }, - &actionExpr{ - pos: position{line: 71, col: 10, offset: 1773}, - run: (*parser).callonDocumentRawLine49, - expr: &seqExpr{ - pos: position{line: 71, col: 10, offset: 1773}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 71, col: 10, offset: 1773}, - val: "ifdef::", - ignoreCase: false, - want: "\"ifdef::\"", - }, - &labeledExpr{ - pos: position{line: 71, col: 20, offset: 1783}, - label: "name", - expr: &actionExpr{ - pos: position{line: 128, col: 28, offset: 3562}, - run: (*parser).callonDocumentRawLine53, - expr: &oneOrMoreExpr{ - pos: position{line: 128, col: 28, offset: 3562}, - expr: &charClassMatcher{ - pos: position{line: 128, col: 28, offset: 3562}, - val: "[^\\r\\n []", - chars: []rune{'\r', '\n', ' ', '['}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 71, col: 51, offset: 1814}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - &labeledExpr{ - pos: position{line: 71, col: 55, offset: 1818}, - label: "attr", - expr: &zeroOrOneExpr{ - pos: position{line: 71, col: 60, offset: 1823}, - expr: &actionExpr{ - pos: position{line: 79, col: 34, offset: 2152}, - run: (*parser).callonDocumentRawLine59, - expr: &oneOrMoreExpr{ - pos: position{line: 79, col: 34, offset: 2152}, - expr: &charClassMatcher{ - pos: position{line: 79, col: 34, offset: 2152}, - val: "[^\\r\\n]]", - chars: []rune{'\r', '\n', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 71, col: 93, offset: 1856}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 71, col: 97, offset: 1860}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine64, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 31, col: 11, offset: 595}, + name: "ConditionalInclusion", }, - &actionExpr{ - pos: position{line: 75, col: 11, offset: 1950}, - run: (*parser).callonDocumentRawLine68, - expr: &seqExpr{ - pos: position{line: 75, col: 11, offset: 1950}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 75, col: 11, offset: 1950}, - val: "ifndef::", - ignoreCase: false, - want: "\"ifndef::\"", - }, - &labeledExpr{ - pos: position{line: 75, col: 22, offset: 1961}, - label: "name", - expr: &actionExpr{ - pos: position{line: 128, col: 28, offset: 3562}, - run: (*parser).callonDocumentRawLine72, - expr: &oneOrMoreExpr{ - pos: position{line: 128, col: 28, offset: 3562}, - expr: &charClassMatcher{ - pos: position{line: 128, col: 28, offset: 3562}, - val: "[^\\r\\n []", - chars: []rune{'\r', '\n', ' ', '['}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 75, col: 53, offset: 1992}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - &labeledExpr{ - pos: position{line: 75, col: 57, offset: 1996}, - label: "attr", - expr: &zeroOrOneExpr{ - pos: position{line: 75, col: 62, offset: 2001}, - expr: &actionExpr{ - pos: position{line: 79, col: 34, offset: 2152}, - run: (*parser).callonDocumentRawLine78, - expr: &oneOrMoreExpr{ - pos: position{line: 79, col: 34, offset: 2152}, - expr: &charClassMatcher{ - pos: position{line: 79, col: 34, offset: 2152}, - val: "[^\\r\\n]]", - chars: []rune{'\r', '\n', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 75, col: 95, offset: 2034}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 75, col: 99, offset: 2038}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine83, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 32, col: 11, offset: 626}, + name: "BlockDelimiter", }, - &actionExpr{ - pos: position{line: 83, col: 11, offset: 2217}, - run: (*parser).callonDocumentRawLine87, - expr: &seqExpr{ - pos: position{line: 83, col: 11, offset: 2217}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 83, col: 11, offset: 2217}, - val: "ifeval::[", - ignoreCase: false, - want: "\"ifeval::[\"", - }, - &labeledExpr{ - pos: position{line: 85, col: 5, offset: 2242}, - label: "left", - expr: &choiceExpr{ - pos: position{line: 93, col: 5, offset: 2505}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 93, col: 6, offset: 2506}, - run: (*parser).callonDocumentRawLine92, - expr: &seqExpr{ - pos: position{line: 93, col: 6, offset: 2506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 93, col: 6, offset: 2506}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &labeledExpr{ - pos: position{line: 93, col: 11, offset: 2511}, - label: "s", - expr: &choiceExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDocumentRawLine97, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine101, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDocumentRawLine107, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine111, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 93, col: 39, offset: 2539}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 94, col: 8, offset: 2570}, - run: (*parser).callonDocumentRawLine118, - expr: &seqExpr{ - pos: position{line: 94, col: 8, offset: 2570}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 94, col: 8, offset: 2570}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &labeledExpr{ - pos: position{line: 94, col: 12, offset: 2574}, - label: "s", - expr: &choiceExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDocumentRawLine123, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine127, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDocumentRawLine133, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine137, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 94, col: 40, offset: 2602}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 95, col: 8, offset: 2632}, - run: (*parser).callonDocumentRawLine144, - expr: &labeledExpr{ - pos: position{line: 95, col: 8, offset: 2632}, - label: "s", - expr: &choiceExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDocumentRawLine147, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine151, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDocumentRawLine157, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine161, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 96, col: 8, offset: 2686}, - run: (*parser).callonDocumentRawLine167, - expr: &seqExpr{ - pos: position{line: 96, col: 8, offset: 2686}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 96, col: 8, offset: 2686}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &labeledExpr{ - pos: position{line: 96, col: 13, offset: 2691}, - label: "w", - expr: &actionExpr{ - pos: position{line: 96, col: 16, offset: 2694}, - run: (*parser).callonDocumentRawLine171, - expr: &oneOrMoreExpr{ - pos: position{line: 96, col: 16, offset: 2694}, - expr: &charClassMatcher{ - pos: position{line: 96, col: 16, offset: 2694}, - val: "[,?!;_-0-9\\pL]", - chars: []rune{',', '?', '!', ';', '_', '-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 96, col: 63, offset: 2741}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 97, col: 8, offset: 2772}, - run: (*parser).callonDocumentRawLine175, - expr: &seqExpr{ - pos: position{line: 97, col: 8, offset: 2772}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 97, col: 8, offset: 2772}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &labeledExpr{ - pos: position{line: 97, col: 12, offset: 2776}, - label: "w", - expr: &actionExpr{ - pos: position{line: 97, col: 15, offset: 2779}, - run: (*parser).callonDocumentRawLine179, - expr: &oneOrMoreExpr{ - pos: position{line: 97, col: 15, offset: 2779}, - expr: &charClassMatcher{ - pos: position{line: 97, col: 15, offset: 2779}, - val: "[,?!;_-0-9\\pL]", - chars: []rune{',', '?', '!', ';', '_', '-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 97, col: 62, offset: 2826}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonDocumentRawLine183, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 85, col: 35, offset: 2272}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine190, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 86, col: 5, offset: 2284}, - label: "operand", - expr: &choiceExpr{ - pos: position{line: 101, col: 5, offset: 2895}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 101, col: 6, offset: 2896}, - run: (*parser).callonDocumentRawLine194, - expr: &litMatcher{ - pos: position{line: 101, col: 6, offset: 2896}, - val: "==", - ignoreCase: false, - want: "\"==\"", - }, - }, - &actionExpr{ - pos: position{line: 104, col: 8, offset: 2956}, - run: (*parser).callonDocumentRawLine196, - expr: &litMatcher{ - pos: position{line: 104, col: 8, offset: 2956}, - val: "!=", - ignoreCase: false, - want: "\"!=\"", - }, - }, - &actionExpr{ - pos: position{line: 107, col: 8, offset: 3019}, - run: (*parser).callonDocumentRawLine198, - expr: &litMatcher{ - pos: position{line: 107, col: 8, offset: 3019}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - }, - &actionExpr{ - pos: position{line: 110, col: 8, offset: 3081}, - run: (*parser).callonDocumentRawLine200, - expr: &litMatcher{ - pos: position{line: 110, col: 8, offset: 3081}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - &actionExpr{ - pos: position{line: 113, col: 8, offset: 3147}, - run: (*parser).callonDocumentRawLine202, - expr: &litMatcher{ - pos: position{line: 113, col: 8, offset: 3147}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - }, - &actionExpr{ - pos: position{line: 116, col: 8, offset: 3212}, - run: (*parser).callonDocumentRawLine204, - expr: &litMatcher{ - pos: position{line: 116, col: 8, offset: 3212}, - val: ">=", - ignoreCase: false, - want: "\">=\"", - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 86, col: 39, offset: 2318}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine207, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 87, col: 5, offset: 2330}, - label: "right", - expr: &choiceExpr{ - pos: position{line: 93, col: 5, offset: 2505}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 93, col: 6, offset: 2506}, - run: (*parser).callonDocumentRawLine211, - expr: &seqExpr{ - pos: position{line: 93, col: 6, offset: 2506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 93, col: 6, offset: 2506}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &labeledExpr{ - pos: position{line: 93, col: 11, offset: 2511}, - label: "s", - expr: &choiceExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDocumentRawLine216, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine220, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDocumentRawLine226, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine230, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 93, col: 39, offset: 2539}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 94, col: 8, offset: 2570}, - run: (*parser).callonDocumentRawLine237, - expr: &seqExpr{ - pos: position{line: 94, col: 8, offset: 2570}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 94, col: 8, offset: 2570}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &labeledExpr{ - pos: position{line: 94, col: 12, offset: 2574}, - label: "s", - expr: &choiceExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDocumentRawLine242, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine246, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDocumentRawLine252, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine256, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 94, col: 40, offset: 2602}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 95, col: 8, offset: 2632}, - run: (*parser).callonDocumentRawLine263, - expr: &labeledExpr{ - pos: position{line: 95, col: 8, offset: 2632}, - label: "s", - expr: &choiceExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDocumentRawLine266, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine270, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDocumentRawLine276, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentRawLine280, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 96, col: 8, offset: 2686}, - run: (*parser).callonDocumentRawLine286, - expr: &seqExpr{ - pos: position{line: 96, col: 8, offset: 2686}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 96, col: 8, offset: 2686}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &labeledExpr{ - pos: position{line: 96, col: 13, offset: 2691}, - label: "w", - expr: &actionExpr{ - pos: position{line: 96, col: 16, offset: 2694}, - run: (*parser).callonDocumentRawLine290, - expr: &oneOrMoreExpr{ - pos: position{line: 96, col: 16, offset: 2694}, - expr: &charClassMatcher{ - pos: position{line: 96, col: 16, offset: 2694}, - val: "[,?!;_-0-9\\pL]", - chars: []rune{',', '?', '!', ';', '_', '-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 96, col: 63, offset: 2741}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 97, col: 8, offset: 2772}, - run: (*parser).callonDocumentRawLine294, - expr: &seqExpr{ - pos: position{line: 97, col: 8, offset: 2772}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 97, col: 8, offset: 2772}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &labeledExpr{ - pos: position{line: 97, col: 12, offset: 2776}, - label: "w", - expr: &actionExpr{ - pos: position{line: 97, col: 15, offset: 2779}, - run: (*parser).callonDocumentRawLine298, - expr: &oneOrMoreExpr{ - pos: position{line: 97, col: 15, offset: 2779}, - expr: &charClassMatcher{ - pos: position{line: 97, col: 15, offset: 2779}, - val: "[,?!;_-0-9\\pL]", - chars: []rune{',', '?', '!', ';', '_', '-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 97, col: 62, offset: 2826}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonDocumentRawLine302, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 87, col: 36, offset: 2361}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 88, col: 5, offset: 2370}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine310, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 124, col: 10, offset: 3339}, - run: (*parser).callonDocumentRawLine314, - expr: &seqExpr{ - pos: position{line: 124, col: 10, offset: 3339}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 124, col: 10, offset: 3339}, - val: "endif::", - ignoreCase: false, - want: "\"endif::\"", - }, - &labeledExpr{ - pos: position{line: 124, col: 20, offset: 3349}, - label: "name", - expr: &zeroOrOneExpr{ - pos: position{line: 124, col: 25, offset: 3354}, - expr: &actionExpr{ - pos: position{line: 128, col: 28, offset: 3562}, - run: (*parser).callonDocumentRawLine319, - expr: &oneOrMoreExpr{ - pos: position{line: 128, col: 28, offset: 3562}, - expr: &charClassMatcher{ - pos: position{line: 128, col: 28, offset: 3562}, - val: "[^\\r\\n []", - chars: []rune{'\r', '\n', ' ', '['}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 124, col: 52, offset: 3381}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - &labeledExpr{ - pos: position{line: 124, col: 56, offset: 3385}, - label: "attr", - expr: &zeroOrOneExpr{ - pos: position{line: 124, col: 61, offset: 3390}, - expr: &actionExpr{ - pos: position{line: 79, col: 34, offset: 2152}, - run: (*parser).callonDocumentRawLine325, - expr: &oneOrMoreExpr{ - pos: position{line: 79, col: 34, offset: 2152}, - expr: &charClassMatcher{ - pos: position{line: 79, col: 34, offset: 2152}, - val: "[^\\r\\n]]", - chars: []rune{'\r', '\n', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 124, col: 94, offset: 3423}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 124, col: 98, offset: 3427}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine330, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - run: (*parser).callonDocumentRawLine334, - expr: &seqExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 736, col: 5, offset: 23847}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 737, col: 5, offset: 23877}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 738, col: 9, offset: 23897}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentRawLine340, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentRawLine343, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine349, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine352, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonDocumentRawLine359, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonDocumentRawLine362, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine368, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine371, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonDocumentRawLine378, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonDocumentRawLine382, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine386, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine389, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonDocumentRawLine396, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonDocumentRawLine399, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine405, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine408, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonDocumentRawLine415, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonDocumentRawLine418, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine424, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine427, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonDocumentRawLine434, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonDocumentRawLine437, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine443, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine446, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonDocumentRawLine453, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonDocumentRawLine456, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine462, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine465, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonDocumentRawLine472, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonDocumentRawLine475, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine481, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine484, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonDocumentRawLine491, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonDocumentRawLine494, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentRawLine500, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentRawLine503, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 43, col: 5, offset: 940}, - run: (*parser).callonDocumentRawLine510, - expr: &seqExpr{ - pos: position{line: 43, col: 5, offset: 940}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 43, col: 5, offset: 940}, - run: (*parser).callonDocumentRawLine512, - }, - &andCodeExpr{ - pos: position{line: 47, col: 5, offset: 1084}, - run: (*parser).callonDocumentRawLine513, - }, - &labeledExpr{ - pos: position{line: 50, col: 5, offset: 1147}, - label: "level", - expr: &actionExpr{ - pos: position{line: 50, col: 12, offset: 1154}, - run: (*parser).callonDocumentRawLine515, - expr: &oneOrMoreExpr{ - pos: position{line: 50, col: 12, offset: 1154}, - expr: &litMatcher{ - pos: position{line: 50, col: 13, offset: 1155}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 54, col: 5, offset: 1263}, - run: (*parser).callonDocumentRawLine518, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDocumentRawLine519, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 58, col: 12, offset: 1422}, - expr: &charClassMatcher{ - pos: position{line: 58, col: 12, offset: 1422}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 33, col: 11, offset: 651}, + name: "RawSection", }, }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + &ruleRefExpr{ + pos: position{line: 34, col: 7, offset: 668}, + name: "EOF", }, }, }, }, }, { - name: "FileInclusion", - pos: position{line: 135, col: 1, offset: 3762}, + name: "RawSection", + pos: position{line: 42, col: 1, offset: 921}, expr: &actionExpr{ - pos: position{line: 136, col: 5, offset: 3784}, - run: (*parser).callonFileInclusion1, + pos: position{line: 43, col: 5, offset: 940}, + run: (*parser).callonRawSection1, expr: &seqExpr{ - pos: position{line: 136, col: 5, offset: 3784}, + pos: position{line: 43, col: 5, offset: 940}, exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 43, col: 5, offset: 940}, + run: (*parser).callonRawSection3, + }, + &andCodeExpr{ + pos: position{line: 47, col: 5, offset: 1084}, + run: (*parser).callonRawSection4, + }, &labeledExpr{ - pos: position{line: 136, col: 5, offset: 3784}, - label: "incl", + pos: position{line: 50, col: 5, offset: 1147}, + label: "level", expr: &actionExpr{ - pos: position{line: 137, col: 9, offset: 3799}, - run: (*parser).callonFileInclusion4, - expr: &seqExpr{ - pos: position{line: 137, col: 9, offset: 3799}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 137, col: 9, offset: 3799}, - val: "include::", - ignoreCase: false, - want: "\"include::\"", - }, - &labeledExpr{ - pos: position{line: 138, col: 9, offset: 3820}, - label: "path", - expr: &actionExpr{ - pos: position{line: 3071, col: 17, offset: 99682}, - run: (*parser).callonFileInclusion8, - expr: &labeledExpr{ - pos: position{line: 3071, col: 17, offset: 99682}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3071, col: 22, offset: 99687}, - expr: &choiceExpr{ - pos: position{line: 3071, col: 23, offset: 99688}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonFileInclusion12, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonFileInclusion19, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonFileInclusion23, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonFileInclusion30, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonFileInclusion32, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonFileInclusion34, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonFileInclusion37, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileInclusion41, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonFileInclusion48, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonFileInclusion53, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonFileInclusion55, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonFileInclusion59, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileInclusion63, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonFileInclusion70, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonFileInclusion75, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonFileInclusion77, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonFileInclusion81, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileInclusion85, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonFileInclusion91, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileInclusion95, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonFileInclusion101, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonFileInclusion103, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonFileInclusion106, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonFileInclusion108, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonFileInclusion112, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonFileInclusion116, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonFileInclusion122, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonFileInclusion127, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileInclusion131, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonFileInclusion137, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileInclusion141, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonFileInclusion147, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonFileInclusion150, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonFileInclusion154, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonFileInclusion158, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonFileInclusion160, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonFileInclusion162, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonFileInclusion166, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 139, col: 9, offset: 3849}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 139, col: 21, offset: 3861}, - name: "InlineAttributes", - }, - }, + pos: position{line: 50, col: 12, offset: 1154}, + run: (*parser).callonRawSection6, + expr: &oneOrMoreExpr{ + pos: position{line: 50, col: 12, offset: 1154}, + expr: &litMatcher{ + pos: position{line: 50, col: 13, offset: 1155}, + val: "=", + ignoreCase: false, + want: "\"=\"", }, }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 143, col: 5, offset: 4016}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonFileInclusion173, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &andCodeExpr{ + pos: position{line: 54, col: 5, offset: 1263}, + run: (*parser).callonRawSection9, + }, + &ruleRefExpr{ + pos: position{line: 58, col: 5, offset: 1415}, + name: "Spaces", + }, + &oneOrMoreExpr{ + pos: position{line: 58, col: 12, offset: 1422}, + expr: &charClassMatcher{ + pos: position{line: 58, col: 12, offset: 1422}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonFileInclusion176, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + &ruleRefExpr{ + pos: position{line: 58, col: 21, offset: 1431}, + name: "EOF", + }, + }, + }, + }, + }, + { + name: "ConditionalInclusion", + pos: position{line: 65, col: 1, offset: 1689}, + expr: &choiceExpr{ + pos: position{line: 66, col: 5, offset: 1718}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 66, col: 5, offset: 1718}, + name: "Ifdef", + }, + &ruleRefExpr{ + pos: position{line: 67, col: 7, offset: 1730}, + name: "Ifndef", + }, + &ruleRefExpr{ + pos: position{line: 68, col: 7, offset: 1743}, + name: "Ifeval", + }, + &ruleRefExpr{ + pos: position{line: 69, col: 7, offset: 1756}, + name: "EndIf", + }, + }, + }, + }, + { + name: "Ifdef", + pos: position{line: 71, col: 1, offset: 1764}, + expr: &actionExpr{ + pos: position{line: 71, col: 10, offset: 1773}, + run: (*parser).callonIfdef1, + expr: &seqExpr{ + pos: position{line: 71, col: 10, offset: 1773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 71, col: 10, offset: 1773}, + val: "ifdef::", + ignoreCase: false, + want: "\"ifdef::\"", + }, + &labeledExpr{ + pos: position{line: 71, col: 20, offset: 1783}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 71, col: 26, offset: 1789}, + name: "ConditionalVariableName", + }, + }, + &litMatcher{ + pos: position{line: 71, col: 51, offset: 1814}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + &labeledExpr{ + pos: position{line: 71, col: 55, offset: 1818}, + label: "attr", + expr: &zeroOrOneExpr{ + pos: position{line: 71, col: 60, offset: 1823}, + expr: &ruleRefExpr{ + pos: position{line: 71, col: 61, offset: 1824}, + name: "ConditionalInclusionAttribute", }, }, }, + &litMatcher{ + pos: position{line: 71, col: 93, offset: 1856}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 71, col: 97, offset: 1860}, + expr: &ruleRefExpr{ + pos: position{line: 71, col: 97, offset: 1860}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 71, col: 104, offset: 1867}, + name: "EOF", + }, }, }, }, }, { - name: "LineRanges", - pos: position{line: 150, col: 1, offset: 4149}, + name: "Ifndef", + pos: position{line: 75, col: 1, offset: 1940}, expr: &actionExpr{ - pos: position{line: 150, col: 15, offset: 4163}, - run: (*parser).callonLineRanges1, + pos: position{line: 75, col: 11, offset: 1950}, + run: (*parser).callonIfndef1, expr: &seqExpr{ - pos: position{line: 150, col: 15, offset: 4163}, + pos: position{line: 75, col: 11, offset: 1950}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 75, col: 11, offset: 1950}, + val: "ifndef::", + ignoreCase: false, + want: "\"ifndef::\"", + }, &labeledExpr{ - pos: position{line: 150, col: 15, offset: 4163}, - label: "value", - expr: &choiceExpr{ - pos: position{line: 150, col: 22, offset: 4170}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 157, col: 23, offset: 4353}, - run: (*parser).callonLineRanges5, - expr: &seqExpr{ - pos: position{line: 157, col: 23, offset: 4353}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 157, col: 23, offset: 4353}, - label: "first", - expr: &choiceExpr{ - pos: position{line: 157, col: 30, offset: 4360}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - run: (*parser).callonLineRanges9, - expr: &seqExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - label: "start", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges12, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 166, col: 35, offset: 4734}, - val: "..", - ignoreCase: false, - want: "\"..\"", - }, - &labeledExpr{ - pos: position{line: 166, col: 40, offset: 4739}, - label: "end", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges20, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 170, col: 20, offset: 4860}, - run: (*parser).callonLineRanges26, - expr: &labeledExpr{ - pos: position{line: 170, col: 20, offset: 4860}, - label: "singleline", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges28, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 158, col: 5, offset: 4399}, - label: "others", - expr: &oneOrMoreExpr{ - pos: position{line: 158, col: 12, offset: 4406}, - expr: &actionExpr{ - pos: position{line: 159, col: 9, offset: 4416}, - run: (*parser).callonLineRanges36, - expr: &seqExpr{ - pos: position{line: 159, col: 9, offset: 4416}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 159, col: 10, offset: 4417}, - val: "[,;]", - chars: []rune{',', ';'}, - ignoreCase: false, - inverted: false, - }, - &labeledExpr{ - pos: position{line: 160, col: 9, offset: 4534}, - label: "other", - expr: &choiceExpr{ - pos: position{line: 160, col: 16, offset: 4541}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - run: (*parser).callonLineRanges41, - expr: &seqExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - label: "start", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges44, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 166, col: 35, offset: 4734}, - val: "..", - ignoreCase: false, - want: "\"..\"", - }, - &labeledExpr{ - pos: position{line: 166, col: 40, offset: 4739}, - label: "end", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges52, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 170, col: 20, offset: 4860}, - run: (*parser).callonLineRanges58, - expr: &labeledExpr{ - pos: position{line: 170, col: 20, offset: 4860}, - label: "singleline", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges60, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - run: (*parser).callonLineRanges66, - expr: &seqExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 166, col: 19, offset: 4718}, - label: "start", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges69, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 166, col: 35, offset: 4734}, - val: "..", - ignoreCase: false, - want: "\"..\"", - }, - &labeledExpr{ - pos: position{line: 166, col: 40, offset: 4739}, - label: "end", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges77, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 170, col: 20, offset: 4860}, - run: (*parser).callonLineRanges83, - expr: &labeledExpr{ - pos: position{line: 170, col: 20, offset: 4860}, - label: "singleline", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonLineRanges85, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 75, col: 22, offset: 1961}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 75, col: 28, offset: 1967}, + name: "ConditionalVariableName", + }, + }, + &litMatcher{ + pos: position{line: 75, col: 53, offset: 1992}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + &labeledExpr{ + pos: position{line: 75, col: 57, offset: 1996}, + label: "attr", + expr: &zeroOrOneExpr{ + pos: position{line: 75, col: 62, offset: 2001}, + expr: &ruleRefExpr{ + pos: position{line: 75, col: 63, offset: 2002}, + name: "ConditionalInclusionAttribute", }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &litMatcher{ + pos: position{line: 75, col: 95, offset: 2034}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 75, col: 99, offset: 2038}, + expr: &ruleRefExpr{ + pos: position{line: 75, col: 99, offset: 2038}, + name: "Space", }, }, + &ruleRefExpr{ + pos: position{line: 75, col: 106, offset: 2045}, + name: "EOF", + }, }, }, }, }, { - name: "TagRanges", - pos: position{line: 175, col: 1, offset: 4996}, + name: "ConditionalInclusionAttribute", + pos: position{line: 79, col: 1, offset: 2119}, expr: &actionExpr{ - pos: position{line: 175, col: 14, offset: 5009}, - run: (*parser).callonTagRanges1, + pos: position{line: 79, col: 34, offset: 2152}, + run: (*parser).callonConditionalInclusionAttribute1, + expr: &oneOrMoreExpr{ + pos: position{line: 79, col: 34, offset: 2152}, + expr: &charClassMatcher{ + pos: position{line: 79, col: 34, offset: 2152}, + val: "[^\\r\\n\\]]", + chars: []rune{'\r', '\n', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "Ifeval", + pos: position{line: 83, col: 1, offset: 2207}, + expr: &actionExpr{ + pos: position{line: 83, col: 11, offset: 2217}, + run: (*parser).callonIfeval1, expr: &seqExpr{ - pos: position{line: 175, col: 14, offset: 5009}, + pos: position{line: 83, col: 11, offset: 2217}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 83, col: 11, offset: 2217}, + val: "ifeval::", + ignoreCase: false, + want: "\"ifeval::\"", + }, + &litMatcher{ + pos: position{line: 84, col: 5, offset: 2233}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, &labeledExpr{ - pos: position{line: 175, col: 14, offset: 5009}, - label: "value", - expr: &actionExpr{ - pos: position{line: 179, col: 22, offset: 5146}, - run: (*parser).callonTagRanges4, - expr: &seqExpr{ - pos: position{line: 179, col: 22, offset: 5146}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 179, col: 22, offset: 5146}, - label: "first", - expr: &choiceExpr{ - pos: position{line: 188, col: 13, offset: 5456}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 188, col: 13, offset: 5456}, - run: (*parser).callonTagRanges8, - expr: &labeledExpr{ - pos: position{line: 188, col: 13, offset: 5456}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 188, col: 18, offset: 5461}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonTagRanges11, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - run: (*parser).callonTagRanges14, - expr: &seqExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - run: (*parser).callonTagRanges17, - expr: &oneOrMoreExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - expr: &litMatcher{ - pos: position{line: 194, col: 24, offset: 5669}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 197, col: 5, offset: 5723}, - run: (*parser).callonTagRanges20, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 190, col: 9, offset: 5549}, - run: (*parser).callonTagRanges21, - expr: &seqExpr{ - pos: position{line: 190, col: 9, offset: 5549}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 190, col: 9, offset: 5549}, - val: "!", - ignoreCase: false, - want: "\"!\"", - }, - &labeledExpr{ - pos: position{line: 190, col: 13, offset: 5553}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 190, col: 18, offset: 5558}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonTagRanges26, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - run: (*parser).callonTagRanges29, - expr: &seqExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - run: (*parser).callonTagRanges32, - expr: &oneOrMoreExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - expr: &litMatcher{ - pos: position{line: 194, col: 24, offset: 5669}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 197, col: 5, offset: 5723}, - run: (*parser).callonTagRanges35, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 180, col: 5, offset: 5167}, - label: "others", - expr: &zeroOrMoreExpr{ - pos: position{line: 180, col: 12, offset: 5174}, - expr: &actionExpr{ - pos: position{line: 181, col: 9, offset: 5184}, - run: (*parser).callonTagRanges38, - expr: &seqExpr{ - pos: position{line: 181, col: 9, offset: 5184}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 181, col: 10, offset: 5185}, - val: "[,;]", - chars: []rune{',', ';'}, - ignoreCase: false, - inverted: false, - }, - &labeledExpr{ - pos: position{line: 182, col: 9, offset: 5302}, - label: "other", - expr: &choiceExpr{ - pos: position{line: 188, col: 13, offset: 5456}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 188, col: 13, offset: 5456}, - run: (*parser).callonTagRanges43, - expr: &labeledExpr{ - pos: position{line: 188, col: 13, offset: 5456}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 188, col: 18, offset: 5461}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonTagRanges46, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - run: (*parser).callonTagRanges49, - expr: &seqExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - run: (*parser).callonTagRanges52, - expr: &oneOrMoreExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - expr: &litMatcher{ - pos: position{line: 194, col: 24, offset: 5669}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 197, col: 5, offset: 5723}, - run: (*parser).callonTagRanges55, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 190, col: 9, offset: 5549}, - run: (*parser).callonTagRanges56, - expr: &seqExpr{ - pos: position{line: 190, col: 9, offset: 5549}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 190, col: 9, offset: 5549}, - val: "!", - ignoreCase: false, - want: "\"!\"", - }, - &labeledExpr{ - pos: position{line: 190, col: 13, offset: 5553}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 190, col: 18, offset: 5558}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonTagRanges61, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - run: (*parser).callonTagRanges64, - expr: &seqExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 194, col: 16, offset: 5661}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - run: (*parser).callonTagRanges67, - expr: &oneOrMoreExpr{ - pos: position{line: 194, col: 23, offset: 5668}, - expr: &litMatcher{ - pos: position{line: 194, col: 24, offset: 5669}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 197, col: 5, offset: 5723}, - run: (*parser).callonTagRanges70, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 85, col: 5, offset: 2242}, + label: "left", + expr: &ruleRefExpr{ + pos: position{line: 85, col: 11, offset: 2248}, + name: "IfevalExpressionMember", }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &zeroOrMoreExpr{ + pos: position{line: 85, col: 35, offset: 2272}, + expr: &ruleRefExpr{ + pos: position{line: 85, col: 35, offset: 2272}, + name: "Space", }, }, + &labeledExpr{ + pos: position{line: 86, col: 5, offset: 2284}, + label: "operand", + expr: &ruleRefExpr{ + pos: position{line: 86, col: 14, offset: 2293}, + name: "IfevalExpressionOperand", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 86, col: 39, offset: 2318}, + expr: &ruleRefExpr{ + pos: position{line: 86, col: 39, offset: 2318}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 87, col: 5, offset: 2330}, + label: "right", + expr: &ruleRefExpr{ + pos: position{line: 87, col: 12, offset: 2337}, + name: "IfevalExpressionMember", + }, + }, + &litMatcher{ + pos: position{line: 87, col: 36, offset: 2361}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 88, col: 5, offset: 2370}, + expr: &ruleRefExpr{ + pos: position{line: 88, col: 5, offset: 2370}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 88, col: 12, offset: 2377}, + name: "EOF", + }, }, }, }, }, { - name: "IncludedFileLine", - pos: position{line: 204, col: 1, offset: 5890}, - expr: &actionExpr{ - pos: position{line: 204, col: 21, offset: 5910}, - run: (*parser).callonIncludedFileLine1, - expr: &seqExpr{ - pos: position{line: 204, col: 21, offset: 5910}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 204, col: 21, offset: 5910}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 204, col: 29, offset: 5918}, - expr: &choiceExpr{ - pos: position{line: 204, col: 30, offset: 5919}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 208, col: 25, offset: 6099}, - run: (*parser).callonIncludedFileLine6, - expr: &seqExpr{ - pos: position{line: 208, col: 25, offset: 6099}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 208, col: 25, offset: 6099}, - val: "tag::", - ignoreCase: false, - want: "\"tag::\"", - }, - &labeledExpr{ - pos: position{line: 208, col: 33, offset: 6107}, - label: "tag", - expr: &actionExpr{ - pos: position{line: 208, col: 38, offset: 6112}, - run: (*parser).callonIncludedFileLine10, - expr: &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonIncludedFileLine11, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 208, col: 78, offset: 6152}, - val: "[]", - ignoreCase: false, - want: "\"[]\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 212, col: 23, offset: 6247}, - run: (*parser).callonIncludedFileLine15, - expr: &seqExpr{ - pos: position{line: 212, col: 23, offset: 6247}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 212, col: 23, offset: 6247}, - val: "end::", - ignoreCase: false, - want: "\"end::\"", - }, - &labeledExpr{ - pos: position{line: 212, col: 31, offset: 6255}, - label: "tag", - expr: &actionExpr{ - pos: position{line: 212, col: 36, offset: 6260}, - run: (*parser).callonIncludedFileLine19, - expr: &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonIncludedFileLine20, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 212, col: 76, offset: 6300}, - val: "[]", - ignoreCase: false, - want: "\"[]\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 204, col: 74, offset: 5963}, - run: (*parser).callonIncludedFileLine24, - expr: &anyMatcher{ - line: 204, col: 74, offset: 5963, - }, - }, + name: "IfevalExpressionMember", + pos: position{line: 92, col: 1, offset: 2474}, + expr: &choiceExpr{ + pos: position{line: 93, col: 5, offset: 2505}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 93, col: 6, offset: 2506}, + run: (*parser).callonIfevalExpressionMember2, + expr: &seqExpr{ + pos: position{line: 93, col: 6, offset: 2506}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 93, col: 6, offset: 2506}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + &labeledExpr{ + pos: position{line: 93, col: 11, offset: 2511}, + label: "s", + expr: &ruleRefExpr{ + pos: position{line: 93, col: 14, offset: 2514}, + name: "AttributeReferenceValue", }, }, + &litMatcher{ + pos: position{line: 93, col: 39, offset: 2539}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, }, }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonIncludedFileLine27, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + }, + &actionExpr{ + pos: position{line: 94, col: 8, offset: 2570}, + run: (*parser).callonIfevalExpressionMember8, + expr: &seqExpr{ + pos: position{line: 94, col: 8, offset: 2570}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 94, col: 8, offset: 2570}, + val: "'", + ignoreCase: false, + want: "\"'\"", }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &labeledExpr{ + pos: position{line: 94, col: 12, offset: 2574}, + label: "s", + expr: &ruleRefExpr{ + pos: position{line: 94, col: 15, offset: 2577}, + name: "AttributeReferenceValue", }, }, + &litMatcher{ + pos: position{line: 94, col: 40, offset: 2602}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, }, }, }, - }, - }, - }, - { - name: "DocumentFragment", - pos: position{line: 228, col: 1, offset: 6786}, + &actionExpr{ + pos: position{line: 95, col: 8, offset: 2632}, + run: (*parser).callonIfevalExpressionMember14, + expr: &labeledExpr{ + pos: position{line: 95, col: 8, offset: 2632}, + label: "s", + expr: &ruleRefExpr{ + pos: position{line: 95, col: 11, offset: 2635}, + name: "AttributeReferenceValue", + }, + }, + }, + &actionExpr{ + pos: position{line: 96, col: 8, offset: 2686}, + run: (*parser).callonIfevalExpressionMember17, + expr: &seqExpr{ + pos: position{line: 96, col: 8, offset: 2686}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 96, col: 8, offset: 2686}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + &labeledExpr{ + pos: position{line: 96, col: 13, offset: 2691}, + label: "w", + expr: &actionExpr{ + pos: position{line: 96, col: 16, offset: 2694}, + run: (*parser).callonIfevalExpressionMember21, + expr: &oneOrMoreExpr{ + pos: position{line: 96, col: 16, offset: 2694}, + expr: &charClassMatcher{ + pos: position{line: 96, col: 16, offset: 2694}, + val: "[\\pL0-9,?!;_-]", + chars: []rune{',', '?', '!', ';', '_', '-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 96, col: 63, offset: 2741}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 97, col: 8, offset: 2772}, + run: (*parser).callonIfevalExpressionMember25, + expr: &seqExpr{ + pos: position{line: 97, col: 8, offset: 2772}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 97, col: 8, offset: 2772}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + &labeledExpr{ + pos: position{line: 97, col: 12, offset: 2776}, + label: "w", + expr: &actionExpr{ + pos: position{line: 97, col: 15, offset: 2779}, + run: (*parser).callonIfevalExpressionMember29, + expr: &oneOrMoreExpr{ + pos: position{line: 97, col: 15, offset: 2779}, + expr: &charClassMatcher{ + pos: position{line: 97, col: 15, offset: 2779}, + val: "[\\pL0-9,?!;_-]", + chars: []rune{',', '?', '!', ';', '_', '-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 97, col: 62, offset: 2826}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 98, col: 7, offset: 2855}, + name: "Integer", + }, + }, + }, + }, + { + name: "IfevalExpressionOperand", + pos: position{line: 100, col: 1, offset: 2864}, + expr: &choiceExpr{ + pos: position{line: 101, col: 5, offset: 2895}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 101, col: 6, offset: 2896}, + run: (*parser).callonIfevalExpressionOperand2, + expr: &litMatcher{ + pos: position{line: 101, col: 6, offset: 2896}, + val: "==", + ignoreCase: false, + want: "\"==\"", + }, + }, + &actionExpr{ + pos: position{line: 104, col: 8, offset: 2956}, + run: (*parser).callonIfevalExpressionOperand4, + expr: &litMatcher{ + pos: position{line: 104, col: 8, offset: 2956}, + val: "!=", + ignoreCase: false, + want: "\"!=\"", + }, + }, + &actionExpr{ + pos: position{line: 107, col: 8, offset: 3019}, + run: (*parser).callonIfevalExpressionOperand6, + expr: &litMatcher{ + pos: position{line: 107, col: 8, offset: 3019}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + }, + &actionExpr{ + pos: position{line: 110, col: 8, offset: 3081}, + run: (*parser).callonIfevalExpressionOperand8, + expr: &litMatcher{ + pos: position{line: 110, col: 8, offset: 3081}, + val: "<=", + ignoreCase: false, + want: "\"<=\"", + }, + }, + &actionExpr{ + pos: position{line: 113, col: 8, offset: 3147}, + run: (*parser).callonIfevalExpressionOperand10, + expr: &litMatcher{ + pos: position{line: 113, col: 8, offset: 3147}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + }, + &actionExpr{ + pos: position{line: 116, col: 8, offset: 3212}, + run: (*parser).callonIfevalExpressionOperand12, + expr: &litMatcher{ + pos: position{line: 116, col: 8, offset: 3212}, + val: ">=", + ignoreCase: false, + want: "\">=\"", + }, + }, + }, + }, + }, + { + name: "IfevalExpressionValue", + pos: position{line: 120, col: 1, offset: 3275}, + expr: &choiceExpr{ + pos: position{line: 121, col: 5, offset: 3305}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 121, col: 5, offset: 3305}, + name: "Number", + }, + &ruleRefExpr{ + pos: position{line: 122, col: 7, offset: 3318}, + name: "InlineWord", + }, + }, + }, + }, + { + name: "EndIf", + pos: position{line: 124, col: 1, offset: 3330}, expr: &actionExpr{ - pos: position{line: 229, col: 5, offset: 6810}, - run: (*parser).callonDocumentFragment1, + pos: position{line: 124, col: 10, offset: 3339}, + run: (*parser).callonEndIf1, expr: &seqExpr{ - pos: position{line: 229, col: 5, offset: 6810}, + pos: position{line: 124, col: 10, offset: 3339}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 229, col: 5, offset: 6810}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &litMatcher{ + pos: position{line: 124, col: 10, offset: 3339}, + val: "endif::", + ignoreCase: false, + want: "\"endif::\"", + }, + &labeledExpr{ + pos: position{line: 124, col: 20, offset: 3349}, + label: "name", + expr: &zeroOrOneExpr{ + pos: position{line: 124, col: 25, offset: 3354}, + expr: &ruleRefExpr{ + pos: position{line: 124, col: 26, offset: 3355}, + name: "ConditionalVariableName", }, }, }, + &litMatcher{ + pos: position{line: 124, col: 52, offset: 3381}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, &labeledExpr{ - pos: position{line: 230, col: 5, offset: 6819}, - label: "attributes", + pos: position{line: 124, col: 56, offset: 3385}, + label: "attr", expr: &zeroOrOneExpr{ - pos: position{line: 230, col: 16, offset: 6830}, + pos: position{line: 124, col: 61, offset: 3390}, expr: &ruleRefExpr{ - pos: position{line: 230, col: 17, offset: 6831}, - name: "BlockAttributes", + pos: position{line: 124, col: 62, offset: 3391}, + name: "ConditionalInclusionAttribute", }, }, }, + &litMatcher{ + pos: position{line: 124, col: 94, offset: 3423}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 124, col: 98, offset: 3427}, + expr: &ruleRefExpr{ + pos: position{line: 124, col: 98, offset: 3427}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 124, col: 105, offset: 3434}, + name: "EOF", + }, + }, + }, + }, + }, + { + name: "ConditionalVariableName", + pos: position{line: 128, col: 1, offset: 3535}, + expr: &actionExpr{ + pos: position{line: 128, col: 28, offset: 3562}, + run: (*parser).callonConditionalVariableName1, + expr: &oneOrMoreExpr{ + pos: position{line: 128, col: 28, offset: 3562}, + expr: &charClassMatcher{ + pos: position{line: 128, col: 28, offset: 3562}, + val: "[^\\r\\n []", + chars: []rune{'\r', '\n', ' ', '['}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "FileInclusion", + pos: position{line: 135, col: 1, offset: 3762}, + expr: &actionExpr{ + pos: position{line: 136, col: 5, offset: 3784}, + run: (*parser).callonFileInclusion1, + expr: &seqExpr{ + pos: position{line: 136, col: 5, offset: 3784}, + exprs: []interface{}{ &labeledExpr{ - pos: position{line: 231, col: 5, offset: 6853}, - label: "element", - expr: &zeroOrOneExpr{ - pos: position{line: 231, col: 13, offset: 6861}, - expr: &choiceExpr{ - pos: position{line: 232, col: 9, offset: 6871}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 232, col: 9, offset: 6871}, - name: "ImageBlock", - }, - &ruleRefExpr{ - pos: position{line: 233, col: 11, offset: 6932}, - name: "UserMacroBlock", - }, - &ruleRefExpr{ - pos: position{line: 234, col: 11, offset: 6997}, - name: "ShortcutParagraph", - }, - &ruleRefExpr{ - pos: position{line: 235, col: 11, offset: 7025}, - name: "DocumentHeader", + pos: position{line: 136, col: 5, offset: 3784}, + label: "incl", + expr: &actionExpr{ + pos: position{line: 137, col: 9, offset: 3799}, + run: (*parser).callonFileInclusion4, + expr: &seqExpr{ + pos: position{line: 137, col: 9, offset: 3799}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 137, col: 9, offset: 3799}, + val: "include::", + ignoreCase: false, + want: "\"include::\"", }, - &ruleRefExpr{ - pos: position{line: 236, col: 11, offset: 7105}, - name: "AttributeDeclaration", + &labeledExpr{ + pos: position{line: 138, col: 9, offset: 3820}, + label: "path", + expr: &ruleRefExpr{ + pos: position{line: 138, col: 15, offset: 3826}, + name: "FileLocation", + }, }, - &actionExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - run: (*parser).callonDocumentFragment17, - expr: &seqExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 364, col: 19, offset: 11171}, - val: ":!", - ignoreCase: false, - want: "\":!\"", - }, - &labeledExpr{ - pos: position{line: 364, col: 24, offset: 11176}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentFragment21, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 364, col: 45, offset: 11197}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 364, col: 49, offset: 11201}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment28, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment31, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, + &labeledExpr{ + pos: position{line: 139, col: 9, offset: 3849}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 139, col: 21, offset: 3861}, + name: "InlineAttributes", }, }, - &actionExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - run: (*parser).callonDocumentFragment38, - expr: &seqExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 366, col: 9, offset: 11292}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 366, col: 13, offset: 11296}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentFragment42, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 143, col: 5, offset: 4016}, + expr: &ruleRefExpr{ + pos: position{line: 143, col: 5, offset: 4016}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 143, col: 12, offset: 4023}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "FileIncludeAttributes", + pos: position{line: 147, col: 1, offset: 4084}, + expr: &ruleRefExpr{ + pos: position{line: 147, col: 26, offset: 4109}, + name: "LongHandAttributes", + }, + }, + { + name: "LineRanges", + pos: position{line: 150, col: 1, offset: 4149}, + expr: &actionExpr{ + pos: position{line: 150, col: 15, offset: 4163}, + run: (*parser).callonLineRanges1, + expr: &seqExpr{ + pos: position{line: 150, col: 15, offset: 4163}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 150, col: 15, offset: 4163}, + label: "value", + expr: &choiceExpr{ + pos: position{line: 150, col: 22, offset: 4170}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 150, col: 22, offset: 4170}, + name: "MultipleLineRanges", + }, + &ruleRefExpr{ + pos: position{line: 151, col: 7, offset: 4196}, + name: "MultiLineRange", + }, + &ruleRefExpr{ + pos: position{line: 152, col: 7, offset: 4218}, + name: "SingleLineRange", + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 153, col: 7, offset: 4241}, + name: "EOF", + }, + }, + }, + }, + }, + { + name: "MultipleLineRanges", + pos: position{line: 157, col: 1, offset: 4331}, + expr: &actionExpr{ + pos: position{line: 157, col: 23, offset: 4353}, + run: (*parser).callonMultipleLineRanges1, + expr: &seqExpr{ + pos: position{line: 157, col: 23, offset: 4353}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 157, col: 23, offset: 4353}, + label: "first", + expr: &choiceExpr{ + pos: position{line: 157, col: 30, offset: 4360}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 157, col: 30, offset: 4360}, + name: "MultiLineRange", + }, + &ruleRefExpr{ + pos: position{line: 157, col: 47, offset: 4377}, + name: "SingleLineRange", + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 158, col: 5, offset: 4399}, + label: "others", + expr: &oneOrMoreExpr{ + pos: position{line: 158, col: 12, offset: 4406}, + expr: &actionExpr{ + pos: position{line: 159, col: 9, offset: 4416}, + run: (*parser).callonMultipleLineRanges9, + expr: &seqExpr{ + pos: position{line: 159, col: 9, offset: 4416}, + exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 159, col: 10, offset: 4417}, + alternatives: []interface{}{ &litMatcher{ - pos: position{line: 366, col: 34, offset: 11317}, - val: "!:", + pos: position{line: 159, col: 10, offset: 4417}, + val: ",", ignoreCase: false, - want: "\"!:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 366, col: 39, offset: 11322}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment49, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment52, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment59, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment65, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + want: "\",\"", }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment68, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + &litMatcher{ + pos: position{line: 159, col: 16, offset: 4423}, + val: ";", + ignoreCase: false, + want: "\";\"", }, }, }, - }, - &actionExpr{ - pos: position{line: 2624, col: 5, offset: 86457}, - run: (*parser).callonDocumentFragment75, - expr: &seqExpr{ - pos: position{line: 2624, col: 5, offset: 86457}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2624, col: 5, offset: 86457}, - run: (*parser).callonDocumentFragment77, - }, - &labeledExpr{ - pos: position{line: 2627, col: 5, offset: 86520}, - label: "level", - expr: &actionExpr{ - pos: position{line: 2627, col: 12, offset: 86527}, - run: (*parser).callonDocumentFragment79, - expr: &oneOrMoreExpr{ - pos: position{line: 2627, col: 12, offset: 86527}, - expr: &litMatcher{ - pos: position{line: 2627, col: 13, offset: 86528}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 2631, col: 5, offset: 86636}, - run: (*parser).callonDocumentFragment82, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDocumentFragment83, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2635, col: 12, offset: 86795}, - label: "title", - expr: &actionExpr{ - pos: position{line: 2639, col: 17, offset: 86914}, - run: (*parser).callonDocumentFragment87, - expr: &oneOrMoreExpr{ - pos: position{line: 2639, col: 17, offset: 86914}, - expr: &charClassMatcher{ - pos: position{line: 2639, col: 17, offset: 86914}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, + &labeledExpr{ + pos: position{line: 160, col: 9, offset: 4534}, + label: "other", + expr: &choiceExpr{ + pos: position{line: 160, col: 16, offset: 4541}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 160, col: 16, offset: 4541}, + name: "MultiLineRange", }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment91, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, + &ruleRefExpr{ + pos: position{line: 160, col: 33, offset: 4558}, + name: "SingleLineRange", }, }, }, }, }, - &actionExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - run: (*parser).callonDocumentFragment98, - expr: &seqExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentFragment100, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentFragment103, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment109, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment112, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 828, col: 5, offset: 27001}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 838, col: 5, offset: 27287}, - expr: &actionExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - run: (*parser).callonDocumentFragment121, - expr: &seqExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 838, col: 6, offset: 27288}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentFragment125, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentFragment128, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment134, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment137, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 839, col: 5, offset: 27318}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment147, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment153, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment157, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "MultiLineRange", + pos: position{line: 166, col: 1, offset: 4700}, + expr: &actionExpr{ + pos: position{line: 166, col: 19, offset: 4718}, + run: (*parser).callonMultiLineRange1, + expr: &seqExpr{ + pos: position{line: 166, col: 19, offset: 4718}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 166, col: 19, offset: 4718}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 166, col: 26, offset: 4725}, + name: "Integer", + }, + }, + &litMatcher{ + pos: position{line: 166, col: 35, offset: 4734}, + val: "..", + ignoreCase: false, + want: "\"..\"", + }, + &labeledExpr{ + pos: position{line: 166, col: 40, offset: 4739}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 166, col: 45, offset: 4744}, + name: "Integer", + }, + }, + }, + }, + }, + }, + { + name: "SingleLineRange", + pos: position{line: 170, col: 1, offset: 4841}, + expr: &actionExpr{ + pos: position{line: 170, col: 20, offset: 4860}, + run: (*parser).callonSingleLineRange1, + expr: &labeledExpr{ + pos: position{line: 170, col: 20, offset: 4860}, + label: "singleline", + expr: &ruleRefExpr{ + pos: position{line: 170, col: 32, offset: 4872}, + name: "Integer", + }, + }, + }, + }, + { + name: "TagRanges", + pos: position{line: 175, col: 1, offset: 4996}, + expr: &actionExpr{ + pos: position{line: 175, col: 14, offset: 5009}, + run: (*parser).callonTagRanges1, + expr: &seqExpr{ + pos: position{line: 175, col: 14, offset: 5009}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 175, col: 14, offset: 5009}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 175, col: 21, offset: 5016}, + name: "MultipleTagRanges", + }, + }, + &ruleRefExpr{ + pos: position{line: 175, col: 40, offset: 5035}, + name: "EOF", + }, + }, + }, + }, + }, + { + name: "MultipleTagRanges", + pos: position{line: 179, col: 1, offset: 5125}, + expr: &actionExpr{ + pos: position{line: 179, col: 22, offset: 5146}, + run: (*parser).callonMultipleTagRanges1, + expr: &seqExpr{ + pos: position{line: 179, col: 22, offset: 5146}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 179, col: 22, offset: 5146}, + label: "first", + expr: &ruleRefExpr{ + pos: position{line: 179, col: 29, offset: 5153}, + name: "TagRange", + }, + }, + &labeledExpr{ + pos: position{line: 180, col: 5, offset: 5167}, + label: "others", + expr: &zeroOrMoreExpr{ + pos: position{line: 180, col: 12, offset: 5174}, + expr: &actionExpr{ + pos: position{line: 181, col: 9, offset: 5184}, + run: (*parser).callonMultipleTagRanges7, + expr: &seqExpr{ + pos: position{line: 181, col: 9, offset: 5184}, + exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 181, col: 10, offset: 5185}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 181, col: 10, offset: 5185}, + val: ",", + ignoreCase: false, + want: "\",\"", }, - &zeroOrOneExpr{ - pos: position{line: 829, col: 5, offset: 27035}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentFragment166, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentFragment169, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment175, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment178, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 181, col: 16, offset: 5191}, + val: ";", + ignoreCase: false, + want: "\";\"", }, }, }, - }, - &actionExpr{ - pos: position{line: 847, col: 5, offset: 27471}, - run: (*parser).callonDocumentFragment187, - expr: &seqExpr{ - pos: position{line: 847, col: 5, offset: 27471}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 847, col: 5, offset: 27471}, - label: "start", - expr: &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonDocumentFragment190, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonDocumentFragment193, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment199, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment202, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 848, col: 5, offset: 27510}, - run: (*parser).callonDocumentFragment209, - }, - &labeledExpr{ - pos: position{line: 851, col: 5, offset: 27602}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 866, col: 4, offset: 27999}, - expr: &actionExpr{ - pos: position{line: 866, col: 5, offset: 28000}, - run: (*parser).callonDocumentFragment212, - expr: &seqExpr{ - pos: position{line: 866, col: 5, offset: 28000}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 866, col: 5, offset: 28000}, - expr: &choiceExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - label: "end", - expr: &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonDocumentFragment218, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonDocumentFragment221, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment227, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment230, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 860, col: 5, offset: 27873}, - run: (*parser).callonDocumentFragment237, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 867, col: 5, offset: 28030}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment241, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment247, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment251, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 852, col: 5, offset: 27636}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 852, col: 9, offset: 27640}, - expr: &choiceExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - label: "end", - expr: &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonDocumentFragment263, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonDocumentFragment266, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment272, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment275, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 860, col: 5, offset: 27873}, - run: (*parser).callonDocumentFragment282, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + &labeledExpr{ + pos: position{line: 182, col: 9, offset: 5302}, + label: "other", + expr: &ruleRefExpr{ + pos: position{line: 182, col: 16, offset: 5309}, + name: "TagRange", }, }, }, - &actionExpr{ - pos: position{line: 959, col: 5, offset: 30322}, - run: (*parser).callonDocumentFragment285, - expr: &seqExpr{ - pos: position{line: 959, col: 5, offset: 30322}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 959, col: 5, offset: 30322}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonDocumentFragment288, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonDocumentFragment292, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment296, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment299, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 960, col: 5, offset: 30368}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 973, col: 5, offset: 30841}, - expr: &actionExpr{ - pos: position{line: 973, col: 6, offset: 30842}, - run: (*parser).callonDocumentFragment308, - expr: &seqExpr{ - pos: position{line: 973, col: 6, offset: 30842}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 973, col: 6, offset: 30842}, - expr: &seqExpr{ - pos: position{line: 970, col: 34, offset: 30789}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 970, col: 34, offset: 30789}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 970, col: 40, offset: 30795}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment314, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment317, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 974, col: 5, offset: 30877}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment325, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment331, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment335, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 961, col: 5, offset: 30407}, - expr: &seqExpr{ - pos: position{line: 970, col: 34, offset: 30789}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 970, col: 34, offset: 30789}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 970, col: 40, offset: 30795}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment346, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment349, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 875, col: 5, offset: 28183}, - run: (*parser).callonDocumentFragment356, - expr: &seqExpr{ - pos: position{line: 875, col: 5, offset: 28183}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 875, col: 5, offset: 28183}, - label: "start", - expr: &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonDocumentFragment359, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonDocumentFragment362, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment368, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment371, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 876, col: 5, offset: 28221}, - run: (*parser).callonDocumentFragment378, - }, - &labeledExpr{ - pos: position{line: 879, col: 5, offset: 28313}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 894, col: 5, offset: 28703}, - expr: &actionExpr{ - pos: position{line: 894, col: 6, offset: 28704}, - run: (*parser).callonDocumentFragment381, - expr: &seqExpr{ - pos: position{line: 894, col: 6, offset: 28704}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 894, col: 6, offset: 28704}, - expr: &choiceExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - label: "end", - expr: &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonDocumentFragment387, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonDocumentFragment390, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment396, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment399, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 888, col: 5, offset: 28577}, - run: (*parser).callonDocumentFragment406, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 895, col: 5, offset: 28733}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment410, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment416, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment420, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 880, col: 5, offset: 28346}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 880, col: 9, offset: 28350}, - expr: &choiceExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - label: "end", - expr: &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonDocumentFragment432, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonDocumentFragment435, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment441, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment444, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 888, col: 5, offset: 28577}, - run: (*parser).callonDocumentFragment451, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 903, col: 5, offset: 28888}, - run: (*parser).callonDocumentFragment454, - expr: &seqExpr{ - pos: position{line: 903, col: 5, offset: 28888}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 903, col: 5, offset: 28888}, - label: "start", - expr: &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonDocumentFragment457, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonDocumentFragment460, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment466, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment469, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 904, col: 5, offset: 28927}, - run: (*parser).callonDocumentFragment476, - }, - &labeledExpr{ - pos: position{line: 907, col: 5, offset: 29019}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 922, col: 5, offset: 29417}, - expr: &actionExpr{ - pos: position{line: 922, col: 6, offset: 29418}, - run: (*parser).callonDocumentFragment479, - expr: &seqExpr{ - pos: position{line: 922, col: 6, offset: 29418}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 922, col: 6, offset: 29418}, - expr: &choiceExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - label: "end", - expr: &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonDocumentFragment485, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonDocumentFragment488, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment494, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment497, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 916, col: 5, offset: 29290}, - run: (*parser).callonDocumentFragment504, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 923, col: 5, offset: 29448}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment508, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment514, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment518, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 908, col: 5, offset: 29053}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 908, col: 9, offset: 29057}, - expr: &choiceExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - label: "end", - expr: &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonDocumentFragment530, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonDocumentFragment533, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment539, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment542, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 916, col: 5, offset: 29290}, - run: (*parser).callonDocumentFragment549, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 931, col: 5, offset: 29603}, - run: (*parser).callonDocumentFragment552, - expr: &seqExpr{ - pos: position{line: 931, col: 5, offset: 29603}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 931, col: 5, offset: 29603}, - label: "start", - expr: &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonDocumentFragment555, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonDocumentFragment558, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment564, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment567, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 932, col: 5, offset: 29642}, - run: (*parser).callonDocumentFragment574, - }, - &labeledExpr{ - pos: position{line: 935, col: 5, offset: 29734}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 950, col: 5, offset: 30132}, - expr: &actionExpr{ - pos: position{line: 950, col: 6, offset: 30133}, - run: (*parser).callonDocumentFragment577, - expr: &seqExpr{ - pos: position{line: 950, col: 6, offset: 30133}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 950, col: 6, offset: 30133}, - expr: &choiceExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - label: "end", - expr: &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonDocumentFragment583, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonDocumentFragment586, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment592, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment595, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 944, col: 5, offset: 30005}, - run: (*parser).callonDocumentFragment602, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 951, col: 5, offset: 30163}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment606, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment612, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment616, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 936, col: 5, offset: 29768}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 936, col: 9, offset: 29772}, - expr: &choiceExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - label: "end", - expr: &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonDocumentFragment628, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonDocumentFragment631, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment637, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment640, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 944, col: 5, offset: 30005}, - run: (*parser).callonDocumentFragment647, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "TagRange", + pos: position{line: 188, col: 1, offset: 5444}, + expr: &choiceExpr{ + pos: position{line: 188, col: 13, offset: 5456}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 188, col: 13, offset: 5456}, + run: (*parser).callonTagRange2, + expr: &labeledExpr{ + pos: position{line: 188, col: 13, offset: 5456}, + label: "tag", + expr: &choiceExpr{ + pos: position{line: 188, col: 18, offset: 5461}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 188, col: 18, offset: 5461}, + name: "Alphanums", + }, + &ruleRefExpr{ + pos: position{line: 188, col: 30, offset: 5473}, + name: "TagWildcard", + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 190, col: 9, offset: 5549}, + run: (*parser).callonTagRange7, + expr: &seqExpr{ + pos: position{line: 190, col: 9, offset: 5549}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 190, col: 9, offset: 5549}, + val: "!", + ignoreCase: false, + want: "\"!\"", + }, + &labeledExpr{ + pos: position{line: 190, col: 13, offset: 5553}, + label: "tag", + expr: &choiceExpr{ + pos: position{line: 190, col: 18, offset: 5558}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 190, col: 18, offset: 5558}, + name: "Alphanums", }, - }, - &actionExpr{ - pos: position{line: 982, col: 5, offset: 31046}, - run: (*parser).callonDocumentFragment650, - expr: &seqExpr{ - pos: position{line: 982, col: 5, offset: 31046}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 982, col: 5, offset: 31046}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - run: (*parser).callonDocumentFragment653, - expr: &seqExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 989, col: 5, offset: 31305}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment656, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment662, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment665, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 990, col: 5, offset: 31320}, - val: "> ", - ignoreCase: false, - want: "\"> \"", - }, - &labeledExpr{ - pos: position{line: 991, col: 5, offset: 31330}, - label: "content", - expr: &actionExpr{ - pos: position{line: 991, col: 14, offset: 31339}, - run: (*parser).callonDocumentFragment674, - expr: &oneOrMoreExpr{ - pos: position{line: 991, col: 15, offset: 31340}, - expr: &charClassMatcher{ - pos: position{line: 991, col: 15, offset: 31340}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment678, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 983, col: 5, offset: 31083}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 983, col: 16, offset: 31094}, - expr: &choiceExpr{ - pos: position{line: 983, col: 17, offset: 31095}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - run: (*parser).callonDocumentFragment688, - expr: &seqExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 989, col: 5, offset: 31305}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment691, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment697, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment700, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 990, col: 5, offset: 31320}, - val: "> ", - ignoreCase: false, - want: "\"> \"", - }, - &labeledExpr{ - pos: position{line: 991, col: 5, offset: 31330}, - label: "content", - expr: &actionExpr{ - pos: position{line: 991, col: 14, offset: 31339}, - run: (*parser).callonDocumentFragment709, - expr: &oneOrMoreExpr{ - pos: position{line: 991, col: 15, offset: 31340}, - expr: &charClassMatcher{ - pos: position{line: 991, col: 15, offset: 31340}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment713, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonDocumentFragment720, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonDocumentFragment723, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonDocumentFragment726, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment728, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 190, col: 30, offset: 5570}, + name: "TagWildcard", }, }, - &actionExpr{ - pos: position{line: 1008, col: 5, offset: 31698}, - run: (*parser).callonDocumentFragment735, - expr: &seqExpr{ - pos: position{line: 1008, col: 5, offset: 31698}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1008, col: 5, offset: 31698}, - label: "start", - expr: &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonDocumentFragment738, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonDocumentFragment741, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment747, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment750, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1009, col: 5, offset: 31741}, - run: (*parser).callonDocumentFragment757, - }, - &labeledExpr{ - pos: position{line: 1012, col: 5, offset: 31833}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1027, col: 5, offset: 32263}, - expr: &actionExpr{ - pos: position{line: 1027, col: 6, offset: 32264}, - run: (*parser).callonDocumentFragment760, - expr: &seqExpr{ - pos: position{line: 1027, col: 6, offset: 32264}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1027, col: 6, offset: 32264}, - expr: &choiceExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - label: "end", - expr: &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonDocumentFragment766, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonDocumentFragment769, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment775, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment778, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1021, col: 5, offset: 32132}, - run: (*parser).callonDocumentFragment785, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1028, col: 5, offset: 32298}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment789, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment795, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment799, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1013, col: 5, offset: 31871}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 1013, col: 9, offset: 31875}, - expr: &choiceExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - label: "end", - expr: &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonDocumentFragment811, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonDocumentFragment814, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment820, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment823, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1021, col: 5, offset: 32132}, - run: (*parser).callonDocumentFragment830, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "TagWildcard", + pos: position{line: 194, col: 1, offset: 5646}, + expr: &actionExpr{ + pos: position{line: 194, col: 16, offset: 5661}, + run: (*parser).callonTagWildcard1, + expr: &seqExpr{ + pos: position{line: 194, col: 16, offset: 5661}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 194, col: 16, offset: 5661}, + label: "stars", + expr: &actionExpr{ + pos: position{line: 194, col: 23, offset: 5668}, + run: (*parser).callonTagWildcard4, + expr: &oneOrMoreExpr{ + pos: position{line: 194, col: 23, offset: 5668}, + expr: &litMatcher{ + pos: position{line: 194, col: 24, offset: 5669}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 197, col: 5, offset: 5723}, + run: (*parser).callonTagWildcard7, + }, + }, + }, + }, + }, + { + name: "IncludedFileLine", + pos: position{line: 204, col: 1, offset: 5890}, + expr: &actionExpr{ + pos: position{line: 204, col: 21, offset: 5910}, + run: (*parser).callonIncludedFileLine1, + expr: &seqExpr{ + pos: position{line: 204, col: 21, offset: 5910}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 204, col: 21, offset: 5910}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 204, col: 29, offset: 5918}, + expr: &choiceExpr{ + pos: position{line: 204, col: 30, offset: 5919}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 204, col: 30, offset: 5919}, + name: "IncludedFileStartTag", }, - &actionExpr{ - pos: position{line: 1036, col: 5, offset: 32449}, - run: (*parser).callonDocumentFragment833, - expr: &seqExpr{ - pos: position{line: 1036, col: 5, offset: 32449}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1036, col: 5, offset: 32449}, - label: "start", - expr: &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonDocumentFragment836, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonDocumentFragment839, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment845, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment848, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1037, col: 5, offset: 32486}, - run: (*parser).callonDocumentFragment855, - }, - &labeledExpr{ - pos: position{line: 1040, col: 5, offset: 32578}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1055, col: 4, offset: 32959}, - expr: &actionExpr{ - pos: position{line: 1055, col: 5, offset: 32960}, - run: (*parser).callonDocumentFragment858, - expr: &seqExpr{ - pos: position{line: 1055, col: 5, offset: 32960}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1055, col: 5, offset: 32960}, - expr: &choiceExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - label: "end", - expr: &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonDocumentFragment864, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonDocumentFragment867, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment873, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment876, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1049, col: 5, offset: 32835}, - run: (*parser).callonDocumentFragment883, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1056, col: 5, offset: 32988}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment887, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment893, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment897, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1041, col: 5, offset: 32610}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 1041, col: 9, offset: 32614}, - expr: &choiceExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - label: "end", - expr: &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonDocumentFragment909, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonDocumentFragment912, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment918, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment921, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1049, col: 5, offset: 32835}, - run: (*parser).callonDocumentFragment928, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 204, col: 53, offset: 5942}, + name: "IncludedFileEndTag", }, &actionExpr{ - pos: position{line: 1064, col: 5, offset: 33143}, - run: (*parser).callonDocumentFragment931, - expr: &seqExpr{ - pos: position{line: 1064, col: 5, offset: 33143}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1064, col: 5, offset: 33143}, - label: "start", - expr: &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonDocumentFragment934, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonDocumentFragment937, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment943, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment946, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1065, col: 5, offset: 33182}, - run: (*parser).callonDocumentFragment953, - }, - &labeledExpr{ - pos: position{line: 1068, col: 5, offset: 33274}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1083, col: 4, offset: 33671}, - expr: &actionExpr{ - pos: position{line: 1083, col: 5, offset: 33672}, - run: (*parser).callonDocumentFragment956, - expr: &seqExpr{ - pos: position{line: 1083, col: 5, offset: 33672}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1083, col: 5, offset: 33672}, - expr: &choiceExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - label: "end", - expr: &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonDocumentFragment962, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonDocumentFragment965, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment971, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment974, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1077, col: 5, offset: 33545}, - run: (*parser).callonDocumentFragment981, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1084, col: 5, offset: 33702}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentFragment985, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentFragment991, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment995, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1069, col: 5, offset: 33308}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 1069, col: 9, offset: 33312}, - expr: &choiceExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - label: "end", - expr: &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonDocumentFragment1007, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonDocumentFragment1010, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1016, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1019, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1077, col: 5, offset: 33545}, - run: (*parser).callonDocumentFragment1026, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 204, col: 74, offset: 5963}, + run: (*parser).callonIncludedFileLine8, + expr: &anyMatcher{ + line: 204, col: 74, offset: 5963, }, }, - &actionExpr{ - pos: position{line: 2984, col: 18, offset: 96798}, - run: (*parser).callonDocumentFragment1029, - expr: &seqExpr{ - pos: position{line: 2984, col: 18, offset: 96798}, - exprs: []interface{}{ - &choiceExpr{ - pos: position{line: 2985, col: 9, offset: 96808}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2985, col: 9, offset: 96808}, - val: "'''", - ignoreCase: false, - want: "\"'''\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 11, offset: 96844}, - val: "***", - ignoreCase: false, - want: "\"***\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 19, offset: 96852}, - val: "* * *", - ignoreCase: false, - want: "\"* * *\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 29, offset: 96862}, - val: "---", - ignoreCase: false, - want: "\"---\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 37, offset: 96870}, - val: "- - -", - ignoreCase: false, - want: "\"- - -\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 47, offset: 96880}, - val: "___", - ignoreCase: false, - want: "\"___\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 55, offset: 96888}, - val: "_ _ _", - ignoreCase: false, - want: "\"_ _ _\"", - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 2987, col: 11, offset: 96946}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1040, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1043, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1051, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 242, col: 11, offset: 7410}, - name: "ListElements", - }, - &actionExpr{ - pos: position{line: 2882, col: 5, offset: 93927}, - run: (*parser).callonDocumentFragment1059, - expr: &seqExpr{ - pos: position{line: 2882, col: 5, offset: 93927}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1063, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1066, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2883, col: 5, offset: 93951}, - label: "header", - expr: &zeroOrOneExpr{ - pos: position{line: 2883, col: 12, offset: 93958}, - expr: &actionExpr{ - pos: position{line: 2898, col: 5, offset: 94271}, - run: (*parser).callonDocumentFragment1075, - expr: &seqExpr{ - pos: position{line: 2898, col: 5, offset: 94271}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2898, col: 5, offset: 94271}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2898, col: 11, offset: 94277}, - expr: &actionExpr{ - pos: position{line: 2904, col: 5, offset: 94394}, - run: (*parser).callonDocumentFragment1079, - expr: &seqExpr{ - pos: position{line: 2904, col: 5, offset: 94394}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2904, col: 5, offset: 94394}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2904, col: 9, offset: 94398}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1083, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2905, col: 5, offset: 94410}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2905, col: 14, offset: 94419}, - expr: &actionExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - run: (*parser).callonDocumentFragment1087, - expr: &labeledExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - run: (*parser).callonDocumentFragment1089, - expr: &oneOrMoreExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - expr: &charClassMatcher{ - pos: position{line: 2937, col: 14, offset: 95216}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1093, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2899, col: 5, offset: 94299}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment1101, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1107, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1110, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2884, col: 5, offset: 93977}, - label: "rows", - expr: &zeroOrMoreExpr{ - pos: position{line: 2884, col: 10, offset: 93982}, - expr: &choiceExpr{ - pos: position{line: 2909, col: 13, offset: 94516}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2919, col: 5, offset: 94735}, - run: (*parser).callonDocumentFragment1120, - expr: &seqExpr{ - pos: position{line: 2919, col: 5, offset: 94735}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2919, col: 5, offset: 94735}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1127, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1130, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2920, col: 5, offset: 94758}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2920, col: 11, offset: 94764}, - expr: &actionExpr{ - pos: position{line: 2920, col: 12, offset: 94765}, - run: (*parser).callonDocumentFragment1141, - expr: &seqExpr{ - pos: position{line: 2920, col: 12, offset: 94765}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2920, col: 12, offset: 94765}, - label: "cell", - expr: &actionExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - run: (*parser).callonDocumentFragment1144, - expr: &seqExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2929, col: 5, offset: 95006}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1151, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1154, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2930, col: 5, offset: 95029}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment1164, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1170, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1173, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2931, col: 5, offset: 95044}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2931, col: 9, offset: 95048}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1182, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2931, col: 16, offset: 95055}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2931, col: 25, offset: 95064}, - expr: &actionExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - run: (*parser).callonDocumentFragment1186, - expr: &labeledExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - run: (*parser).callonDocumentFragment1188, - expr: &oneOrMoreExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - expr: &charClassMatcher{ - pos: position{line: 2937, col: 14, offset: 95216}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1192, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2923, col: 6, offset: 94827}, - alternatives: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2923, col: 6, offset: 94827}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment1201, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1207, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1210, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andExpr{ - pos: position{line: 2923, col: 19, offset: 94840}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1222, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1225, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2912, col: 5, offset: 94583}, - run: (*parser).callonDocumentFragment1234, - expr: &seqExpr{ - pos: position{line: 2912, col: 5, offset: 94583}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2912, col: 5, offset: 94583}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1241, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1244, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2913, col: 5, offset: 94606}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2913, col: 11, offset: 94612}, - expr: &actionExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - run: (*parser).callonDocumentFragment1255, - expr: &seqExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2929, col: 5, offset: 95006}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1262, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1265, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2930, col: 5, offset: 95029}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment1275, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1281, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1284, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2931, col: 5, offset: 95044}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2931, col: 9, offset: 95048}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1293, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2931, col: 16, offset: 95055}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2931, col: 25, offset: 95064}, - expr: &actionExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - run: (*parser).callonDocumentFragment1297, - expr: &labeledExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - run: (*parser).callonDocumentFragment1299, - expr: &oneOrMoreExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - expr: &charClassMatcher{ - pos: position{line: 2937, col: 14, offset: 95216}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1303, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 2914, col: 5, offset: 94633}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentFragment1311, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1317, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1320, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1331, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1334, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonDocumentFragment1343, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonDocumentFragment1349, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1353, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1853, col: 5, offset: 60754}, - run: (*parser).callonDocumentFragment1360, - expr: &seqExpr{ - pos: position{line: 1853, col: 5, offset: 60754}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1853, col: 5, offset: 60754}, - label: "kind", - expr: &choiceExpr{ - pos: position{line: 293, col: 19, offset: 9062}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 293, col: 19, offset: 9062}, - run: (*parser).callonDocumentFragment1364, - expr: &litMatcher{ - pos: position{line: 293, col: 19, offset: 9062}, - val: "TIP", - ignoreCase: false, - want: "\"TIP\"", - }, - }, - &actionExpr{ - pos: position{line: 295, col: 5, offset: 9100}, - run: (*parser).callonDocumentFragment1366, - expr: &litMatcher{ - pos: position{line: 295, col: 5, offset: 9100}, - val: "NOTE", - ignoreCase: false, - want: "\"NOTE\"", - }, - }, - &actionExpr{ - pos: position{line: 297, col: 5, offset: 9140}, - run: (*parser).callonDocumentFragment1368, - expr: &litMatcher{ - pos: position{line: 297, col: 5, offset: 9140}, - val: "IMPORTANT", - ignoreCase: false, - want: "\"IMPORTANT\"", - }, - }, - &actionExpr{ - pos: position{line: 299, col: 5, offset: 9190}, - run: (*parser).callonDocumentFragment1370, - expr: &litMatcher{ - pos: position{line: 299, col: 5, offset: 9190}, - val: "WARNING", - ignoreCase: false, - want: "\"WARNING\"", - }, - }, - &actionExpr{ - pos: position{line: 301, col: 5, offset: 9236}, - run: (*parser).callonDocumentFragment1372, - expr: &litMatcher{ - pos: position{line: 301, col: 5, offset: 9236}, - val: "CAUTION", - ignoreCase: false, - want: "\"CAUTION\"", - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1853, col: 27, offset: 60776}, - val: ": ", - ignoreCase: false, - want: "\": \"", - }, - &labeledExpr{ - pos: position{line: 1854, col: 5, offset: 60786}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonDocumentFragment1376, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonDocumentFragment1379, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonDocumentFragment1382, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1384, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1855, col: 5, offset: 60820}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1855, col: 16, offset: 60831}, - expr: &actionExpr{ - pos: position{line: 1856, col: 9, offset: 60841}, - run: (*parser).callonDocumentFragment1393, - expr: &seqExpr{ - pos: position{line: 1856, col: 9, offset: 60841}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1856, col: 9, offset: 60841}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1399, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1401, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1857, col: 9, offset: 60880}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 1857, col: 15, offset: 60886}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonDocumentFragment1408, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonDocumentFragment1414, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1418, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonDocumentFragment1425, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonDocumentFragment1428, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonDocumentFragment1431, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1433, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - run: (*parser).callonDocumentFragment1440, - expr: &seqExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - run: (*parser).callonDocumentFragment1443, - expr: &seqExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1883, col: 14, offset: 61706}, - run: (*parser).callonDocumentFragment1446, - expr: &seqExpr{ - pos: position{line: 1883, col: 14, offset: 61706}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDocumentFragment1448, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 1883, col: 21, offset: 61713}, - expr: &charClassMatcher{ - pos: position{line: 1883, col: 21, offset: 61713}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1886, col: 5, offset: 61770}, - run: (*parser).callonDocumentFragment1453, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1455, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1877, col: 5, offset: 61453}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1877, col: 16, offset: 61464}, - expr: &choiceExpr{ - pos: position{line: 1877, col: 17, offset: 61465}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonDocumentFragment1465, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonDocumentFragment1471, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1475, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonDocumentFragment1482, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonDocumentFragment1485, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonDocumentFragment1488, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1490, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1238, col: 5, offset: 38970}, - run: (*parser).callonDocumentFragment1497, - expr: &seqExpr{ - pos: position{line: 1238, col: 5, offset: 38970}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1238, col: 5, offset: 38970}, - run: (*parser).callonDocumentFragment1499, - }, - &labeledExpr{ - pos: position{line: 1241, col: 5, offset: 39028}, - label: "frontmatter", - expr: &actionExpr{ - pos: position{line: 1246, col: 20, offset: 39123}, - run: (*parser).callonDocumentFragment1501, - expr: &seqExpr{ - pos: position{line: 1246, col: 20, offset: 39123}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1250, col: 30, offset: 39295}, - val: "---", - ignoreCase: false, - want: "\"---\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1250, col: 36, offset: 39301}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1505, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1508, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1246, col: 45, offset: 39148}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1246, col: 53, offset: 39156}, - expr: &actionExpr{ - pos: position{line: 1252, col: 27, offset: 39339}, - run: (*parser).callonDocumentFragment1517, - expr: &zeroOrMoreExpr{ - pos: position{line: 1252, col: 27, offset: 39339}, - expr: &oneOrMoreExpr{ - pos: position{line: 1252, col: 28, offset: 39340}, - expr: &seqExpr{ - pos: position{line: 1252, col: 29, offset: 39341}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1252, col: 29, offset: 39341}, - expr: &seqExpr{ - pos: position{line: 1250, col: 30, offset: 39295}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1250, col: 30, offset: 39295}, - val: "---", - ignoreCase: false, - want: "\"---\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1250, col: 36, offset: 39301}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1525, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1528, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1252, col: 55, offset: 39367, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1250, col: 30, offset: 39295}, - val: "---", - ignoreCase: false, - want: "\"---\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1250, col: 36, offset: 39301}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentFragment1538, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentFragment1541, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 248, col: 11, offset: 7556}, - name: "Paragraph", - }, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 204, col: 107, offset: 5996}, + name: "EOL", + }, }, }, }, }, { - name: "DelimitedBlockElements", - pos: position{line: 271, col: 1, offset: 8251}, + name: "IncludedFileStartTag", + pos: position{line: 208, col: 1, offset: 6075}, expr: &actionExpr{ - pos: position{line: 272, col: 5, offset: 8282}, - run: (*parser).callonDelimitedBlockElements1, + pos: position{line: 208, col: 25, offset: 6099}, + run: (*parser).callonIncludedFileStartTag1, expr: &seqExpr{ - pos: position{line: 272, col: 5, offset: 8282}, + pos: position{line: 208, col: 25, offset: 6099}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 208, col: 25, offset: 6099}, + val: "tag::", + ignoreCase: false, + want: "\"tag::\"", + }, &labeledExpr{ - pos: position{line: 272, col: 5, offset: 8282}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 272, col: 14, offset: 8291}, - expr: &choiceExpr{ - pos: position{line: 273, col: 9, offset: 8301}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonDelimitedBlockElements6, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonDelimitedBlockElements10, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 274, col: 11, offset: 8363}, - name: "DocumentFragment", - }, - }, + pos: position{line: 208, col: 33, offset: 6107}, + label: "tag", + expr: &actionExpr{ + pos: position{line: 208, col: 38, offset: 6112}, + run: (*parser).callonIncludedFileStartTag5, + expr: &ruleRefExpr{ + pos: position{line: 208, col: 38, offset: 6112}, + name: "Alphanums", }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + &litMatcher{ + pos: position{line: 208, col: 78, offset: 6152}, + val: "[]", + ignoreCase: false, + want: "\"[]\"", }, }, }, }, }, { - name: "AttributeDeclaration", - pos: position{line: 308, col: 1, offset: 9496}, + name: "IncludedFileEndTag", + pos: position{line: 212, col: 1, offset: 6225}, expr: &actionExpr{ - pos: position{line: 309, col: 5, offset: 9525}, - run: (*parser).callonAttributeDeclaration1, + pos: position{line: 212, col: 23, offset: 6247}, + run: (*parser).callonIncludedFileEndTag1, expr: &seqExpr{ - pos: position{line: 309, col: 5, offset: 9525}, + pos: position{line: 212, col: 23, offset: 6247}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 309, col: 5, offset: 9525}, - val: ":", + pos: position{line: 212, col: 23, offset: 6247}, + val: "end::", ignoreCase: false, - want: "\":\"", + want: "\"end::\"", }, &labeledExpr{ - pos: position{line: 309, col: 9, offset: 9529}, - label: "name", + pos: position{line: 212, col: 31, offset: 6255}, + label: "tag", expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonAttributeDeclaration5, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + pos: position{line: 212, col: 36, offset: 6260}, + run: (*parser).callonIncludedFileEndTag5, + expr: &ruleRefExpr{ + pos: position{line: 212, col: 36, offset: 6260}, + name: "Alphanums", }, }, }, &litMatcher{ - pos: position{line: 309, col: 30, offset: 9550}, - val: ":", + pos: position{line: 212, col: 76, offset: 6300}, + val: "[]", ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 310, col: 5, offset: 9559}, - label: "value", - expr: &zeroOrOneExpr{ - pos: position{line: 310, col: 11, offset: 9565}, - expr: &actionExpr{ - pos: position{line: 311, col: 9, offset: 9575}, - run: (*parser).callonAttributeDeclaration13, - expr: &seqExpr{ - pos: position{line: 311, col: 9, offset: 9575}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonAttributeDeclaration15, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 312, col: 9, offset: 9667}, - label: "value", - expr: &ruleRefExpr{ - pos: position{line: 312, col: 16, offset: 9674}, - name: "AttributeDeclarationValue", - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonAttributeDeclaration21, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + want: "\"[]\"", }, }, }, }, }, { - name: "AttributeDeclarationValue", - pos: position{line: 328, col: 1, offset: 10139}, + name: "DocumentFragment", + pos: position{line: 228, col: 1, offset: 6786}, expr: &actionExpr{ - pos: position{line: 329, col: 5, offset: 10173}, - run: (*parser).callonAttributeDeclarationValue1, + pos: position{line: 229, col: 5, offset: 6810}, + run: (*parser).callonDocumentFragment1, expr: &seqExpr{ - pos: position{line: 329, col: 5, offset: 10173}, + pos: position{line: 229, col: 5, offset: 6810}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 329, col: 5, offset: 10173}, - label: "elements", - expr: &actionExpr{ - pos: position{line: 345, col: 5, offset: 10691}, - run: (*parser).callonAttributeDeclarationValue4, - expr: &labeledExpr{ - pos: position{line: 345, col: 5, offset: 10691}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 345, col: 14, offset: 10700}, - expr: &actionExpr{ - pos: position{line: 350, col: 5, offset: 10831}, - run: (*parser).callonAttributeDeclarationValue7, - expr: &seqExpr{ - pos: position{line: 350, col: 5, offset: 10831}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 350, col: 5, offset: 10831}, - expr: &seqExpr{ - pos: position{line: 350, col: 7, offset: 10833}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 350, col: 7, offset: 10833}, - expr: &litMatcher{ - pos: position{line: 350, col: 7, offset: 10833}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 350, col: 13, offset: 10839}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonAttributeDeclarationValue14, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonAttributeDeclarationValue17, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 351, col: 5, offset: 10855}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 352, col: 9, offset: 10873}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 352, col: 10, offset: 10874}, - run: (*parser).callonAttributeDeclarationValue26, - expr: &oneOrMoreExpr{ - pos: position{line: 352, col: 10, offset: 10874}, - expr: &charClassMatcher{ - pos: position{line: 352, col: 10, offset: 10874}, - val: "[^\\r\\n{ ]", - chars: []rune{'\r', '\n', '{', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonAttributeDeclarationValue29, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonAttributeDeclarationValue31, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonAttributeDeclarationValue33, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonAttributeDeclarationValue36, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonAttributeDeclarationValue40, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonAttributeDeclarationValue47, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonAttributeDeclarationValue52, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonAttributeDeclarationValue54, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonAttributeDeclarationValue58, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonAttributeDeclarationValue62, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonAttributeDeclarationValue69, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonAttributeDeclarationValue74, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonAttributeDeclarationValue76, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonAttributeDeclarationValue80, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonAttributeDeclarationValue84, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonAttributeDeclarationValue90, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonAttributeDeclarationValue94, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 357, col: 12, offset: 11016}, - run: (*parser).callonAttributeDeclarationValue100, - expr: &litMatcher{ - pos: position{line: 357, col: 12, offset: 11016}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, + ¬Expr{ + pos: position{line: 229, col: 5, offset: 6810}, + expr: &ruleRefExpr{ + pos: position{line: 229, col: 6, offset: 6811}, + name: "EOF", + }, + }, + &labeledExpr{ + pos: position{line: 230, col: 5, offset: 6819}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 230, col: 16, offset: 6830}, + expr: &ruleRefExpr{ + pos: position{line: 230, col: 17, offset: 6831}, + name: "BlockAttributes", + }, + }, + }, + &labeledExpr{ + pos: position{line: 231, col: 5, offset: 6853}, + label: "element", + expr: &zeroOrOneExpr{ + pos: position{line: 231, col: 13, offset: 6861}, + expr: &choiceExpr{ + pos: position{line: 232, col: 9, offset: 6871}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 232, col: 9, offset: 6871}, + name: "ImageBlock", + }, + &ruleRefExpr{ + pos: position{line: 233, col: 11, offset: 6932}, + name: "UserMacroBlock", + }, + &ruleRefExpr{ + pos: position{line: 234, col: 11, offset: 6997}, + name: "ShortcutParagraph", + }, + &ruleRefExpr{ + pos: position{line: 235, col: 11, offset: 7025}, + name: "DocumentHeader", + }, + &ruleRefExpr{ + pos: position{line: 236, col: 11, offset: 7105}, + name: "AttributeDeclaration", + }, + &ruleRefExpr{ + pos: position{line: 237, col: 11, offset: 7136}, + name: "AttributeReset", + }, + &ruleRefExpr{ + pos: position{line: 238, col: 11, offset: 7161}, + name: "BlankLine", + }, + &ruleRefExpr{ + pos: position{line: 239, col: 11, offset: 7305}, + name: "Section", + }, + &ruleRefExpr{ + pos: position{line: 240, col: 11, offset: 7324}, + name: "DelimitedBlock", + }, + &ruleRefExpr{ + pos: position{line: 241, col: 11, offset: 7349}, + name: "ThematicBreak", + }, + &ruleRefExpr{ + pos: position{line: 242, col: 11, offset: 7410}, + name: "ListElements", + }, + &ruleRefExpr{ + pos: position{line: 243, col: 11, offset: 7433}, + name: "Table", + }, + &ruleRefExpr{ + pos: position{line: 244, col: 11, offset: 7449}, + name: "SingleLineComment", + }, + &ruleRefExpr{ + pos: position{line: 245, col: 11, offset: 7477}, + name: "AdmonitionParagraph", + }, + &ruleRefExpr{ + pos: position{line: 246, col: 11, offset: 7507}, + name: "LiteralParagraph", + }, + &ruleRefExpr{ + pos: position{line: 247, col: 11, offset: 7534}, + name: "FrontMatter", + }, + &ruleRefExpr{ + pos: position{line: 248, col: 11, offset: 7556}, + name: "Paragraph", }, }, }, }, }, + }, + }, + }, + }, + { + name: "RawLine", + pos: position{line: 260, col: 1, offset: 8026}, + expr: &actionExpr{ + pos: position{line: 261, col: 5, offset: 8042}, + run: (*parser).callonRawLine1, + expr: &seqExpr{ + pos: position{line: 261, col: 5, offset: 8042}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 261, col: 5, offset: 8042}, + expr: &ruleRefExpr{ + pos: position{line: 261, col: 6, offset: 8043}, + name: "EOF", + }, + }, &labeledExpr{ - pos: position{line: 330, col: 5, offset: 10223}, - label: "otherElements", - expr: &zeroOrMoreExpr{ - pos: position{line: 330, col: 19, offset: 10237}, - expr: &actionExpr{ - pos: position{line: 331, col: 9, offset: 10247}, - run: (*parser).callonAttributeDeclarationValue104, - expr: &seqExpr{ - pos: position{line: 331, col: 9, offset: 10247}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 331, col: 9, offset: 10247}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonAttributeDeclarationValue107, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 332, col: 9, offset: 10269}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonAttributeDeclarationValue113, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 333, col: 9, offset: 10284}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 333, col: 19, offset: 10294}, - name: "AttributeDeclarationValue", - }, - }, - }, + pos: position{line: 262, col: 5, offset: 8051}, + label: "content", + expr: &actionExpr{ + pos: position{line: 262, col: 14, offset: 8060}, + run: (*parser).callonRawLine6, + expr: &zeroOrMoreExpr{ + pos: position{line: 262, col: 14, offset: 8060}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 14, offset: 8060}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 265, col: 5, offset: 8117}, + name: "EOL", + }, }, }, }, }, { - name: "BlockAttributes", - pos: position{line: 373, col: 1, offset: 11621}, + name: "DelimitedBlockElements", + pos: position{line: 271, col: 1, offset: 8251}, expr: &actionExpr{ - pos: position{line: 374, col: 5, offset: 11644}, - run: (*parser).callonBlockAttributes1, - expr: &labeledExpr{ - pos: position{line: 374, col: 5, offset: 11644}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 374, col: 16, offset: 11655}, - expr: &choiceExpr{ - pos: position{line: 376, col: 9, offset: 11722}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 376, col: 10, offset: 11723}, - run: (*parser).callonBlockAttributes5, - expr: &seqExpr{ - pos: position{line: 376, col: 10, offset: 11723}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 376, col: 10, offset: 11723}, - label: "anchor", - expr: &actionExpr{ - pos: position{line: 408, col: 5, offset: 12598}, - run: (*parser).callonBlockAttributes8, - expr: &seqExpr{ - pos: position{line: 408, col: 5, offset: 12598}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 408, col: 5, offset: 12598}, - val: "[[", - ignoreCase: false, - want: "\"[[\"", - }, - &labeledExpr{ - pos: position{line: 409, col: 5, offset: 12608}, - label: "id", - expr: &actionExpr{ - pos: position{line: 410, col: 9, offset: 12621}, - run: (*parser).callonBlockAttributes12, - expr: &labeledExpr{ - pos: position{line: 410, col: 9, offset: 12621}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 410, col: 18, offset: 12630}, - expr: &choiceExpr{ - pos: position{line: 411, col: 13, offset: 12644}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 411, col: 14, offset: 12645}, - run: (*parser).callonBlockAttributes16, - expr: &oneOrMoreExpr{ - pos: position{line: 411, col: 14, offset: 12645}, - expr: &charClassMatcher{ - pos: position{line: 411, col: 14, offset: 12645}, - val: "[^=\\r\\n�{]]", - chars: []rune{'=', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonBlockAttributes19, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonBlockAttributes23, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonBlockAttributes27, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonBlockAttributes29, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonBlockAttributes32, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonBlockAttributes36, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonBlockAttributes43, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonBlockAttributes48, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonBlockAttributes50, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonBlockAttributes54, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonBlockAttributes58, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonBlockAttributes65, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonBlockAttributes70, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonBlockAttributes72, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonBlockAttributes76, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonBlockAttributes80, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonBlockAttributes86, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonBlockAttributes90, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 16, offset: 12878}, - run: (*parser).callonBlockAttributes96, - expr: &litMatcher{ - pos: position{line: 416, col: 16, offset: 12878}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 422, col: 5, offset: 13064}, - val: "]]", - ignoreCase: false, - want: "\"]]\"", - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 376, col: 35, offset: 11748}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonBlockAttributes100, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonBlockAttributes103, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 376, col: 46, offset: 11759}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonBlockAttributes111, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonBlockAttributes117, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonBlockAttributes120, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 380, col: 12, offset: 11880}, - run: (*parser).callonBlockAttributes127, - expr: &seqExpr{ - pos: position{line: 380, col: 12, offset: 11880}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 380, col: 12, offset: 11880}, - label: "title", - expr: &actionExpr{ - pos: position{line: 427, col: 19, offset: 13183}, - run: (*parser).callonBlockAttributes130, - expr: &seqExpr{ - pos: position{line: 427, col: 19, offset: 13183}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 427, col: 19, offset: 13183}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - &labeledExpr{ - pos: position{line: 427, col: 23, offset: 13187}, - label: "title", - expr: &actionExpr{ - pos: position{line: 428, col: 5, offset: 13199}, - run: (*parser).callonBlockAttributes134, - expr: &seqExpr{ - pos: position{line: 428, col: 5, offset: 13199}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 428, col: 5, offset: 13199}, - expr: &charClassMatcher{ - pos: position{line: 428, col: 6, offset: 13200}, - val: "[. ]", - chars: []rune{'.', ' '}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 429, col: 5, offset: 13312}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 429, col: 14, offset: 13321}, - expr: &choiceExpr{ - pos: position{line: 430, col: 9, offset: 13331}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 10, offset: 13332}, - run: (*parser).callonBlockAttributes141, - expr: &oneOrMoreExpr{ - pos: position{line: 430, col: 10, offset: 13332}, - expr: &charClassMatcher{ - pos: position{line: 430, col: 10, offset: 13332}, - val: "[^\\r\\n�{]", - chars: []rune{'\r', '\n', '�', '{'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonBlockAttributes144, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonBlockAttributes148, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonBlockAttributes154, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonBlockAttributes158, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 12, offset: 13445}, - run: (*parser).callonBlockAttributes164, - expr: &litMatcher{ - pos: position{line: 434, col: 12, offset: 13445}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 380, col: 35, offset: 11903}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonBlockAttributes167, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonBlockAttributes170, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 380, col: 46, offset: 11914}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonBlockAttributes178, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonBlockAttributes184, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonBlockAttributes187, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 384, col: 12, offset: 12004}, - run: (*parser).callonBlockAttributes194, - expr: &seqExpr{ - pos: position{line: 384, col: 12, offset: 12004}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 384, col: 12, offset: 12004}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 384, col: 24, offset: 12016}, - name: "LongHandAttributes", - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 384, col: 44, offset: 12036}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonBlockAttributes199, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonBlockAttributes202, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 384, col: 55, offset: 12047}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonBlockAttributes210, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonBlockAttributes216, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonBlockAttributes219, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 272, col: 5, offset: 8282}, + run: (*parser).callonDelimitedBlockElements1, + expr: &seqExpr{ + pos: position{line: 272, col: 5, offset: 8282}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 272, col: 5, offset: 8282}, + label: "elements", + expr: &zeroOrMoreExpr{ + pos: position{line: 272, col: 14, offset: 8291}, + expr: &choiceExpr{ + pos: position{line: 273, col: 9, offset: 8301}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 273, col: 9, offset: 8301}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 274, col: 11, offset: 8363}, + name: "DocumentFragment", }, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 276, col: 5, offset: 8392}, + name: "EOF", + }, }, }, }, }, { - name: "InlineAttributes", - pos: position{line: 392, col: 1, offset: 12231}, + name: "FrontMatterFragmentElement", + pos: position{line: 285, col: 1, offset: 8692}, + expr: &choiceExpr{ + pos: position{line: 286, col: 5, offset: 8726}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 286, col: 5, offset: 8726}, + name: "FrontMatterDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 287, col: 7, offset: 8753}, + name: "BlankLine", + }, + }, + }, + }, + { + name: "AdmonitionKind", + pos: position{line: 293, col: 1, offset: 9044}, + expr: &choiceExpr{ + pos: position{line: 293, col: 19, offset: 9062}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 293, col: 19, offset: 9062}, + run: (*parser).callonAdmonitionKind2, + expr: &litMatcher{ + pos: position{line: 293, col: 19, offset: 9062}, + val: "TIP", + ignoreCase: false, + want: "\"TIP\"", + }, + }, + &actionExpr{ + pos: position{line: 295, col: 5, offset: 9100}, + run: (*parser).callonAdmonitionKind4, + expr: &litMatcher{ + pos: position{line: 295, col: 5, offset: 9100}, + val: "NOTE", + ignoreCase: false, + want: "\"NOTE\"", + }, + }, + &actionExpr{ + pos: position{line: 297, col: 5, offset: 9140}, + run: (*parser).callonAdmonitionKind6, + expr: &litMatcher{ + pos: position{line: 297, col: 5, offset: 9140}, + val: "IMPORTANT", + ignoreCase: false, + want: "\"IMPORTANT\"", + }, + }, + &actionExpr{ + pos: position{line: 299, col: 5, offset: 9190}, + run: (*parser).callonAdmonitionKind8, + expr: &litMatcher{ + pos: position{line: 299, col: 5, offset: 9190}, + val: "WARNING", + ignoreCase: false, + want: "\"WARNING\"", + }, + }, + &actionExpr{ + pos: position{line: 301, col: 5, offset: 9236}, + run: (*parser).callonAdmonitionKind10, + expr: &litMatcher{ + pos: position{line: 301, col: 5, offset: 9236}, + val: "CAUTION", + ignoreCase: false, + want: "\"CAUTION\"", + }, + }, + }, + }, + }, + { + name: "AttributeDeclaration", + pos: position{line: 308, col: 1, offset: 9496}, expr: &actionExpr{ - pos: position{line: 393, col: 5, offset: 12255}, - run: (*parser).callonInlineAttributes1, + pos: position{line: 309, col: 5, offset: 9525}, + run: (*parser).callonAttributeDeclaration1, expr: &seqExpr{ - pos: position{line: 393, col: 5, offset: 12255}, + pos: position{line: 309, col: 5, offset: 9525}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 393, col: 5, offset: 12255}, - val: "[", + pos: position{line: 309, col: 5, offset: 9525}, + val: ":", ignoreCase: false, - want: "\"[\"", + want: "\":\"", }, &labeledExpr{ - pos: position{line: 394, col: 5, offset: 12263}, - label: "attributes", - expr: &zeroOrMoreExpr{ - pos: position{line: 394, col: 16, offset: 12274}, + pos: position{line: 309, col: 9, offset: 9529}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 309, col: 15, offset: 9535}, + name: "AttributeName", + }, + }, + &litMatcher{ + pos: position{line: 309, col: 30, offset: 9550}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 310, col: 5, offset: 9559}, + label: "value", + expr: &zeroOrOneExpr{ + pos: position{line: 310, col: 11, offset: 9565}, expr: &actionExpr{ - pos: position{line: 395, col: 9, offset: 12284}, - run: (*parser).callonInlineAttributes6, + pos: position{line: 311, col: 9, offset: 9575}, + run: (*parser).callonAttributeDeclaration9, expr: &seqExpr{ - pos: position{line: 396, col: 13, offset: 12298}, + pos: position{line: 311, col: 9, offset: 9575}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 396, col: 13, offset: 12298}, - expr: &litMatcher{ - pos: position{line: 396, col: 14, offset: 12299}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, + &ruleRefExpr{ + pos: position{line: 311, col: 9, offset: 9575}, + name: "Spaces", }, &labeledExpr{ - pos: position{line: 397, col: 13, offset: 12331}, - label: "attribute", - expr: &choiceExpr{ - pos: position{line: 397, col: 24, offset: 12342}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 397, col: 24, offset: 12342}, - name: "PositionalAttribute", - }, - &ruleRefExpr{ - pos: position{line: 397, col: 46, offset: 12364}, - name: "NamedAttribute", - }, - }, + pos: position{line: 312, col: 9, offset: 9667}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 312, col: 16, offset: 9674}, + name: "AttributeDeclarationValue", }, }, }, @@ -13319,158 +1572,99 @@ var g = &grammar{ }, }, }, - &litMatcher{ - pos: position{line: 402, col: 5, offset: 12447}, - val: "]", - ignoreCase: false, - want: "\"]\"", + &ruleRefExpr{ + pos: position{line: 316, col: 5, offset: 9755}, + name: "EOL", }, }, }, }, }, { - name: "LongHandAttributes", - pos: position{line: 445, col: 1, offset: 13826}, + name: "AttributeName", + pos: position{line: 324, col: 1, offset: 10055}, expr: &actionExpr{ - pos: position{line: 446, col: 5, offset: 13852}, - run: (*parser).callonLongHandAttributes1, + pos: position{line: 324, col: 18, offset: 10072}, + run: (*parser).callonAttributeName1, expr: &seqExpr{ - pos: position{line: 446, col: 5, offset: 13852}, + pos: position{line: 324, col: 18, offset: 10072}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 446, col: 5, offset: 13852}, - expr: &litMatcher{ - pos: position{line: 446, col: 6, offset: 13853}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &litMatcher{ - pos: position{line: 446, col: 10, offset: 13857}, - val: "[", + &charClassMatcher{ + pos: position{line: 324, col: 18, offset: 10072}, + val: "[\\pL0-9_]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"[\"", + inverted: false, }, - ¬Expr{ - pos: position{line: 446, col: 14, offset: 13861}, - expr: &litMatcher{ - pos: position{line: 446, col: 15, offset: 13862}, - val: "[", + &zeroOrMoreExpr{ + pos: position{line: 324, col: 28, offset: 10082}, + expr: &charClassMatcher{ + pos: position{line: 324, col: 29, offset: 10083}, + val: "[\\pL0-9-]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"[\"", + inverted: false, }, }, + }, + }, + }, + }, + { + name: "AttributeDeclarationValue", + pos: position{line: 328, col: 1, offset: 10139}, + expr: &actionExpr{ + pos: position{line: 329, col: 5, offset: 10173}, + run: (*parser).callonAttributeDeclarationValue1, + expr: &seqExpr{ + pos: position{line: 329, col: 5, offset: 10173}, + exprs: []interface{}{ &labeledExpr{ - pos: position{line: 447, col: 5, offset: 13975}, - label: "firstPositionalAttributes", - expr: &zeroOrOneExpr{ - pos: position{line: 447, col: 31, offset: 14001}, - expr: &ruleRefExpr{ - pos: position{line: 447, col: 32, offset: 14002}, - name: "FirstPositionalAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 448, col: 5, offset: 14034}, - label: "otherAttributes", - expr: &zeroOrMoreExpr{ - pos: position{line: 448, col: 21, offset: 14050}, - expr: &choiceExpr{ - pos: position{line: 448, col: 22, offset: 14051}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 448, col: 22, offset: 14051}, - name: "PositionalAttribute", - }, - &ruleRefExpr{ - pos: position{line: 448, col: 44, offset: 14073}, - name: "NamedAttribute", - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 449, col: 5, offset: 14094}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - }, - }, - }, - { - name: "FirstPositionalAttributes", - pos: position{line: 462, col: 1, offset: 14622}, - expr: &actionExpr{ - pos: position{line: 463, col: 5, offset: 14656}, - run: (*parser).callonFirstPositionalAttributes1, - expr: &seqExpr{ - pos: position{line: 463, col: 5, offset: 14656}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 463, col: 5, offset: 14656}, - label: "main", - expr: &zeroOrOneExpr{ - pos: position{line: 463, col: 10, offset: 14661}, - expr: &ruleRefExpr{ - pos: position{line: 464, col: 9, offset: 14671}, - name: "ShortHandAttribute", - }, + pos: position{line: 329, col: 5, offset: 10173}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 329, col: 15, offset: 10183}, + name: "AttributeDeclarationValueElements", }, }, &labeledExpr{ - pos: position{line: 466, col: 5, offset: 14701}, - label: "extras", + pos: position{line: 330, col: 5, offset: 10223}, + label: "otherElements", expr: &zeroOrMoreExpr{ - pos: position{line: 466, col: 12, offset: 14708}, + pos: position{line: 330, col: 19, offset: 10237}, expr: &actionExpr{ - pos: position{line: 467, col: 9, offset: 14719}, - run: (*parser).callonFirstPositionalAttributes8, + pos: position{line: 331, col: 9, offset: 10247}, + run: (*parser).callonAttributeDeclarationValue7, expr: &seqExpr{ - pos: position{line: 467, col: 9, offset: 14719}, + pos: position{line: 331, col: 9, offset: 10247}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 467, col: 9, offset: 14719}, - expr: &litMatcher{ - pos: position{line: 467, col: 10, offset: 14720}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, + &litMatcher{ + pos: position{line: 331, col: 9, offset: 10247}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", }, - ¬Expr{ - pos: position{line: 467, col: 14, offset: 14724}, - expr: &litMatcher{ - pos: position{line: 467, col: 15, offset: 14725}, - val: "]", - ignoreCase: false, - want: "\"]\"", + &ruleRefExpr{ + pos: position{line: 331, col: 14, offset: 10252}, + name: "Newline", + }, + &zeroOrMoreExpr{ + pos: position{line: 332, col: 9, offset: 10269}, + expr: &ruleRefExpr{ + pos: position{line: 332, col: 9, offset: 10269}, + name: "Space", }, }, &labeledExpr{ - pos: position{line: 468, col: 9, offset: 14737}, - label: "extra", - expr: &choiceExpr{ - pos: position{line: 469, col: 13, offset: 14757}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 469, col: 13, offset: 14757}, - name: "ShortHandIDAttribute", - }, - &ruleRefExpr{ - pos: position{line: 470, col: 15, offset: 14793}, - name: "ShortHandOptionAttribute", - }, - &ruleRefExpr{ - pos: position{line: 471, col: 15, offset: 14832}, - name: "ShortHandDotRoleAttribute", - }, - }, + pos: position{line: 333, col: 9, offset: 10284}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 333, col: 19, offset: 10294}, + name: "AttributeDeclarationValue", }, }, }, @@ -13478,133 +1672,105 @@ var g = &grammar{ }, }, }, - &zeroOrOneExpr{ - pos: position{line: 474, col: 8, offset: 14908}, - expr: &seqExpr{ - pos: position{line: 474, col: 9, offset: 14909}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 474, col: 9, offset: 14909}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 474, col: 13, offset: 14913}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonFirstPositionalAttributes23, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 475, col: 5, offset: 14927}, - run: (*parser).callonFirstPositionalAttributes25, - }, - }, - }, - }, - }, - { - name: "ShortHandIDAttribute", - pos: position{line: 491, col: 1, offset: 15343}, - expr: &actionExpr{ - pos: position{line: 491, col: 25, offset: 15367}, - run: (*parser).callonShortHandIDAttribute1, - expr: &seqExpr{ - pos: position{line: 491, col: 25, offset: 15367}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 491, col: 25, offset: 15367}, - val: "#", - ignoreCase: false, - want: "\"#\"", - }, - &labeledExpr{ - pos: position{line: 491, col: 29, offset: 15371}, - label: "id", - expr: &ruleRefExpr{ - pos: position{line: 491, col: 33, offset: 15375}, - name: "ShortHandAttributeValue", - }, - }, }, }, }, }, { - name: "ShortHandAttribute", - pos: position{line: 495, col: 1, offset: 15449}, + name: "AttributeDeclarationValueElements", + pos: position{line: 344, col: 1, offset: 10649}, expr: &actionExpr{ - pos: position{line: 495, col: 23, offset: 15471}, - run: (*parser).callonShortHandAttribute1, + pos: position{line: 345, col: 5, offset: 10691}, + run: (*parser).callonAttributeDeclarationValueElements1, expr: &labeledExpr{ - pos: position{line: 495, col: 23, offset: 15471}, - label: "value", - expr: &ruleRefExpr{ - pos: position{line: 495, col: 30, offset: 15478}, - name: "ShortHandAttributeValue", - }, - }, - }, - }, - { - name: "ShortHandDotRoleAttribute", - pos: position{line: 500, col: 1, offset: 15604}, - expr: &actionExpr{ - pos: position{line: 500, col: 30, offset: 15633}, - run: (*parser).callonShortHandDotRoleAttribute1, - expr: &seqExpr{ - pos: position{line: 500, col: 30, offset: 15633}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 500, col: 30, offset: 15633}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - &labeledExpr{ - pos: position{line: 500, col: 34, offset: 15637}, - label: "role", - expr: &ruleRefExpr{ - pos: position{line: 500, col: 40, offset: 15643}, - name: "ShortHandAttributeValue", - }, + pos: position{line: 345, col: 5, offset: 10691}, + label: "elements", + expr: &zeroOrMoreExpr{ + pos: position{line: 345, col: 14, offset: 10700}, + expr: &ruleRefExpr{ + pos: position{line: 345, col: 15, offset: 10701}, + name: "AttributeDeclarationValueElement", }, }, }, }, }, { - name: "ShortHandOptionAttribute", - pos: position{line: 505, col: 1, offset: 15765}, + name: "AttributeDeclarationValueElement", + pos: position{line: 349, col: 1, offset: 10790}, expr: &actionExpr{ - pos: position{line: 505, col: 29, offset: 15793}, - run: (*parser).callonShortHandOptionAttribute1, + pos: position{line: 350, col: 5, offset: 10831}, + run: (*parser).callonAttributeDeclarationValueElement1, expr: &seqExpr{ - pos: position{line: 505, col: 29, offset: 15793}, + pos: position{line: 350, col: 5, offset: 10831}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 505, col: 29, offset: 15793}, - val: "%", - ignoreCase: false, - want: "\"%\"", + ¬Expr{ + pos: position{line: 350, col: 5, offset: 10831}, + expr: &seqExpr{ + pos: position{line: 350, col: 7, offset: 10833}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 350, col: 7, offset: 10833}, + expr: &litMatcher{ + pos: position{line: 350, col: 7, offset: 10833}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 350, col: 13, offset: 10839}, + expr: &ruleRefExpr{ + pos: position{line: 350, col: 13, offset: 10839}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 350, col: 20, offset: 10846}, + name: "EOL", + }, + }, + }, }, &labeledExpr{ - pos: position{line: 505, col: 33, offset: 15797}, - label: "option", - expr: &ruleRefExpr{ - pos: position{line: 505, col: 41, offset: 15805}, - name: "ShortHandAttributeValue", + pos: position{line: 351, col: 5, offset: 10855}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 352, col: 9, offset: 10873}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 352, col: 10, offset: 10874}, + run: (*parser).callonAttributeDeclarationValueElement12, + expr: &oneOrMoreExpr{ + pos: position{line: 352, col: 10, offset: 10874}, + expr: &charClassMatcher{ + pos: position{line: 352, col: 10, offset: 10874}, + val: "[^\\r\\n{ ]", + chars: []rune{'\r', '\n', '{', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 355, col: 11, offset: 10970}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 356, col: 11, offset: 10986}, + name: "AttributeReference", + }, + &actionExpr{ + pos: position{line: 357, col: 12, offset: 11016}, + run: (*parser).callonAttributeDeclarationValueElement17, + expr: &litMatcher{ + pos: position{line: 357, col: 12, offset: 11016}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, }, }, }, @@ -13612,486 +1778,88 @@ var g = &grammar{ }, }, { - name: "ShortHandAttributeValue", - pos: position{line: 510, col: 1, offset: 15918}, + name: "AttributeReset", + pos: position{line: 364, col: 1, offset: 11153}, expr: &choiceExpr{ - pos: position{line: 511, col: 5, offset: 15950}, + pos: position{line: 364, col: 19, offset: 11171}, alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 511, col: 5, offset: 15950}, - name: "SingleQuotedAttributeValue", - }, - &ruleRefExpr{ - pos: position{line: 512, col: 7, offset: 15984}, - name: "DoubleQuotedAttributeValue", + &actionExpr{ + pos: position{line: 364, col: 19, offset: 11171}, + run: (*parser).callonAttributeReset2, + expr: &seqExpr{ + pos: position{line: 364, col: 19, offset: 11171}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 364, col: 19, offset: 11171}, + val: ":!", + ignoreCase: false, + want: "\":!\"", + }, + &labeledExpr{ + pos: position{line: 364, col: 24, offset: 11176}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 364, col: 30, offset: 11182}, + name: "AttributeName", + }, + }, + &litMatcher{ + pos: position{line: 364, col: 45, offset: 11197}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 364, col: 49, offset: 11201}, + expr: &ruleRefExpr{ + pos: position{line: 364, col: 49, offset: 11201}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 364, col: 56, offset: 11208}, + name: "EOL", + }, + }, + }, }, &actionExpr{ - pos: position{line: 513, col: 7, offset: 16018}, - run: (*parser).callonShortHandAttributeValue4, + pos: position{line: 366, col: 9, offset: 11292}, + run: (*parser).callonAttributeReset11, expr: &seqExpr{ - pos: position{line: 513, col: 7, offset: 16018}, + pos: position{line: 366, col: 9, offset: 11292}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 366, col: 9, offset: 11292}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, &labeledExpr{ - pos: position{line: 513, col: 7, offset: 16018}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 513, col: 16, offset: 16027}, - expr: &choiceExpr{ - pos: position{line: 516, col: 9, offset: 16209}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonShortHandAttributeValue9, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonShortHandAttributeValue11, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonShortHandAttributeValue13, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonShortHandAttributeValue15, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 517, col: 12, offset: 16235}, - run: (*parser).callonShortHandAttributeValue17, - expr: &oneOrMoreExpr{ - pos: position{line: 517, col: 12, offset: 16235}, - expr: &charClassMatcher{ - pos: position{line: 517, col: 12, offset: 16235}, - val: "[^,=.%# \\r\\n�{]]", - chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonShortHandAttributeValue20, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonShortHandAttributeValue22, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonShortHandAttributeValue25, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonShortHandAttributeValue29, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonShortHandAttributeValue36, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonShortHandAttributeValue41, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonShortHandAttributeValue43, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonShortHandAttributeValue47, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonShortHandAttributeValue51, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonShortHandAttributeValue58, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonShortHandAttributeValue63, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonShortHandAttributeValue65, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonShortHandAttributeValue69, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonShortHandAttributeValue73, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonShortHandAttributeValue79, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonShortHandAttributeValue83, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 522, col: 12, offset: 16403}, - run: (*parser).callonShortHandAttributeValue89, - expr: &litMatcher{ - pos: position{line: 522, col: 12, offset: 16403}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, + pos: position{line: 366, col: 13, offset: 11296}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 366, col: 19, offset: 11302}, + name: "AttributeName", }, }, - &andExpr{ - pos: position{line: 526, col: 5, offset: 16491}, - expr: ¬Expr{ - pos: position{line: 526, col: 7, offset: 16493}, - expr: &seqExpr{ - pos: position{line: 526, col: 9, offset: 16495}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 526, col: 9, offset: 16495}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonShortHandAttributeValue95, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 526, col: 16, offset: 16502}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 366, col: 34, offset: 11317}, + val: "!:", + ignoreCase: false, + want: "\"!:\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 366, col: 39, offset: 11322}, + expr: &ruleRefExpr{ + pos: position{line: 366, col: 39, offset: 11322}, + name: "Space", }, }, + &ruleRefExpr{ + pos: position{line: 366, col: 46, offset: 11329}, + name: "EOL", + }, }, }, }, @@ -14099,142 +1867,124 @@ var g = &grammar{ }, }, { - name: "PositionalAttribute", - pos: position{line: 531, col: 1, offset: 16580}, - expr: &choiceExpr{ - pos: position{line: 531, col: 24, offset: 16603}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 532, col: 5, offset: 16609}, - run: (*parser).callonPositionalAttribute2, - expr: &seqExpr{ - pos: position{line: 532, col: 5, offset: 16609}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 532, col: 5, offset: 16609}, - label: "value", - expr: &ruleRefExpr{ - pos: position{line: 532, col: 12, offset: 16616}, - name: "AttributeValue", + name: "BlockAttributes", + pos: position{line: 373, col: 1, offset: 11621}, + expr: &actionExpr{ + pos: position{line: 374, col: 5, offset: 11644}, + run: (*parser).callonBlockAttributes1, + expr: &labeledExpr{ + pos: position{line: 374, col: 5, offset: 11644}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 374, col: 16, offset: 11655}, + expr: &choiceExpr{ + pos: position{line: 376, col: 9, offset: 11722}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 376, col: 10, offset: 11723}, + run: (*parser).callonBlockAttributes5, + expr: &seqExpr{ + pos: position{line: 376, col: 10, offset: 11723}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 376, col: 10, offset: 11723}, + label: "anchor", + expr: &ruleRefExpr{ + pos: position{line: 376, col: 18, offset: 11731}, + name: "LegacyElementID", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 376, col: 35, offset: 11748}, + expr: &ruleRefExpr{ + pos: position{line: 376, col: 35, offset: 11748}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 376, col: 42, offset: 11755}, + name: "EOL", + }, + &zeroOrMoreExpr{ + pos: position{line: 376, col: 46, offset: 11759}, + expr: &ruleRefExpr{ + pos: position{line: 376, col: 46, offset: 11759}, + name: "BlankLine", + }, + }, + }, }, }, - &choiceExpr{ - pos: position{line: 532, col: 29, offset: 16633}, - alternatives: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 532, col: 29, offset: 16633}, - expr: &seqExpr{ - pos: position{line: 532, col: 30, offset: 16634}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 532, col: 30, offset: 16634}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 532, col: 34, offset: 16638}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonPositionalAttribute11, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, + &actionExpr{ + pos: position{line: 380, col: 12, offset: 11880}, + run: (*parser).callonBlockAttributes14, + expr: &seqExpr{ + pos: position{line: 380, col: 12, offset: 11880}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 380, col: 12, offset: 11880}, + label: "title", + expr: &ruleRefExpr{ + pos: position{line: 380, col: 19, offset: 11887}, + name: "ShortHandTitle", }, }, - }, - &andExpr{ - pos: position{line: 532, col: 45, offset: 16649}, - expr: &litMatcher{ - pos: position{line: 532, col: 46, offset: 16650}, - val: "]", - ignoreCase: false, - want: "\"]\"", + &zeroOrMoreExpr{ + pos: position{line: 380, col: 35, offset: 11903}, + expr: &ruleRefExpr{ + pos: position{line: 380, col: 35, offset: 11903}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 380, col: 42, offset: 11910}, + name: "EOL", + }, + &zeroOrMoreExpr{ + pos: position{line: 380, col: 46, offset: 11914}, + expr: &ruleRefExpr{ + pos: position{line: 380, col: 46, offset: 11914}, + name: "BlankLine", + }, }, }, }, }, - }, - }, - }, - &actionExpr{ - pos: position{line: 537, col: 6, offset: 16887}, - run: (*parser).callonPositionalAttribute15, - expr: &seqExpr{ - pos: position{line: 537, col: 6, offset: 16887}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 537, col: 6, offset: 16887}, - label: "value", + &actionExpr{ + pos: position{line: 384, col: 12, offset: 12004}, + run: (*parser).callonBlockAttributes23, expr: &seqExpr{ - pos: position{line: 537, col: 13, offset: 16894}, + pos: position{line: 384, col: 12, offset: 12004}, exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 384, col: 12, offset: 12004}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 384, col: 24, offset: 12016}, + name: "LongHandAttributes", + }, + }, &zeroOrMoreExpr{ - pos: position{line: 537, col: 13, offset: 16894}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonPositionalAttribute20, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 384, col: 44, offset: 12036}, + expr: &ruleRefExpr{ + pos: position{line: 384, col: 44, offset: 12036}, + name: "Space", }, }, - &choiceExpr{ - pos: position{line: 537, col: 21, offset: 16902}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 537, col: 22, offset: 16903}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 537, col: 22, offset: 16903}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 537, col: 26, offset: 16907}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonPositionalAttribute26, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &andExpr{ - pos: position{line: 537, col: 36, offset: 16917}, - expr: &litMatcher{ - pos: position{line: 537, col: 37, offset: 16918}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, + &ruleRefExpr{ + pos: position{line: 384, col: 51, offset: 12043}, + name: "EOL", + }, + &zeroOrMoreExpr{ + pos: position{line: 384, col: 55, offset: 12047}, + expr: &ruleRefExpr{ + pos: position{line: 384, col: 55, offset: 12047}, + name: "BlankLine", }, }, }, }, }, - &andCodeExpr{ - pos: position{line: 538, col: 5, offset: 16928}, - run: (*parser).callonPositionalAttribute30, - }, }, }, }, @@ -14242,181 +1992,204 @@ var g = &grammar{ }, }, { - name: "NamedAttribute", - pos: position{line: 548, col: 1, offset: 17243}, + name: "InlineAttributes", + pos: position{line: 392, col: 1, offset: 12231}, expr: &actionExpr{ - pos: position{line: 548, col: 19, offset: 17261}, - run: (*parser).callonNamedAttribute1, + pos: position{line: 393, col: 5, offset: 12255}, + run: (*parser).callonInlineAttributes1, expr: &seqExpr{ - pos: position{line: 548, col: 19, offset: 17261}, + pos: position{line: 393, col: 5, offset: 12255}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 548, col: 19, offset: 17261}, - label: "key", - expr: &actionExpr{ - pos: position{line: 553, col: 22, offset: 17569}, - run: (*parser).callonNamedAttribute4, - expr: &seqExpr{ - pos: position{line: 553, col: 22, offset: 17569}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 553, col: 22, offset: 17569}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonNamedAttribute7, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 553, col: 29, offset: 17576}, - expr: &charClassMatcher{ - pos: position{line: 553, col: 29, offset: 17576}, - val: "[^\\r\\n=,]]", - chars: []rune{'\r', '\n', '=', ',', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 553, col: 42, offset: 17589}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonNamedAttribute12, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, &litMatcher{ - pos: position{line: 548, col: 43, offset: 17285}, - val: "=", + pos: position{line: 393, col: 5, offset: 12255}, + val: "[", ignoreCase: false, - want: "\"=\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 548, col: 47, offset: 17289}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonNamedAttribute16, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + want: "\"[\"", }, &labeledExpr{ - pos: position{line: 548, col: 54, offset: 17296}, - label: "value", - expr: &ruleRefExpr{ - pos: position{line: 548, col: 61, offset: 17303}, - name: "AttributeValue", - }, - }, - &zeroOrOneExpr{ - pos: position{line: 548, col: 77, offset: 17319}, - expr: &seqExpr{ - pos: position{line: 548, col: 78, offset: 17320}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 548, col: 78, offset: 17320}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 548, col: 82, offset: 17324}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonNamedAttribute24, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 394, col: 5, offset: 12263}, + label: "attributes", + expr: &zeroOrMoreExpr{ + pos: position{line: 394, col: 16, offset: 12274}, + expr: &actionExpr{ + pos: position{line: 395, col: 9, offset: 12284}, + run: (*parser).callonInlineAttributes6, + expr: &seqExpr{ + pos: position{line: 396, col: 13, offset: 12298}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 396, col: 13, offset: 12298}, + expr: &litMatcher{ + pos: position{line: 396, col: 14, offset: 12299}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + }, + &labeledExpr{ + pos: position{line: 397, col: 13, offset: 12331}, + label: "attribute", + expr: &choiceExpr{ + pos: position{line: 397, col: 24, offset: 12342}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 397, col: 24, offset: 12342}, + name: "PositionalAttribute", + }, + &ruleRefExpr{ + pos: position{line: 397, col: 46, offset: 12364}, + name: "NamedAttribute", + }, + }, + }, }, }, }, }, }, }, + &litMatcher{ + pos: position{line: 402, col: 5, offset: 12447}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, }, }, }, }, { - name: "AttributeValue", - pos: position{line: 557, col: 1, offset: 17659}, + name: "LegacyElementID", + pos: position{line: 407, col: 1, offset: 12575}, expr: &actionExpr{ - pos: position{line: 558, col: 5, offset: 17682}, - run: (*parser).callonAttributeValue1, + pos: position{line: 408, col: 5, offset: 12598}, + run: (*parser).callonLegacyElementID1, expr: &seqExpr{ - pos: position{line: 558, col: 5, offset: 17682}, + pos: position{line: 408, col: 5, offset: 12598}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 408, col: 5, offset: 12598}, + val: "[[", + ignoreCase: false, + want: "\"[[\"", + }, &labeledExpr{ - pos: position{line: 558, col: 5, offset: 17682}, - label: "value", - expr: &choiceExpr{ - pos: position{line: 559, col: 9, offset: 17698}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 559, col: 9, offset: 17698}, - name: "SingleQuotedAttributeValue", - }, - &ruleRefExpr{ - pos: position{line: 560, col: 11, offset: 17736}, - name: "DoubleQuotedAttributeValue", - }, - &ruleRefExpr{ - pos: position{line: 561, col: 11, offset: 17774}, - name: "UnquotedAttributeValue", + pos: position{line: 409, col: 5, offset: 12608}, + label: "id", + expr: &actionExpr{ + pos: position{line: 410, col: 9, offset: 12621}, + run: (*parser).callonLegacyElementID5, + expr: &labeledExpr{ + pos: position{line: 410, col: 9, offset: 12621}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 410, col: 18, offset: 12630}, + expr: &choiceExpr{ + pos: position{line: 411, col: 13, offset: 12644}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 411, col: 14, offset: 12645}, + run: (*parser).callonLegacyElementID9, + expr: &oneOrMoreExpr{ + pos: position{line: 411, col: 14, offset: 12645}, + expr: &charClassMatcher{ + pos: position{line: 411, col: 14, offset: 12645}, + val: "[^=\\r\\n\\uFFFD{\\]]", + chars: []rune{'=', '\r', '\n', '�', '{', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 414, col: 15, offset: 12811}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 415, col: 15, offset: 12844}, + name: "AttributeReference", + }, + &actionExpr{ + pos: position{line: 416, col: 16, offset: 12878}, + run: (*parser).callonLegacyElementID14, + expr: &litMatcher{ + pos: position{line: 416, col: 16, offset: 12878}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, }, }, }, }, - &andExpr{ - pos: position{line: 563, col: 5, offset: 17808}, - expr: ¬Expr{ - pos: position{line: 563, col: 7, offset: 17810}, - expr: &seqExpr{ - pos: position{line: 563, col: 9, offset: 17812}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 563, col: 9, offset: 17812}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonAttributeValue12, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + &litMatcher{ + pos: position{line: 422, col: 5, offset: 13064}, + val: "]]", + ignoreCase: false, + want: "\"]]\"", + }, + }, + }, + }, + }, + { + name: "ShortHandTitle", + pos: position{line: 427, col: 1, offset: 13165}, + expr: &actionExpr{ + pos: position{line: 427, col: 19, offset: 13183}, + run: (*parser).callonShortHandTitle1, + expr: &seqExpr{ + pos: position{line: 427, col: 19, offset: 13183}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 427, col: 19, offset: 13183}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + ¬Expr{ + pos: position{line: 428, col: 5, offset: 13192}, + expr: &charClassMatcher{ + pos: position{line: 428, col: 6, offset: 13193}, + val: "[. ]", + chars: []rune{'.', ' '}, + ignoreCase: false, + inverted: false, + }, + }, + &labeledExpr{ + pos: position{line: 429, col: 5, offset: 13305}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 429, col: 14, offset: 13314}, + expr: &choiceExpr{ + pos: position{line: 430, col: 9, offset: 13324}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 430, col: 9, offset: 13324}, + name: "InlineWord", }, - &litMatcher{ - pos: position{line: 563, col: 16, offset: 17819}, - val: "=", - ignoreCase: false, - want: "\"=\"", + &ruleRefExpr{ + pos: position{line: 431, col: 11, offset: 13345}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 432, col: 11, offset: 13361}, + name: "AttributeReferenceValue", + }, + &actionExpr{ + pos: position{line: 433, col: 12, offset: 13396}, + run: (*parser).callonShortHandTitle12, + expr: &charClassMatcher{ + pos: position{line: 433, col: 12, offset: 13396}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, }, }, }, @@ -14427,478 +2200,145 @@ var g = &grammar{ }, }, { - name: "SingleQuotedAttributeValue", - pos: position{line: 567, col: 1, offset: 17860}, + name: "LongHandAttributes", + pos: position{line: 440, col: 1, offset: 13717}, expr: &actionExpr{ - pos: position{line: 568, col: 5, offset: 17895}, - run: (*parser).callonSingleQuotedAttributeValue1, + pos: position{line: 441, col: 5, offset: 13743}, + run: (*parser).callonLongHandAttributes1, expr: &seqExpr{ - pos: position{line: 568, col: 5, offset: 17895}, + pos: position{line: 441, col: 5, offset: 13743}, exprs: []interface{}{ + ¬Expr{ + pos: position{line: 441, col: 5, offset: 13743}, + expr: &litMatcher{ + pos: position{line: 441, col: 6, offset: 13744}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, &litMatcher{ - pos: position{line: 568, col: 5, offset: 17895}, - val: "'", + pos: position{line: 441, col: 10, offset: 13748}, + val: "[", ignoreCase: false, - want: "\"'\"", + want: "\"[\"", }, ¬Expr{ - pos: position{line: 568, col: 9, offset: 17899}, + pos: position{line: 441, col: 14, offset: 13752}, expr: &litMatcher{ - pos: position{line: 568, col: 10, offset: 17900}, - val: "`", + pos: position{line: 441, col: 15, offset: 13753}, + val: "[", ignoreCase: false, - want: "\"`\"", + want: "\"[\"", }, }, &labeledExpr{ - pos: position{line: 569, col: 5, offset: 17979}, - label: "content", - expr: &ruleRefExpr{ - pos: position{line: 569, col: 14, offset: 17988}, - name: "SingleQuotedAttributeValueContent", + pos: position{line: 442, col: 5, offset: 13866}, + label: "firstPositionalAttributes", + expr: &zeroOrOneExpr{ + pos: position{line: 442, col: 31, offset: 13892}, + expr: &ruleRefExpr{ + pos: position{line: 442, col: 32, offset: 13893}, + name: "FirstPositionalAttributes", + }, + }, + }, + &labeledExpr{ + pos: position{line: 443, col: 5, offset: 13925}, + label: "otherAttributes", + expr: &zeroOrMoreExpr{ + pos: position{line: 443, col: 21, offset: 13941}, + expr: &choiceExpr{ + pos: position{line: 443, col: 22, offset: 13942}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 443, col: 22, offset: 13942}, + name: "PositionalAttribute", + }, + &ruleRefExpr{ + pos: position{line: 443, col: 44, offset: 13964}, + name: "NamedAttribute", + }, + }, + }, }, }, &litMatcher{ - pos: position{line: 570, col: 5, offset: 18027}, - val: "'", + pos: position{line: 444, col: 5, offset: 13985}, + val: "]", ignoreCase: false, - want: "\"'\"", + want: "\"]\"", }, }, }, }, }, { - name: "SingleQuotedAttributeValueContent", - pos: position{line: 574, col: 1, offset: 18068}, + name: "FirstPositionalAttributes", + pos: position{line: 457, col: 1, offset: 14513}, expr: &actionExpr{ - pos: position{line: 575, col: 5, offset: 18110}, - run: (*parser).callonSingleQuotedAttributeValueContent1, - expr: &labeledExpr{ - pos: position{line: 575, col: 5, offset: 18110}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 575, col: 14, offset: 18119}, - expr: &choiceExpr{ - pos: position{line: 576, col: 9, offset: 18129}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonSingleQuotedAttributeValueContent5, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuotedAttributeValueContent8, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &ruleRefExpr{ - pos: position{line: 578, col: 11, offset: 18165}, - name: "Quote", - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuotedAttributeValueContent11, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuotedAttributeValueContent13, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuotedAttributeValueContent15, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuotedAttributeValueContent17, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, + pos: position{line: 458, col: 5, offset: 14547}, + run: (*parser).callonFirstPositionalAttributes1, + expr: &seqExpr{ + pos: position{line: 458, col: 5, offset: 14547}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 458, col: 5, offset: 14547}, + label: "main", + expr: &zeroOrOneExpr{ + pos: position{line: 458, col: 10, offset: 14552}, + expr: &ruleRefExpr{ + pos: position{line: 459, col: 9, offset: 14562}, + name: "ShortHandAttribute", }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuotedAttributeValueContent19, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuotedAttributeValueContent21, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", + }, + }, + &labeledExpr{ + pos: position{line: 461, col: 5, offset: 14592}, + label: "extras", + expr: &zeroOrMoreExpr{ + pos: position{line: 461, col: 12, offset: 14599}, + expr: &actionExpr{ + pos: position{line: 462, col: 9, offset: 14610}, + run: (*parser).callonFirstPositionalAttributes8, + expr: &seqExpr{ + pos: position{line: 462, col: 9, offset: 14610}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 462, col: 9, offset: 14610}, + expr: &litMatcher{ + pos: position{line: 462, col: 10, offset: 14611}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + }, + ¬Expr{ + pos: position{line: 462, col: 14, offset: 14615}, + expr: &litMatcher{ + pos: position{line: 462, col: 15, offset: 14616}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + }, + &labeledExpr{ + pos: position{line: 463, col: 9, offset: 14628}, + label: "extra", expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, + pos: position{line: 464, col: 13, offset: 14648}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonSingleQuotedAttributeValueContent24, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuotedAttributeValueContent28, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuotedAttributeValueContent35, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuotedAttributeValueContent40, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuotedAttributeValueContent42, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonSingleQuotedAttributeValueContent46, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuotedAttributeValueContent50, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuotedAttributeValueContent57, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuotedAttributeValueContent62, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuotedAttributeValueContent64, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 464, col: 13, offset: 14648}, + name: "ShortHandIDAttribute", }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuotedAttributeValueContent68, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuotedAttributeValueContent72, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 465, col: 15, offset: 14684}, + name: "ShortHandOptionAttribute", }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuotedAttributeValueContent78, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuotedAttributeValueContent82, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 466, col: 15, offset: 14723}, + name: "ShortHandDotRoleAttribute", }, }, }, @@ -14906,125 +2346,128 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 581, col: 12, offset: 18235}, - run: (*parser).callonSingleQuotedAttributeValueContent88, - expr: &litMatcher{ - pos: position{line: 581, col: 12, offset: 18235}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - }, - &litMatcher{ - pos: position{line: 584, col: 13, offset: 18337}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - &litMatcher{ - pos: position{line: 584, col: 20, offset: 18344}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - &actionExpr{ - pos: position{line: 584, col: 27, offset: 18351}, - run: (*parser).callonSingleQuotedAttributeValueContent92, - expr: &litMatcher{ - pos: position{line: 584, col: 27, offset: 18351}, - val: "\\", + }, + }, + &zeroOrOneExpr{ + pos: position{line: 469, col: 8, offset: 14799}, + expr: &seqExpr{ + pos: position{line: 469, col: 9, offset: 14800}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 469, col: 9, offset: 14800}, + val: ",", ignoreCase: false, - want: "\"\\\\\"", + want: "\",\"", }, - }, - &actionExpr{ - pos: position{line: 587, col: 12, offset: 18511}, - run: (*parser).callonSingleQuotedAttributeValueContent94, - expr: &oneOrMoreExpr{ - pos: position{line: 587, col: 12, offset: 18511}, - expr: &charClassMatcher{ - pos: position{line: 587, col: 12, offset: 18511}, - val: "[^\\r\\n\\\\\\ ]", - chars: []rune{'\r', '\n', '\\', '\'', ' '}, - ignoreCase: false, - inverted: true, + &zeroOrMoreExpr{ + pos: position{line: 469, col: 13, offset: 14804}, + expr: &ruleRefExpr{ + pos: position{line: 469, col: 13, offset: 14804}, + name: "Space", }, }, }, }, }, + &andCodeExpr{ + pos: position{line: 470, col: 5, offset: 14818}, + run: (*parser).callonFirstPositionalAttributes24, + }, }, }, }, }, { - name: "DoubleQuotedAttributeValue", - pos: position{line: 594, col: 1, offset: 18708}, + name: "ShortHandIDAttribute", + pos: position{line: 486, col: 1, offset: 15234}, expr: &actionExpr{ - pos: position{line: 595, col: 5, offset: 18743}, - run: (*parser).callonDoubleQuotedAttributeValue1, + pos: position{line: 486, col: 25, offset: 15258}, + run: (*parser).callonShortHandIDAttribute1, expr: &seqExpr{ - pos: position{line: 595, col: 5, offset: 18743}, + pos: position{line: 486, col: 25, offset: 15258}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 595, col: 5, offset: 18743}, - val: "\"", + pos: position{line: 486, col: 25, offset: 15258}, + val: "#", ignoreCase: false, - want: "\"\\\"\"", + want: "\"#\"", }, - ¬Expr{ - pos: position{line: 595, col: 10, offset: 18748}, - expr: &litMatcher{ - pos: position{line: 595, col: 11, offset: 18749}, - val: "`", - ignoreCase: false, - want: "\"`\"", + &labeledExpr{ + pos: position{line: 486, col: 29, offset: 15262}, + label: "id", + expr: &ruleRefExpr{ + pos: position{line: 486, col: 33, offset: 15266}, + name: "ShortHandAttributeValue", }, }, + }, + }, + }, + }, + { + name: "ShortHandAttribute", + pos: position{line: 490, col: 1, offset: 15340}, + expr: &actionExpr{ + pos: position{line: 490, col: 23, offset: 15362}, + run: (*parser).callonShortHandAttribute1, + expr: &labeledExpr{ + pos: position{line: 490, col: 23, offset: 15362}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 490, col: 30, offset: 15369}, + name: "ShortHandAttributeValue", + }, + }, + }, + }, + { + name: "ShortHandDotRoleAttribute", + pos: position{line: 495, col: 1, offset: 15495}, + expr: &actionExpr{ + pos: position{line: 495, col: 30, offset: 15524}, + run: (*parser).callonShortHandDotRoleAttribute1, + expr: &seqExpr{ + pos: position{line: 495, col: 30, offset: 15524}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 495, col: 30, offset: 15524}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, &labeledExpr{ - pos: position{line: 596, col: 5, offset: 18828}, - label: "content", + pos: position{line: 495, col: 34, offset: 15528}, + label: "role", expr: &ruleRefExpr{ - pos: position{line: 596, col: 14, offset: 18837}, - name: "DoubleQuotedAttributeValueContent", + pos: position{line: 495, col: 40, offset: 15534}, + name: "ShortHandAttributeValue", }, }, + }, + }, + }, + }, + { + name: "ShortHandOptionAttribute", + pos: position{line: 500, col: 1, offset: 15656}, + expr: &actionExpr{ + pos: position{line: 500, col: 29, offset: 15684}, + run: (*parser).callonShortHandOptionAttribute1, + expr: &seqExpr{ + pos: position{line: 500, col: 29, offset: 15684}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 597, col: 5, offset: 18876}, - val: "\"", + pos: position{line: 500, col: 29, offset: 15684}, + val: "%", ignoreCase: false, - want: "\"\\\"\"", + want: "\"%\"", }, - &andExpr{ - pos: position{line: 597, col: 10, offset: 18881}, - expr: ¬Expr{ - pos: position{line: 597, col: 12, offset: 18883}, - expr: &seqExpr{ - pos: position{line: 597, col: 14, offset: 18885}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 597, col: 14, offset: 18885}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuotedAttributeValue13, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 597, col: 21, offset: 18892}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, + &labeledExpr{ + pos: position{line: 500, col: 33, offset: 15688}, + label: "option", + expr: &ruleRefExpr{ + pos: position{line: 500, col: 41, offset: 15696}, + name: "ShortHandAttributeValue", }, }, }, @@ -15032,436 +2475,204 @@ var g = &grammar{ }, }, { - name: "DoubleQuotedAttributeValueContent", - pos: position{line: 600, col: 1, offset: 18934}, - expr: &actionExpr{ - pos: position{line: 601, col: 5, offset: 18976}, - run: (*parser).callonDoubleQuotedAttributeValueContent1, - expr: &labeledExpr{ - pos: position{line: 601, col: 5, offset: 18976}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 601, col: 14, offset: 18985}, - expr: &choiceExpr{ - pos: position{line: 602, col: 9, offset: 18995}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonDoubleQuotedAttributeValueContent5, + name: "ShortHandAttributeValue", + pos: position{line: 505, col: 1, offset: 15809}, + expr: &choiceExpr{ + pos: position{line: 506, col: 5, offset: 15841}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 506, col: 5, offset: 15841}, + name: "SingleQuotedAttributeValue", + }, + &ruleRefExpr{ + pos: position{line: 507, col: 7, offset: 15875}, + name: "DoubleQuotedAttributeValue", + }, + &actionExpr{ + pos: position{line: 508, col: 7, offset: 15909}, + run: (*parser).callonShortHandAttributeValue4, + expr: &seqExpr{ + pos: position{line: 508, col: 7, offset: 15909}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 508, col: 7, offset: 15909}, + label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + pos: position{line: 508, col: 16, offset: 15918}, + expr: &choiceExpr{ + pos: position{line: 511, col: 9, offset: 16100}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 511, col: 9, offset: 16100}, + name: "QuotationMark", + }, + &actionExpr{ + pos: position{line: 512, col: 12, offset: 16126}, + run: (*parser).callonShortHandAttributeValue10, + expr: &oneOrMoreExpr{ + pos: position{line: 512, col: 12, offset: 16126}, + expr: &charClassMatcher{ + pos: position{line: 512, col: 12, offset: 16126}, + val: "[^,=.%# \\r\\n\\uFFFD{\\]]", + chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 516, col: 11, offset: 16264}, + name: "AttributeReference", + }, + &actionExpr{ + pos: position{line: 517, col: 12, offset: 16294}, + run: (*parser).callonShortHandAttributeValue14, + expr: &litMatcher{ + pos: position{line: 517, col: 12, offset: 16294}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, }, }, }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuotedAttributeValueContent8, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &andExpr{ + pos: position{line: 521, col: 5, offset: 16382}, + expr: ¬Expr{ + pos: position{line: 521, col: 7, offset: 16384}, + expr: &seqExpr{ + pos: position{line: 521, col: 9, offset: 16386}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 521, col: 9, offset: 16386}, + expr: &ruleRefExpr{ + pos: position{line: 521, col: 9, offset: 16386}, + name: "Space", + }, + }, + &litMatcher{ + pos: position{line: 521, col: 16, offset: 16393}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, }, }, - &ruleRefExpr{ - pos: position{line: 604, col: 11, offset: 19031}, - name: "Quote", - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuotedAttributeValueContent11, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", + }, + }, + }, + }, + }, + }, + { + name: "PositionalAttribute", + pos: position{line: 526, col: 1, offset: 16471}, + expr: &choiceExpr{ + pos: position{line: 526, col: 24, offset: 16494}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 527, col: 5, offset: 16500}, + run: (*parser).callonPositionalAttribute2, + expr: &seqExpr{ + pos: position{line: 527, col: 5, offset: 16500}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 527, col: 5, offset: 16500}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 527, col: 12, offset: 16507}, + name: "AttributeValue", }, }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuotedAttributeValueContent13, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuotedAttributeValueContent15, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuotedAttributeValueContent17, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", + &choiceExpr{ + pos: position{line: 527, col: 29, offset: 16524}, + alternatives: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 527, col: 29, offset: 16524}, + expr: &seqExpr{ + pos: position{line: 527, col: 30, offset: 16525}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 527, col: 30, offset: 16525}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 527, col: 34, offset: 16529}, + expr: &ruleRefExpr{ + pos: position{line: 527, col: 34, offset: 16529}, + name: "Space", + }, + }, + }, + }, + }, + &andExpr{ + pos: position{line: 527, col: 45, offset: 16540}, + expr: &litMatcher{ + pos: position{line: 527, col: 46, offset: 16541}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + }, }, }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuotedAttributeValueContent19, + }, + }, + }, + &actionExpr{ + pos: position{line: 532, col: 6, offset: 16778}, + run: (*parser).callonPositionalAttribute14, + expr: &seqExpr{ + pos: position{line: 532, col: 6, offset: 16778}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 532, col: 6, offset: 16778}, + label: "value", expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, + pos: position{line: 532, col: 13, offset: 16785}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuotedAttributeValueContent21, + &zeroOrMoreExpr{ + pos: position{line: 532, col: 13, offset: 16785}, + expr: &ruleRefExpr{ + pos: position{line: 532, col: 13, offset: 16785}, + name: "Space", + }, }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonDoubleQuotedAttributeValueContent24, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuotedAttributeValueContent28, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuotedAttributeValueContent35, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuotedAttributeValueContent40, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuotedAttributeValueContent42, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonDoubleQuotedAttributeValueContent46, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuotedAttributeValueContent50, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuotedAttributeValueContent57, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuotedAttributeValueContent62, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuotedAttributeValueContent64, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, + &choiceExpr{ + pos: position{line: 532, col: 21, offset: 16793}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 532, col: 22, offset: 16794}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 532, col: 22, offset: 16794}, + val: ",", + ignoreCase: false, + want: "\",\"", }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuotedAttributeValueContent68, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuotedAttributeValueContent72, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, + &zeroOrMoreExpr{ + pos: position{line: 532, col: 26, offset: 16798}, + expr: &ruleRefExpr{ + pos: position{line: 532, col: 26, offset: 16798}, + name: "Space", }, }, }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuotedAttributeValueContent78, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuotedAttributeValueContent82, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + }, + &andExpr{ + pos: position{line: 532, col: 36, offset: 16808}, + expr: &litMatcher{ + pos: position{line: 532, col: 37, offset: 16809}, + val: "]", + ignoreCase: false, + want: "\"]\"", }, }, }, @@ -15469,55 +2680,70 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 607, col: 12, offset: 19102}, - run: (*parser).callonDoubleQuotedAttributeValueContent88, - expr: &litMatcher{ - pos: position{line: 607, col: 12, offset: 19102}, - val: "\\\"", - ignoreCase: false, - want: "\"\\\\\\\"\"", - }, - }, - &litMatcher{ - pos: position{line: 610, col: 13, offset: 19204}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - &litMatcher{ - pos: position{line: 610, col: 21, offset: 19212}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - &litMatcher{ - pos: position{line: 610, col: 29, offset: 19220}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", + &andCodeExpr{ + pos: position{line: 533, col: 5, offset: 16819}, + run: (*parser).callonPositionalAttribute27, }, - &actionExpr{ - pos: position{line: 610, col: 35, offset: 19226}, - run: (*parser).callonDoubleQuotedAttributeValueContent93, - expr: &litMatcher{ - pos: position{line: 610, col: 35, offset: 19226}, - val: "`", + }, + }, + }, + }, + }, + }, + { + name: "NamedAttribute", + pos: position{line: 543, col: 1, offset: 17134}, + expr: &actionExpr{ + pos: position{line: 544, col: 5, offset: 17157}, + run: (*parser).callonNamedAttribute1, + expr: &seqExpr{ + pos: position{line: 544, col: 5, offset: 17157}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 544, col: 5, offset: 17157}, + label: "key", + expr: &ruleRefExpr{ + pos: position{line: 544, col: 10, offset: 17162}, + name: "NamedAttributeKey", + }, + }, + &litMatcher{ + pos: position{line: 545, col: 5, offset: 17186}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 545, col: 9, offset: 17190}, + expr: &ruleRefExpr{ + pos: position{line: 545, col: 9, offset: 17190}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 546, col: 5, offset: 17202}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 546, col: 12, offset: 17209}, + name: "AttributeValue", + }, + }, + &zeroOrOneExpr{ + pos: position{line: 546, col: 28, offset: 17225}, + expr: &seqExpr{ + pos: position{line: 546, col: 29, offset: 17226}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 546, col: 29, offset: 17226}, + val: ",", ignoreCase: false, - want: "\"`\"", + want: "\",\"", }, - }, - &actionExpr{ - pos: position{line: 613, col: 12, offset: 19409}, - run: (*parser).callonDoubleQuotedAttributeValueContent95, - expr: &oneOrMoreExpr{ - pos: position{line: 613, col: 12, offset: 19409}, - expr: &charClassMatcher{ - pos: position{line: 613, col: 12, offset: 19409}, - val: "[^\\r\\n\\\\\"` ]", - chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, - ignoreCase: false, - inverted: true, + &zeroOrMoreExpr{ + pos: position{line: 546, col: 33, offset: 17230}, + expr: &ruleRefExpr{ + pos: position{line: 546, col: 33, offset: 17230}, + name: "Space", }, }, }, @@ -15528,499 +2754,36 @@ var g = &grammar{ }, }, { - name: "UnquotedAttributeValue", - pos: position{line: 621, col: 1, offset: 19683}, + name: "NamedAttributeKey", + pos: position{line: 552, col: 1, offset: 17424}, expr: &actionExpr{ - pos: position{line: 624, col: 5, offset: 19867}, - run: (*parser).callonUnquotedAttributeValue1, + pos: position{line: 552, col: 22, offset: 17445}, + run: (*parser).callonNamedAttributeKey1, expr: &seqExpr{ - pos: position{line: 624, col: 5, offset: 19867}, + pos: position{line: 552, col: 22, offset: 17445}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 624, col: 5, offset: 19867}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonUnquotedAttributeValue4, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 552, col: 22, offset: 17445}, + expr: &ruleRefExpr{ + pos: position{line: 552, col: 23, offset: 17446}, + name: "Space", }, }, - &labeledExpr{ - pos: position{line: 625, col: 5, offset: 19936}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 625, col: 14, offset: 19945}, - expr: &choiceExpr{ - pos: position{line: 626, col: 9, offset: 19955}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 626, col: 9, offset: 19955}, - name: "Quote", - }, - &seqExpr{ - pos: position{line: 627, col: 12, offset: 20031}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 627, col: 12, offset: 20031}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - &ruleRefExpr{ - pos: position{line: 627, col: 16, offset: 20035}, - name: "UnquotedAttributeValue", - }, - &litMatcher{ - pos: position{line: 627, col: 39, offset: 20058}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - }, - &actionExpr{ - pos: position{line: 629, col: 12, offset: 20157}, - run: (*parser).callonUnquotedAttributeValue14, - expr: &oneOrMoreExpr{ - pos: position{line: 629, col: 12, offset: 20157}, - expr: &charClassMatcher{ - pos: position{line: 629, col: 12, offset: 20157}, - val: "[^=,�]{\\\"` ]", - chars: []rune{'=', ',', '�', ']', '{', '\'', '"', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonUnquotedAttributeValue17, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonUnquotedAttributeValue19, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonUnquotedAttributeValue21, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonUnquotedAttributeValue24, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonUnquotedAttributeValue28, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonUnquotedAttributeValue35, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonUnquotedAttributeValue40, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonUnquotedAttributeValue42, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonUnquotedAttributeValue46, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonUnquotedAttributeValue50, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonUnquotedAttributeValue57, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonUnquotedAttributeValue62, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonUnquotedAttributeValue64, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonUnquotedAttributeValue68, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonUnquotedAttributeValue72, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonUnquotedAttributeValue78, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonUnquotedAttributeValue82, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonUnquotedAttributeValue88, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonUnquotedAttributeValue90, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonUnquotedAttributeValue92, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonUnquotedAttributeValue94, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 635, col: 11, offset: 20376}, - run: (*parser).callonUnquotedAttributeValue96, - expr: &charClassMatcher{ - pos: position{line: 635, col: 12, offset: 20377}, - val: "[\\`\"]", - chars: []rune{'\'', '`', '"'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 638, col: 11, offset: 20509}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, + &oneOrMoreExpr{ + pos: position{line: 552, col: 29, offset: 17452}, + expr: &charClassMatcher{ + pos: position{line: 552, col: 29, offset: 17452}, + val: "[^\\r\\n=,\\]]", + chars: []rune{'\r', '\n', '=', ',', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 552, col: 42, offset: 17465}, + expr: &ruleRefExpr{ + pos: position{line: 552, col: 42, offset: 17465}, + name: "Space", }, }, }, @@ -16028,1179 +2791,188 @@ var g = &grammar{ }, }, { - name: "CrossReference", - pos: position{line: 697, col: 1, offset: 22571}, - expr: &choiceExpr{ - pos: position{line: 697, col: 19, offset: 22589}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonCrossReference2, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonCrossReference6, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, + name: "AttributeValue", + pos: position{line: 556, col: 1, offset: 17535}, + expr: &actionExpr{ + pos: position{line: 557, col: 5, offset: 17558}, + run: (*parser).callonAttributeValue1, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 17558}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 557, col: 5, offset: 17558}, + label: "value", + expr: &choiceExpr{ + pos: position{line: 558, col: 9, offset: 17574}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 558, col: 9, offset: 17574}, + name: "SingleQuotedAttributeValue", }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonCrossReference10, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &ruleRefExpr{ + pos: position{line: 559, col: 11, offset: 17612}, + name: "DoubleQuotedAttributeValue", }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonCrossReference16, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonCrossReference21, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonCrossReference25, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonCrossReference31, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonCrossReference35, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonCrossReference41, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 560, col: 11, offset: 17650}, + name: "UnquotedAttributeValue", }, }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, }, }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonCrossReference44, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonCrossReference48, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, + &andExpr{ + pos: position{line: 562, col: 5, offset: 17684}, + expr: ¬Expr{ + pos: position{line: 562, col: 7, offset: 17686}, + expr: &seqExpr{ + pos: position{line: 562, col: 9, offset: 17688}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 562, col: 9, offset: 17688}, + expr: &ruleRefExpr{ + pos: position{line: 562, col: 9, offset: 17688}, + name: "Space", }, }, + &litMatcher{ + pos: position{line: 562, col: 16, offset: 17695}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, }, }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, }, }, }, - &ruleRefExpr{ - pos: position{line: 697, col: 44, offset: 22614}, - name: "ExternalCrossReference", - }, }, }, }, { - name: "ExternalCrossReference", - pos: position{line: 705, col: 1, offset: 22874}, + name: "SingleQuotedAttributeValue", + pos: position{line: 566, col: 1, offset: 17736}, expr: &actionExpr{ - pos: position{line: 705, col: 27, offset: 22900}, - run: (*parser).callonExternalCrossReference1, + pos: position{line: 567, col: 5, offset: 17771}, + run: (*parser).callonSingleQuotedAttributeValue1, expr: &seqExpr{ - pos: position{line: 705, col: 27, offset: 22900}, + pos: position{line: 567, col: 5, offset: 17771}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 705, col: 27, offset: 22900}, - val: "xref:", + pos: position{line: 567, col: 5, offset: 17771}, + val: "'", ignoreCase: false, - want: "\"xref:\"", + want: "\"'\"", }, - &labeledExpr{ - pos: position{line: 705, col: 35, offset: 22908}, - label: "url", - expr: &actionExpr{ - pos: position{line: 3071, col: 17, offset: 99682}, - run: (*parser).callonExternalCrossReference5, - expr: &labeledExpr{ - pos: position{line: 3071, col: 17, offset: 99682}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3071, col: 22, offset: 99687}, - expr: &choiceExpr{ - pos: position{line: 3071, col: 23, offset: 99688}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonExternalCrossReference9, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonExternalCrossReference16, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonExternalCrossReference20, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExternalCrossReference27, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonExternalCrossReference29, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonExternalCrossReference31, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonExternalCrossReference34, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalCrossReference38, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonExternalCrossReference45, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonExternalCrossReference50, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonExternalCrossReference52, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonExternalCrossReference56, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalCrossReference60, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonExternalCrossReference67, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonExternalCrossReference72, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonExternalCrossReference74, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonExternalCrossReference78, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalCrossReference82, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonExternalCrossReference88, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalCrossReference92, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonExternalCrossReference98, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonExternalCrossReference100, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonExternalCrossReference103, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonExternalCrossReference105, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonExternalCrossReference109, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExternalCrossReference113, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonExternalCrossReference119, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonExternalCrossReference124, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalCrossReference128, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonExternalCrossReference134, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalCrossReference138, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonExternalCrossReference144, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonExternalCrossReference147, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonExternalCrossReference151, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonExternalCrossReference155, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonExternalCrossReference157, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonExternalCrossReference159, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonExternalCrossReference163, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, - }, - }, + ¬Expr{ + pos: position{line: 567, col: 9, offset: 17775}, + expr: &litMatcher{ + pos: position{line: 567, col: 10, offset: 17776}, + val: "`", + ignoreCase: false, + want: "\"`\"", }, }, &labeledExpr{ - pos: position{line: 705, col: 54, offset: 22927}, - label: "attributes", + pos: position{line: 568, col: 5, offset: 17855}, + label: "content", expr: &ruleRefExpr{ - pos: position{line: 705, col: 66, offset: 22939}, - name: "InlineAttributes", + pos: position{line: 568, col: 14, offset: 17864}, + name: "SingleQuotedAttributeValueContent", }, }, + &litMatcher{ + pos: position{line: 569, col: 5, offset: 17903}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, }, }, }, }, { - name: "MarkdownQuoteAttribution", - pos: position{line: 997, col: 1, offset: 31458}, + name: "SingleQuotedAttributeValueContent", + pos: position{line: 573, col: 1, offset: 17944}, expr: &actionExpr{ - pos: position{line: 998, col: 5, offset: 31491}, - run: (*parser).callonMarkdownQuoteAttribution1, - expr: &seqExpr{ - pos: position{line: 998, col: 5, offset: 31491}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 998, col: 5, offset: 31491}, - val: "-- ", - ignoreCase: false, - want: "\"-- \"", - }, - &labeledExpr{ - pos: position{line: 998, col: 11, offset: 31497}, - label: "author", - expr: &actionExpr{ - pos: position{line: 998, col: 19, offset: 31505}, - run: (*parser).callonMarkdownQuoteAttribution5, - expr: &oneOrMoreExpr{ - pos: position{line: 998, col: 20, offset: 31506}, - expr: &charClassMatcher{ - pos: position{line: 998, col: 20, offset: 31506}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, + pos: position{line: 574, col: 5, offset: 17986}, + run: (*parser).callonSingleQuotedAttributeValueContent1, + expr: &labeledExpr{ + pos: position{line: 574, col: 5, offset: 17986}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 574, col: 14, offset: 17995}, + expr: &choiceExpr{ + pos: position{line: 575, col: 9, offset: 18005}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 575, col: 9, offset: 18005}, + name: "Alphanums", + }, + &ruleRefExpr{ + pos: position{line: 576, col: 11, offset: 18025}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 577, col: 11, offset: 18041}, + name: "Quote", + }, + &ruleRefExpr{ + pos: position{line: 578, col: 11, offset: 18057}, + name: "QuotationMark", + }, + &ruleRefExpr{ + pos: position{line: 579, col: 11, offset: 18081}, + name: "AttributeReference", + }, + &actionExpr{ + pos: position{line: 580, col: 12, offset: 18111}, + run: (*parser).callonSingleQuotedAttributeValueContent10, + expr: &litMatcher{ + pos: position{line: 580, col: 12, offset: 18111}, + val: "\\'", ignoreCase: false, - inverted: true, + want: "\"\\\\'\"", }, }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonMarkdownQuoteAttribution9, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", + &choiceExpr{ + pos: position{line: 583, col: 13, offset: 18213}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 583, col: 13, offset: 18213}, + val: "'`", + ignoreCase: false, + want: "\"'`\"", + }, + &litMatcher{ + pos: position{line: 583, col: 20, offset: 18220}, + val: "`'", + ignoreCase: false, + want: "\"`'\"", + }, + &actionExpr{ + pos: position{line: 583, col: 27, offset: 18227}, + run: (*parser).callonSingleQuotedAttributeValueContent15, + expr: &litMatcher{ + pos: position{line: 583, col: 27, offset: 18227}, + val: "\\", ignoreCase: false, - want: "\"\\r\"", + want: "\"\\\\\"", }, }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &actionExpr{ + pos: position{line: 586, col: 12, offset: 18387}, + run: (*parser).callonSingleQuotedAttributeValueContent17, + expr: &oneOrMoreExpr{ + pos: position{line: 586, col: 12, offset: 18387}, + expr: &charClassMatcher{ + pos: position{line: 586, col: 12, offset: 18387}, + val: "[^\\r\\n\\\\'' ]", + chars: []rune{'\r', '\n', '\\', '\'', '\'', ' '}, + ignoreCase: false, + inverted: true, + }, }, }, }, @@ -17210,2796 +2982,381 @@ var g = &grammar{ }, }, { - name: "DocumentHeader", - pos: position{line: 1091, col: 1, offset: 33977}, + name: "DoubleQuotedAttributeValue", + pos: position{line: 593, col: 1, offset: 18584}, expr: &actionExpr{ - pos: position{line: 1092, col: 5, offset: 34000}, - run: (*parser).callonDocumentHeader1, + pos: position{line: 594, col: 5, offset: 18619}, + run: (*parser).callonDoubleQuotedAttributeValue1, expr: &seqExpr{ - pos: position{line: 1092, col: 5, offset: 34000}, + pos: position{line: 594, col: 5, offset: 18619}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1092, col: 5, offset: 34000}, - run: (*parser).callonDocumentHeader3, + &litMatcher{ + pos: position{line: 594, col: 5, offset: 18619}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + ¬Expr{ + pos: position{line: 594, col: 10, offset: 18624}, + expr: &litMatcher{ + pos: position{line: 594, col: 11, offset: 18625}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, }, &labeledExpr{ - pos: position{line: 1095, col: 5, offset: 34061}, - label: "extraAttrs", + pos: position{line: 595, col: 5, offset: 18704}, + label: "content", expr: &ruleRefExpr{ - pos: position{line: 1095, col: 17, offset: 34073}, - name: "DocumentHeaderAttributes", + pos: position{line: 595, col: 14, offset: 18713}, + name: "DoubleQuotedAttributeValueContent", }, }, - &labeledExpr{ - pos: position{line: 1096, col: 5, offset: 34103}, - label: "info", - expr: &zeroOrOneExpr{ - pos: position{line: 1096, col: 10, offset: 34108}, - expr: &actionExpr{ - pos: position{line: 1119, col: 5, offset: 34961}, - run: (*parser).callonDocumentHeader8, - expr: &seqExpr{ - pos: position{line: 1119, col: 5, offset: 34961}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1119, col: 5, offset: 34961}, - label: "title", - expr: &actionExpr{ - pos: position{line: 1127, col: 5, offset: 35242}, - run: (*parser).callonDocumentHeader11, - expr: &seqExpr{ - pos: position{line: 1127, col: 5, offset: 35242}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1127, col: 5, offset: 35242}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDocumentHeader14, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1127, col: 16, offset: 35253}, - label: "title", - expr: &actionExpr{ - pos: position{line: 2639, col: 17, offset: 86914}, - run: (*parser).callonDocumentHeader18, - expr: &oneOrMoreExpr{ - pos: position{line: 2639, col: 17, offset: 86914}, - expr: &charClassMatcher{ - pos: position{line: 2639, col: 17, offset: 86914}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader22, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1120, col: 5, offset: 34987}, - expr: &choiceExpr{ - pos: position{line: 1120, col: 6, offset: 34988}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonDocumentHeader31, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonDocumentHeader37, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader41, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - run: (*parser).callonDocumentHeader48, - expr: &seqExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeader50, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeader53, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader59, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader62, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 828, col: 5, offset: 27001}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 838, col: 5, offset: 27287}, - expr: &actionExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - run: (*parser).callonDocumentHeader71, - expr: &seqExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 838, col: 6, offset: 27288}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeader75, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeader78, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader84, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader87, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 839, col: 5, offset: 27318}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentHeader97, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentHeader103, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader107, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 829, col: 5, offset: 27035}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeader116, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeader119, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader125, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader128, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1121, col: 5, offset: 35062}, - label: "authorsAndRevision", - expr: &zeroOrOneExpr{ - pos: position{line: 1121, col: 24, offset: 35081}, - expr: &actionExpr{ - pos: position{line: 1132, col: 5, offset: 35348}, - run: (*parser).callonDocumentHeader139, - expr: &seqExpr{ - pos: position{line: 1132, col: 5, offset: 35348}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1132, col: 5, offset: 35348}, - label: "authors", - expr: &actionExpr{ - pos: position{line: 1138, col: 20, offset: 35604}, - run: (*parser).callonDocumentHeader142, - expr: &seqExpr{ - pos: position{line: 1138, col: 20, offset: 35604}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1138, col: 20, offset: 35604}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader145, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1138, col: 27, offset: 35611}, - label: "authors", - expr: &choiceExpr{ - pos: position{line: 1138, col: 36, offset: 35620}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1142, col: 30, offset: 35740}, - run: (*parser).callonDocumentHeader149, - expr: &seqExpr{ - pos: position{line: 1142, col: 30, offset: 35740}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1142, col: 30, offset: 35740}, - expr: &litMatcher{ - pos: position{line: 1142, col: 31, offset: 35741}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - &labeledExpr{ - pos: position{line: 1142, col: 35, offset: 35745}, - label: "authors", - expr: &oneOrMoreExpr{ - pos: position{line: 1142, col: 44, offset: 35754}, - expr: &actionExpr{ - pos: position{line: 1151, col: 5, offset: 35986}, - run: (*parser).callonDocumentHeader155, - expr: &seqExpr{ - pos: position{line: 1151, col: 5, offset: 35986}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1151, col: 5, offset: 35986}, - label: "fullName", - expr: &zeroOrOneExpr{ - pos: position{line: 1151, col: 14, offset: 35995}, - expr: &actionExpr{ - pos: position{line: 1162, col: 5, offset: 36375}, - run: (*parser).callonDocumentHeader159, - expr: &seqExpr{ - pos: position{line: 1162, col: 5, offset: 36375}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1162, col: 5, offset: 36375}, - label: "part1", - expr: &actionExpr{ - pos: position{line: 1162, col: 12, offset: 36382}, - run: (*parser).callonDocumentHeader162, - expr: &oneOrMoreExpr{ - pos: position{line: 1162, col: 12, offset: 36382}, - expr: &charClassMatcher{ - pos: position{line: 1162, col: 12, offset: 36382}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1165, col: 5, offset: 36462}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader166, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1166, col: 5, offset: 36473}, - label: "part2", - expr: &zeroOrOneExpr{ - pos: position{line: 1166, col: 11, offset: 36479}, - expr: &actionExpr{ - pos: position{line: 1166, col: 12, offset: 36480}, - run: (*parser).callonDocumentHeader170, - expr: &oneOrMoreExpr{ - pos: position{line: 1166, col: 12, offset: 36480}, - expr: &charClassMatcher{ - pos: position{line: 1166, col: 12, offset: 36480}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1169, col: 5, offset: 36561}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader174, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1170, col: 5, offset: 36572}, - label: "part3", - expr: &zeroOrOneExpr{ - pos: position{line: 1170, col: 11, offset: 36578}, - expr: &actionExpr{ - pos: position{line: 1170, col: 12, offset: 36579}, - run: (*parser).callonDocumentHeader178, - expr: &oneOrMoreExpr{ - pos: position{line: 1170, col: 12, offset: 36579}, - expr: &charClassMatcher{ - pos: position{line: 1170, col: 12, offset: 36579}, - val: "[^<;\\r\\n]", - chars: []rune{'<', ';', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1173, col: 5, offset: 36658}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader182, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1151, col: 40, offset: 36021}, - label: "email", - expr: &zeroOrOneExpr{ - pos: position{line: 1151, col: 46, offset: 36027}, - expr: &actionExpr{ - pos: position{line: 1179, col: 5, offset: 36780}, - run: (*parser).callonDocumentHeader186, - expr: &seqExpr{ - pos: position{line: 1179, col: 5, offset: 36780}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1179, col: 5, offset: 36780}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &litMatcher{ - pos: position{line: 1180, col: 5, offset: 36790}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1181, col: 5, offset: 36799}, - label: "email", - expr: &actionExpr{ - pos: position{line: 1181, col: 12, offset: 36806}, - run: (*parser).callonDocumentHeader193, - expr: &oneOrMoreExpr{ - pos: position{line: 1181, col: 13, offset: 36807}, - expr: &charClassMatcher{ - pos: position{line: 1181, col: 13, offset: 36807}, - val: "[^>\\r\\n]", - chars: []rune{'>', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1184, col: 5, offset: 36867}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1151, col: 69, offset: 36050}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader198, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 1151, col: 76, offset: 36057}, - expr: &litMatcher{ - pos: position{line: 1151, col: 76, offset: 36057}, - val: ";", - ignoreCase: false, - want: "\";\"", - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1151, col: 81, offset: 36062}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader203, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1152, col: 5, offset: 36074}, - run: (*parser).callonDocumentHeader205, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1146, col: 33, offset: 35872}, - run: (*parser).callonDocumentHeader206, - expr: &seqExpr{ - pos: position{line: 1146, col: 33, offset: 35872}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1146, col: 33, offset: 35872}, - val: ":author:", - ignoreCase: false, - want: "\":author:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1146, col: 44, offset: 35883}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader210, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1146, col: 51, offset: 35890}, - label: "author", - expr: &actionExpr{ - pos: position{line: 1151, col: 5, offset: 35986}, - run: (*parser).callonDocumentHeader213, - expr: &seqExpr{ - pos: position{line: 1151, col: 5, offset: 35986}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1151, col: 5, offset: 35986}, - label: "fullName", - expr: &zeroOrOneExpr{ - pos: position{line: 1151, col: 14, offset: 35995}, - expr: &actionExpr{ - pos: position{line: 1162, col: 5, offset: 36375}, - run: (*parser).callonDocumentHeader217, - expr: &seqExpr{ - pos: position{line: 1162, col: 5, offset: 36375}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1162, col: 5, offset: 36375}, - label: "part1", - expr: &actionExpr{ - pos: position{line: 1162, col: 12, offset: 36382}, - run: (*parser).callonDocumentHeader220, - expr: &oneOrMoreExpr{ - pos: position{line: 1162, col: 12, offset: 36382}, - expr: &charClassMatcher{ - pos: position{line: 1162, col: 12, offset: 36382}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1165, col: 5, offset: 36462}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader224, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1166, col: 5, offset: 36473}, - label: "part2", - expr: &zeroOrOneExpr{ - pos: position{line: 1166, col: 11, offset: 36479}, - expr: &actionExpr{ - pos: position{line: 1166, col: 12, offset: 36480}, - run: (*parser).callonDocumentHeader228, - expr: &oneOrMoreExpr{ - pos: position{line: 1166, col: 12, offset: 36480}, - expr: &charClassMatcher{ - pos: position{line: 1166, col: 12, offset: 36480}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1169, col: 5, offset: 36561}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader232, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1170, col: 5, offset: 36572}, - label: "part3", - expr: &zeroOrOneExpr{ - pos: position{line: 1170, col: 11, offset: 36578}, - expr: &actionExpr{ - pos: position{line: 1170, col: 12, offset: 36579}, - run: (*parser).callonDocumentHeader236, - expr: &oneOrMoreExpr{ - pos: position{line: 1170, col: 12, offset: 36579}, - expr: &charClassMatcher{ - pos: position{line: 1170, col: 12, offset: 36579}, - val: "[^<;\\r\\n]", - chars: []rune{'<', ';', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1173, col: 5, offset: 36658}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader240, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1151, col: 40, offset: 36021}, - label: "email", - expr: &zeroOrOneExpr{ - pos: position{line: 1151, col: 46, offset: 36027}, - expr: &actionExpr{ - pos: position{line: 1179, col: 5, offset: 36780}, - run: (*parser).callonDocumentHeader244, - expr: &seqExpr{ - pos: position{line: 1179, col: 5, offset: 36780}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1179, col: 5, offset: 36780}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &litMatcher{ - pos: position{line: 1180, col: 5, offset: 36790}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1181, col: 5, offset: 36799}, - label: "email", - expr: &actionExpr{ - pos: position{line: 1181, col: 12, offset: 36806}, - run: (*parser).callonDocumentHeader251, - expr: &oneOrMoreExpr{ - pos: position{line: 1181, col: 13, offset: 36807}, - expr: &charClassMatcher{ - pos: position{line: 1181, col: 13, offset: 36807}, - val: "[^>\\r\\n]", - chars: []rune{'>', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1184, col: 5, offset: 36867}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1151, col: 69, offset: 36050}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader256, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 1151, col: 76, offset: 36057}, - expr: &litMatcher{ - pos: position{line: 1151, col: 76, offset: 36057}, - val: ";", - ignoreCase: false, - want: "\";\"", - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1151, col: 81, offset: 36062}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader261, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1152, col: 5, offset: 36074}, - run: (*parser).callonDocumentHeader263, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader265, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1133, col: 5, offset: 35378}, - expr: &choiceExpr{ - pos: position{line: 1133, col: 6, offset: 35379}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonDocumentHeader274, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonDocumentHeader280, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader284, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - run: (*parser).callonDocumentHeader291, - expr: &seqExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeader293, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeader296, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader302, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader305, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 828, col: 5, offset: 27001}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 838, col: 5, offset: 27287}, - expr: &actionExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - run: (*parser).callonDocumentHeader314, - expr: &seqExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 838, col: 6, offset: 27288}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeader318, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeader321, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader327, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader330, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 839, col: 5, offset: 27318}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentHeader340, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentHeader346, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader350, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 829, col: 5, offset: 27035}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeader359, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeader362, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader368, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader371, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1134, col: 5, offset: 35453}, - label: "revision", - expr: &zeroOrOneExpr{ - pos: position{line: 1134, col: 14, offset: 35462}, - expr: &actionExpr{ - pos: position{line: 1190, col: 21, offset: 37056}, - run: (*parser).callonDocumentHeader382, - expr: &seqExpr{ - pos: position{line: 1190, col: 21, offset: 37056}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1190, col: 21, offset: 37056}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader385, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 1190, col: 28, offset: 37063}, - expr: &litMatcher{ - pos: position{line: 1190, col: 29, offset: 37064}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - &labeledExpr{ - pos: position{line: 1190, col: 33, offset: 37068}, - label: "revision", - expr: &choiceExpr{ - pos: position{line: 1191, col: 9, offset: 37087}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1191, col: 10, offset: 37088}, - run: (*parser).callonDocumentHeader391, - expr: &seqExpr{ - pos: position{line: 1191, col: 10, offset: 37088}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1191, col: 10, offset: 37088}, - label: "revnumber", - expr: &choiceExpr{ - pos: position{line: 1200, col: 27, offset: 37605}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1200, col: 27, offset: 37605}, - run: (*parser).callonDocumentHeader395, - expr: &seqExpr{ - pos: position{line: 1200, col: 27, offset: 37605}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1200, col: 27, offset: 37605}, - val: "v", - ignoreCase: true, - want: "\"v\"i", - }, - &charClassMatcher{ - pos: position{line: 1200, col: 32, offset: 37610}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 1200, col: 38, offset: 37616}, - expr: &charClassMatcher{ - pos: position{line: 1200, col: 38, offset: 37616}, - val: "[^:,\\r\\n]", - chars: []rune{':', ',', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1202, col: 5, offset: 37664}, - run: (*parser).callonDocumentHeader401, - expr: &seqExpr{ - pos: position{line: 1202, col: 5, offset: 37664}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 1202, col: 5, offset: 37664}, - expr: &litMatcher{ - pos: position{line: 1202, col: 5, offset: 37664}, - val: "v", - ignoreCase: true, - want: "\"v\"i", - }, - }, - &charClassMatcher{ - pos: position{line: 1202, col: 11, offset: 37670}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 1202, col: 17, offset: 37676}, - expr: &charClassMatcher{ - pos: position{line: 1202, col: 17, offset: 37676}, - val: "[^:,\\r\\n]", - chars: []rune{':', ',', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1202, col: 28, offset: 37687}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeader409, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andExpr{ - pos: position{line: 1202, col: 35, offset: 37694}, - expr: &litMatcher{ - pos: position{line: 1202, col: 36, offset: 37695}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 1191, col: 45, offset: 37123}, - expr: &litMatcher{ - pos: position{line: 1191, col: 45, offset: 37123}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - }, - &labeledExpr{ - pos: position{line: 1191, col: 50, offset: 37128}, - label: "revdate", - expr: &zeroOrOneExpr{ - pos: position{line: 1191, col: 58, offset: 37136}, - expr: &actionExpr{ - pos: position{line: 1206, col: 25, offset: 37759}, - run: (*parser).callonDocumentHeader417, - expr: &oneOrMoreExpr{ - pos: position{line: 1206, col: 25, offset: 37759}, - expr: &charClassMatcher{ - pos: position{line: 1206, col: 25, offset: 37759}, - val: "[^:\\r\\n]", - chars: []rune{':', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 1191, col: 82, offset: 37160}, - expr: &litMatcher{ - pos: position{line: 1191, col: 82, offset: 37160}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - &labeledExpr{ - pos: position{line: 1191, col: 87, offset: 37165}, - label: "revremark", - expr: &zeroOrOneExpr{ - pos: position{line: 1191, col: 97, offset: 37175}, - expr: &actionExpr{ - pos: position{line: 1210, col: 27, offset: 37831}, - run: (*parser).callonDocumentHeader424, - expr: &oneOrMoreExpr{ - pos: position{line: 1210, col: 27, offset: 37831}, - expr: &charClassMatcher{ - pos: position{line: 1210, col: 27, offset: 37831}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1193, col: 15, offset: 37293}, - run: (*parser).callonDocumentHeader427, - expr: &seqExpr{ - pos: position{line: 1193, col: 15, offset: 37293}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1193, col: 15, offset: 37293}, - label: "revdate", - expr: &actionExpr{ - pos: position{line: 1206, col: 25, offset: 37759}, - run: (*parser).callonDocumentHeader430, - expr: &oneOrMoreExpr{ - pos: position{line: 1206, col: 25, offset: 37759}, - expr: &charClassMatcher{ - pos: position{line: 1206, col: 25, offset: 37759}, - val: "[^:\\r\\n]", - chars: []rune{':', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 1193, col: 46, offset: 37324}, - expr: &litMatcher{ - pos: position{line: 1193, col: 46, offset: 37324}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - &labeledExpr{ - pos: position{line: 1193, col: 51, offset: 37329}, - label: "revremark", - expr: &zeroOrOneExpr{ - pos: position{line: 1193, col: 61, offset: 37339}, - expr: &actionExpr{ - pos: position{line: 1210, col: 27, offset: 37831}, - run: (*parser).callonDocumentHeader437, - expr: &oneOrMoreExpr{ - pos: position{line: 1210, col: 27, offset: 37831}, - expr: &charClassMatcher{ - pos: position{line: 1210, col: 27, offset: 37831}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeader441, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 596, col: 5, offset: 18752}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + &andExpr{ + pos: position{line: 596, col: 10, offset: 18757}, + expr: ¬Expr{ + pos: position{line: 596, col: 12, offset: 18759}, + expr: &seqExpr{ + pos: position{line: 596, col: 14, offset: 18761}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 596, col: 14, offset: 18761}, + expr: &ruleRefExpr{ + pos: position{line: 596, col: 14, offset: 18761}, + name: "Space", }, }, + &litMatcher{ + pos: position{line: 596, col: 21, offset: 18768}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1097, col: 5, offset: 34135}, - label: "moreExtraAttrs", - expr: &ruleRefExpr{ - pos: position{line: 1097, col: 21, offset: 34151}, - name: "DocumentHeaderAttributes", - }, - }, - &andCodeExpr{ - pos: position{line: 1098, col: 5, offset: 34181}, - run: (*parser).callonDocumentHeader450, - }, }, }, }, }, { - name: "DocumentHeaderAttributes", - pos: position{line: 1116, col: 1, offset: 34816}, - expr: &zeroOrMoreExpr{ - pos: position{line: 1116, col: 29, offset: 34844}, - expr: &choiceExpr{ - pos: position{line: 1116, col: 30, offset: 34845}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1116, col: 30, offset: 34845}, - name: "AttributeDeclaration", - }, - &actionExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - run: (*parser).callonDocumentHeaderAttributes4, - expr: &seqExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 364, col: 19, offset: 11171}, - val: ":!", + name: "DoubleQuotedAttributeValueContent", + pos: position{line: 600, col: 1, offset: 18811}, + expr: &actionExpr{ + pos: position{line: 601, col: 5, offset: 18853}, + run: (*parser).callonDoubleQuotedAttributeValueContent1, + expr: &labeledExpr{ + pos: position{line: 601, col: 5, offset: 18853}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 601, col: 14, offset: 18862}, + expr: &choiceExpr{ + pos: position{line: 602, col: 9, offset: 18872}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 602, col: 9, offset: 18872}, + name: "Alphanums", + }, + &ruleRefExpr{ + pos: position{line: 603, col: 11, offset: 18892}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 604, col: 11, offset: 18908}, + name: "Quote", + }, + &ruleRefExpr{ + pos: position{line: 605, col: 11, offset: 18924}, + name: "QuotationMark", + }, + &ruleRefExpr{ + pos: position{line: 606, col: 11, offset: 18948}, + name: "AttributeReference", + }, + &actionExpr{ + pos: position{line: 607, col: 12, offset: 18979}, + run: (*parser).callonDoubleQuotedAttributeValueContent10, + expr: &litMatcher{ + pos: position{line: 607, col: 12, offset: 18979}, + val: "\\\"", ignoreCase: false, - want: "\":!\"", + want: "\"\\\\\\\"\"", }, - &labeledExpr{ - pos: position{line: 364, col: 24, offset: 11176}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentHeaderAttributes8, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + }, + &choiceExpr{ + pos: position{line: 610, col: 13, offset: 19081}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 610, col: 13, offset: 19081}, + val: "\"`", + ignoreCase: false, + want: "\"\\\"`\"", + }, + &litMatcher{ + pos: position{line: 610, col: 21, offset: 19089}, + val: "`\"", + ignoreCase: false, + want: "\"`\\\"\"", + }, + &litMatcher{ + pos: position{line: 610, col: 29, offset: 19097}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &actionExpr{ + pos: position{line: 610, col: 35, offset: 19103}, + run: (*parser).callonDoubleQuotedAttributeValueContent16, + expr: &litMatcher{ + pos: position{line: 610, col: 35, offset: 19103}, + val: "`", + ignoreCase: false, + want: "\"`\"", }, }, }, - &litMatcher{ - pos: position{line: 364, col: 45, offset: 11197}, - val: ":", - ignoreCase: false, - want: "\":\"", + }, + &actionExpr{ + pos: position{line: 613, col: 12, offset: 19286}, + run: (*parser).callonDoubleQuotedAttributeValueContent18, + expr: &oneOrMoreExpr{ + pos: position{line: 613, col: 12, offset: 19286}, + expr: &charClassMatcher{ + pos: position{line: 613, col: 12, offset: 19286}, + val: "[^\\r\\n\\\\\"` ]", + chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, + ignoreCase: false, + inverted: true, + }, }, - &zeroOrMoreExpr{ - pos: position{line: 364, col: 49, offset: 11201}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeaderAttributes15, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + }, + }, + }, + }, + }, + }, + }, + { + name: "UnquotedAttributeValue", + pos: position{line: 621, col: 1, offset: 19560}, + expr: &actionExpr{ + pos: position{line: 624, col: 5, offset: 19744}, + run: (*parser).callonUnquotedAttributeValue1, + expr: &seqExpr{ + pos: position{line: 624, col: 5, offset: 19744}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 624, col: 5, offset: 19744}, + expr: &ruleRefExpr{ + pos: position{line: 624, col: 6, offset: 19745}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 625, col: 5, offset: 19813}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 625, col: 14, offset: 19822}, + expr: &choiceExpr{ + pos: position{line: 626, col: 9, offset: 19832}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 626, col: 10, offset: 19833}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 626, col: 10, offset: 19833}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + &ruleRefExpr{ + pos: position{line: 626, col: 14, offset: 19837}, + name: "UnquotedAttributeValue", + }, + &litMatcher{ + pos: position{line: 626, col: 37, offset: 19860}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, }, }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes18, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + &actionExpr{ + pos: position{line: 628, col: 12, offset: 19959}, + run: (*parser).callonUnquotedAttributeValue12, + expr: &oneOrMoreExpr{ + pos: position{line: 628, col: 12, offset: 19959}, + expr: &charClassMatcher{ + pos: position{line: 628, col: 12, offset: 19959}, + val: "[^=,\\uFFFD\\]{'\"` ]", + chars: []rune{'=', ',', '�', ']', '{', '\'', '"', '`', ' '}, + ignoreCase: false, + inverted: true, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + }, + &ruleRefExpr{ + pos: position{line: 631, col: 11, offset: 20109}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 632, col: 11, offset: 20125}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 633, col: 11, offset: 20154}, + name: "QuotationMark", + }, + &actionExpr{ + pos: position{line: 634, col: 11, offset: 20178}, + run: (*parser).callonUnquotedAttributeValue18, + expr: &choiceExpr{ + pos: position{line: 634, col: 12, offset: 20179}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 634, col: 12, offset: 20179}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + &litMatcher{ + pos: position{line: 634, col: 18, offset: 20185}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + &litMatcher{ + pos: position{line: 634, col: 24, offset: 20191}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, }, }, }, + &litMatcher{ + pos: position{line: 637, col: 11, offset: 20311}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, }, }, }, }, - &actionExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - run: (*parser).callonDocumentHeaderAttributes25, - expr: &seqExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 366, col: 9, offset: 11292}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 366, col: 13, offset: 11296}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDocumentHeaderAttributes29, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 366, col: 34, offset: 11317}, - val: "!:", - ignoreCase: false, - want: "\"!:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 366, col: 39, offset: 11322}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeaderAttributes36, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes39, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + { + name: "AttributeReference", + pos: position{line: 645, col: 1, offset: 20597}, + expr: &actionExpr{ + pos: position{line: 647, col: 5, offset: 20685}, + run: (*parser).callonAttributeReference1, + expr: &seqExpr{ + pos: position{line: 647, col: 5, offset: 20685}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 647, col: 5, offset: 20685}, + run: (*parser).callonAttributeReference3, }, - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonDocumentHeaderAttributes46, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonDocumentHeaderAttributes52, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, + &labeledExpr{ + pos: position{line: 650, col: 5, offset: 20757}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 650, col: 14, offset: 20766}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 650, col: 14, offset: 20766}, + name: "CounterReference", }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes56, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 650, col: 33, offset: 20785}, + name: "AttributeReferenceValue", }, }, }, }, - &actionExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - run: (*parser).callonDocumentHeaderAttributes63, - expr: &seqExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeaderAttributes65, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeaderAttributes68, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeaderAttributes74, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes77, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 828, col: 5, offset: 27001}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 838, col: 5, offset: 27287}, - expr: &actionExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - run: (*parser).callonDocumentHeaderAttributes86, - expr: &seqExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 838, col: 6, offset: 27288}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeaderAttributes90, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeaderAttributes93, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeaderAttributes99, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes102, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 839, col: 5, offset: 27318}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonDocumentHeaderAttributes112, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonDocumentHeaderAttributes118, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes122, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 829, col: 5, offset: 27035}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonDocumentHeaderAttributes131, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonDocumentHeaderAttributes134, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeaderAttributes140, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes143, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + }, + }, + }, + }, + { + name: "AttributeReferenceValue", + pos: position{line: 654, col: 1, offset: 20847}, + expr: &choiceExpr{ + pos: position{line: 656, col: 5, offset: 20895}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 656, col: 5, offset: 20895}, + run: (*parser).callonAttributeReferenceValue2, + expr: &seqExpr{ + pos: position{line: 656, col: 5, offset: 20895}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 656, col: 5, offset: 20895}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &litMatcher{ + pos: position{line: 656, col: 9, offset: 20899}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 656, col: 13, offset: 20903}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 656, col: 18, offset: 20908}, + name: "AttributeName", }, }, + &litMatcher{ + pos: position{line: 656, col: 32, offset: 20922}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, - &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonDocumentHeaderAttributes152, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDocumentHeaderAttributes158, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDocumentHeaderAttributes161, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + }, + &actionExpr{ + pos: position{line: 663, col: 5, offset: 21163}, + run: (*parser).callonAttributeReferenceValue9, + expr: &seqExpr{ + pos: position{line: 663, col: 5, offset: 21163}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 663, col: 5, offset: 21163}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 663, col: 9, offset: 21167}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 663, col: 14, offset: 21172}, + name: "AttributeName", }, }, + &litMatcher{ + pos: position{line: 663, col: 28, offset: 21186}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, @@ -20007,1592 +3364,495 @@ var g = &grammar{ }, }, { - name: "InlineElement", - pos: position{line: 1277, col: 1, offset: 40001}, + name: "CounterReference", + pos: position{line: 668, col: 1, offset: 21330}, + expr: &choiceExpr{ + pos: position{line: 668, col: 21, offset: 21350}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 668, col: 21, offset: 21350}, + name: "CounterSubstitution1", + }, + &ruleRefExpr{ + pos: position{line: 668, col: 44, offset: 21373}, + name: "CounterSubstitution2", + }, + }, + }, + }, + { + name: "CounterSubstitution1", + pos: position{line: 670, col: 1, offset: 21395}, expr: &actionExpr{ - pos: position{line: 1278, col: 5, offset: 40024}, - run: (*parser).callonInlineElement1, - expr: &labeledExpr{ - pos: position{line: 1278, col: 5, offset: 40024}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1279, col: 9, offset: 40042}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3048, col: 5, offset: 99000}, - run: (*parser).callonInlineElement4, - expr: &seqExpr{ - pos: position{line: 3048, col: 5, offset: 99000}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3048, col: 5, offset: 99000}, + pos: position{line: 670, col: 25, offset: 21419}, + run: (*parser).callonCounterSubstitution11, + expr: &seqExpr{ + pos: position{line: 670, col: 25, offset: 21419}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 670, col: 25, offset: 21419}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 670, col: 37, offset: 21431}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 670, col: 42, offset: 21436}, + name: "AttributeName", + }, + }, + &labeledExpr{ + pos: position{line: 670, col: 56, offset: 21450}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 670, col: 62, offset: 21456}, + expr: &ruleRefExpr{ + pos: position{line: 670, col: 63, offset: 21457}, + name: "CounterStart", + }, + }, + }, + &litMatcher{ + pos: position{line: 670, col: 78, offset: 21472}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + { + name: "CounterSubstitution2", + pos: position{line: 674, col: 1, offset: 21566}, + expr: &actionExpr{ + pos: position{line: 674, col: 25, offset: 21590}, + run: (*parser).callonCounterSubstitution21, + expr: &seqExpr{ + pos: position{line: 674, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 674, col: 25, offset: 21590}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 674, col: 38, offset: 21603}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 674, col: 43, offset: 21608}, + name: "AttributeName", + }, + }, + &labeledExpr{ + pos: position{line: 674, col: 57, offset: 21622}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 674, col: 63, offset: 21628}, + expr: &ruleRefExpr{ + pos: position{line: 674, col: 64, offset: 21629}, + name: "CounterStart", + }, + }, + }, + &litMatcher{ + pos: position{line: 674, col: 79, offset: 21644}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + { + name: "CounterStart", + pos: position{line: 678, col: 1, offset: 21735}, + expr: &actionExpr{ + pos: position{line: 678, col: 17, offset: 21751}, + run: (*parser).callonCounterStart1, + expr: &seqExpr{ + pos: position{line: 678, col: 17, offset: 21751}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 678, col: 17, offset: 21751}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 678, col: 21, offset: 21755}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 678, col: 28, offset: 21762}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 678, col: 28, offset: 21762}, + run: (*parser).callonCounterStart6, + expr: &charClassMatcher{ + pos: position{line: 678, col: 28, offset: 21762}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 680, col: 9, offset: 21816}, + run: (*parser).callonCounterStart8, + expr: &oneOrMoreExpr{ + pos: position{line: 680, col: 9, offset: 21816}, expr: &charClassMatcher{ - pos: position{line: 3048, col: 5, offset: 99000}, - val: "[,;!?0-9\\pL]", - chars: []rune{',', ';', '!', '?'}, + pos: position{line: 680, col: 9, offset: 21816}, + val: "[0-9]", ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, inverted: false, }, }, - &choiceExpr{ - pos: position{line: 3049, col: 6, offset: 99050}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineElement9, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3049, col: 14, offset: 99058}, - expr: &choiceExpr{ - pos: position{line: 3049, col: 16, offset: 99060}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3049, col: 16, offset: 99060}, - val: "[.�]", - chars: []rune{'.', '�'}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlineElement14, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, }, }, }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonInlineElement21, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + }, + }, + }, + }, + }, + { + name: "BlankLine", + pos: position{line: 689, col: 1, offset: 22104}, + expr: &actionExpr{ + pos: position{line: 689, col: 14, offset: 22117}, + run: (*parser).callonBlankLine1, + expr: &seqExpr{ + pos: position{line: 689, col: 14, offset: 22117}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 689, col: 14, offset: 22117}, + expr: &ruleRefExpr{ + pos: position{line: 689, col: 15, offset: 22118}, + name: "EOF", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 689, col: 19, offset: 22122}, + expr: &ruleRefExpr{ + pos: position{line: 689, col: 19, offset: 22122}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 689, col: 26, offset: 22129}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "CrossReference", + pos: position{line: 696, col: 1, offset: 22376}, + expr: &choiceExpr{ + pos: position{line: 696, col: 19, offset: 22394}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 696, col: 19, offset: 22394}, + name: "InternalCrossReference", + }, + &ruleRefExpr{ + pos: position{line: 696, col: 44, offset: 22419}, + name: "ExternalCrossReference", + }, + }, + }, + }, + { + name: "InternalCrossReference", + pos: position{line: 698, col: 1, offset: 22444}, + expr: &choiceExpr{ + pos: position{line: 698, col: 27, offset: 22470}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 698, col: 27, offset: 22470}, + run: (*parser).callonInternalCrossReference2, + expr: &seqExpr{ + pos: position{line: 698, col: 27, offset: 22470}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 698, col: 27, offset: 22470}, + val: "<<", + ignoreCase: false, + want: "\"<<\"", + }, + &labeledExpr{ + pos: position{line: 698, col: 32, offset: 22475}, + label: "id", + expr: &ruleRefExpr{ + pos: position{line: 698, col: 36, offset: 22479}, + name: "Id", }, }, + &zeroOrMoreExpr{ + pos: position{line: 698, col: 40, offset: 22483}, + expr: &ruleRefExpr{ + pos: position{line: 698, col: 40, offset: 22483}, + name: "Space", + }, + }, + &litMatcher{ + pos: position{line: 698, col: 47, offset: 22490}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &labeledExpr{ + pos: position{line: 698, col: 51, offset: 22494}, + label: "label", + expr: &ruleRefExpr{ + pos: position{line: 698, col: 58, offset: 22501}, + name: "CrossReferenceLabel", + }, + }, + &litMatcher{ + pos: position{line: 698, col: 79, offset: 22522}, + val: ">>", + ignoreCase: false, + want: "\">>\"", + }, }, - &actionExpr{ - pos: position{line: 1227, col: 5, offset: 38587}, - run: (*parser).callonInlineElement24, - expr: &seqExpr{ - pos: position{line: 1227, col: 5, offset: 38587}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1227, col: 5, offset: 38587}, - run: (*parser).callonInlineElement26, - }, - &litMatcher{ - pos: position{line: 1230, col: 5, offset: 38689}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1230, col: 9, offset: 38693}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineElement29, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andExpr{ - pos: position{line: 1230, col: 16, offset: 38700}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlineElement33, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, + }, + }, + &actionExpr{ + pos: position{line: 700, col: 9, offset: 22595}, + run: (*parser).callonInternalCrossReference13, + expr: &seqExpr{ + pos: position{line: 700, col: 9, offset: 22595}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 700, col: 9, offset: 22595}, + val: "<<", + ignoreCase: false, + want: "\"<<\"", + }, + &labeledExpr{ + pos: position{line: 700, col: 14, offset: 22600}, + label: "id", + expr: &ruleRefExpr{ + pos: position{line: 700, col: 18, offset: 22604}, + name: "Id", }, }, + &litMatcher{ + pos: position{line: 700, col: 22, offset: 22608}, + val: ">>", + ignoreCase: false, + want: "\">>\"", + }, }, - &seqExpr{ - pos: position{line: 1282, col: 11, offset: 40141}, + }, + }, + }, + }, + }, + { + name: "ExternalCrossReference", + pos: position{line: 704, col: 1, offset: 22679}, + expr: &actionExpr{ + pos: position{line: 704, col: 27, offset: 22705}, + run: (*parser).callonExternalCrossReference1, + expr: &seqExpr{ + pos: position{line: 704, col: 27, offset: 22705}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 704, col: 27, offset: 22705}, + val: "xref:", + ignoreCase: false, + want: "\"xref:\"", + }, + &labeledExpr{ + pos: position{line: 704, col: 35, offset: 22713}, + label: "url", + expr: &ruleRefExpr{ + pos: position{line: 704, col: 40, offset: 22718}, + name: "FileLocation", + }, + }, + &labeledExpr{ + pos: position{line: 704, col: 54, offset: 22732}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 704, col: 66, offset: 22744}, + name: "InlineAttributes", + }, + }, + }, + }, + }, + }, + { + name: "CrossReferenceLabel", + pos: position{line: 708, col: 1, offset: 22872}, + expr: &oneOrMoreExpr{ + pos: position{line: 708, col: 24, offset: 22895}, + expr: &choiceExpr{ + pos: position{line: 709, col: 5, offset: 22901}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 709, col: 6, offset: 22902}, + run: (*parser).callonCrossReferenceLabel3, + expr: &seqExpr{ + pos: position{line: 709, col: 6, offset: 22902}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1282, col: 11, offset: 40141}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlineElement43, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + &charClassMatcher{ + pos: position{line: 709, col: 6, offset: 22902}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, - &choiceExpr{ - pos: position{line: 1283, col: 13, offset: 40184}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonInlineElement51, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonInlineElement55, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonInlineElement57, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonInlineElement59, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonInlineElement61, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonInlineElement63, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonInlineElement65, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonInlineElement67, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonInlineElement69, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonInlineElement71, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonInlineElement73, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonInlineElement75, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineElement78, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlineElement82, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonInlineElement89, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonInlineElement91, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlineElement96, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonInlineElement103, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonInlineElement105, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonInlineElement107, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonInlineElement109, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonInlineElement111, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonInlineElement113, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonInlineElement115, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonInlineElement117, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonInlineElement119, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonInlineElement121, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonInlineElement123, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonInlineElement125, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonInlineElement127, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineElement130, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlineElement134, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonInlineElement141, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonInlineElement143, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlineElement148, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonInlineElement155, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonInlineElement157, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonInlineElement159, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonInlineElement161, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonInlineElement163, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonInlineElement169, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 1284, col: 15, offset: 40205}, - name: "Quote", - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonInlineElement176, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonInlineElement178, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonInlineElement181, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineElement185, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonInlineElement192, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonInlineElement197, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonInlineElement199, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonInlineElement203, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineElement207, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonInlineElement214, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonInlineElement219, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonInlineElement221, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonInlineElement225, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineElement229, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonInlineElement235, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineElement239, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 1286, col: 15, offset: 40259}, - name: "InlineMacro", - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonInlineElement246, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonInlineElement248, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonInlineElement251, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonInlineElement253, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonInlineElement257, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineElement261, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonInlineElement267, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonInlineElement272, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineElement276, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonInlineElement282, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineElement286, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonInlineElement292, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonInlineElement295, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonInlineElement299, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonInlineElement303, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonInlineElement305, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonInlineElement309, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3067, col: 12, offset: 99599}, - run: (*parser).callonInlineElement313, - expr: &anyMatcher{ - line: 3067, col: 12, offset: 99599, - }, - }, + &oneOrMoreExpr{ + pos: position{line: 709, col: 14, offset: 22910}, + expr: &charClassMatcher{ + pos: position{line: 709, col: 14, offset: 22910}, + val: "[^\\r\\n{<>]", + chars: []rune{'\r', '\n', '{', '<', '>'}, + ignoreCase: false, + inverted: true, }, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 712, col: 7, offset: 23105}, + name: "AttributeReferenceValue", + }, + &actionExpr{ + pos: position{line: 713, col: 8, offset: 23136}, + run: (*parser).callonCrossReferenceLabel9, + expr: &litMatcher{ + pos: position{line: 713, col: 8, offset: 23136}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, }, }, }, }, { - name: "InlineButton", - pos: position{line: 1313, col: 1, offset: 41315}, + name: "DelimitedBlock", + pos: position{line: 722, col: 1, offset: 23411}, + expr: &choiceExpr{ + pos: position{line: 723, col: 5, offset: 23433}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 723, col: 5, offset: 23433}, + name: "CommentBlock", + }, + &ruleRefExpr{ + pos: position{line: 724, col: 7, offset: 23452}, + name: "ExampleBlock", + }, + &ruleRefExpr{ + pos: position{line: 725, col: 7, offset: 23471}, + name: "MarkdownCodeBlock", + }, + &ruleRefExpr{ + pos: position{line: 726, col: 7, offset: 23495}, + name: "FencedBlock", + }, + &ruleRefExpr{ + pos: position{line: 727, col: 7, offset: 23513}, + name: "ListingBlock", + }, + &ruleRefExpr{ + pos: position{line: 728, col: 7, offset: 23532}, + name: "LiteralBlock", + }, + &ruleRefExpr{ + pos: position{line: 729, col: 7, offset: 23551}, + name: "MarkdownQuoteBlock", + }, + &ruleRefExpr{ + pos: position{line: 730, col: 7, offset: 23576}, + name: "PassthroughBlock", + }, + &ruleRefExpr{ + pos: position{line: 731, col: 7, offset: 23599}, + name: "QuoteBlock", + }, + &ruleRefExpr{ + pos: position{line: 732, col: 7, offset: 23616}, + name: "SidebarBlock", + }, + }, + }, + }, + { + name: "BlockDelimiter", + pos: position{line: 734, col: 1, offset: 23630}, expr: &actionExpr{ - pos: position{line: 1314, col: 5, offset: 41336}, - run: (*parser).callonInlineButton1, + pos: position{line: 735, col: 5, offset: 23652}, + run: (*parser).callonBlockDelimiter1, expr: &seqExpr{ - pos: position{line: 1314, col: 5, offset: 41336}, + pos: position{line: 735, col: 5, offset: 23652}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1314, col: 5, offset: 41336}, - run: (*parser).callonInlineButton3, - }, - &litMatcher{ - pos: position{line: 1317, col: 5, offset: 41395}, - val: "btn:", - ignoreCase: false, - want: "\"btn:\"", + ¬Expr{ + pos: position{line: 735, col: 5, offset: 23652}, + expr: &ruleRefExpr{ + pos: position{line: 735, col: 6, offset: 23653}, + name: "Alphanum", + }, }, &labeledExpr{ - pos: position{line: 1317, col: 12, offset: 41402}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 1317, col: 24, offset: 41414}, - name: "InlineAttributes", + pos: position{line: 736, col: 5, offset: 23682}, + label: "delimiter", + expr: &choiceExpr{ + pos: position{line: 737, col: 9, offset: 23702}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 737, col: 9, offset: 23702}, + name: "CommentBlockDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 738, col: 11, offset: 23734}, + name: "ExampleBlockDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 739, col: 11, offset: 23766}, + name: "MarkdownCodeDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 740, col: 11, offset: 23932}, + name: "FencedBlockDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 741, col: 11, offset: 23963}, + name: "ListingBlockDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 742, col: 11, offset: 23995}, + name: "LiteralBlockDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 743, col: 11, offset: 24027}, + name: "PassthroughBlockDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 744, col: 11, offset: 24063}, + name: "QuoteBlockDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 745, col: 11, offset: 24093}, + name: "SidebarBlockDelimiter", + }, + }, }, }, }, @@ -21600,2707 +3860,545 @@ var g = &grammar{ }, }, { - name: "InlineMenu", - pos: position{line: 1324, col: 1, offset: 41702}, + name: "CommentBlockDelimiter", + pos: position{line: 750, col: 1, offset: 24164}, expr: &actionExpr{ - pos: position{line: 1325, col: 5, offset: 41721}, - run: (*parser).callonInlineMenu1, + pos: position{line: 751, col: 5, offset: 24194}, + run: (*parser).callonCommentBlockDelimiter1, expr: &seqExpr{ - pos: position{line: 1325, col: 5, offset: 41721}, + pos: position{line: 751, col: 5, offset: 24194}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1325, col: 5, offset: 41721}, - run: (*parser).callonInlineMenu3, - }, - &litMatcher{ - pos: position{line: 1328, col: 5, offset: 41780}, - val: "menu:", - ignoreCase: false, - want: "\"menu:\"", - }, &labeledExpr{ - pos: position{line: 1328, col: 13, offset: 41788}, - label: "id", + pos: position{line: 751, col: 5, offset: 24194}, + label: "delimiter", expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonInlineMenu6, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, + pos: position{line: 751, col: 16, offset: 24205}, + run: (*parser).callonCommentBlockDelimiter4, + expr: &seqExpr{ + pos: position{line: 751, col: 16, offset: 24205}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 751, col: 16, offset: 24205}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 751, col: 23, offset: 24212}, + expr: &litMatcher{ + pos: position{line: 751, col: 23, offset: 24212}, + val: "/", + ignoreCase: false, + want: "\"/\"", + }, + }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1328, col: 21, offset: 41796}, - label: "attributes", + &zeroOrMoreExpr{ + pos: position{line: 753, col: 8, offset: 24296}, expr: &ruleRefExpr{ - pos: position{line: 1328, col: 33, offset: 41808}, - name: "InlineAttributes", + pos: position{line: 753, col: 8, offset: 24296}, + name: "Space", }, }, + &ruleRefExpr{ + pos: position{line: 753, col: 15, offset: 24303}, + name: "EOL", + }, }, }, }, }, { - name: "IndexTerm", - pos: position{line: 1335, col: 1, offset: 42107}, + name: "ExampleBlockDelimiter", + pos: position{line: 757, col: 1, offset: 24412}, expr: &actionExpr{ - pos: position{line: 1335, col: 14, offset: 42120}, - run: (*parser).callonIndexTerm1, + pos: position{line: 758, col: 5, offset: 24442}, + run: (*parser).callonExampleBlockDelimiter1, expr: &seqExpr{ - pos: position{line: 1335, col: 14, offset: 42120}, + pos: position{line: 758, col: 5, offset: 24442}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1335, col: 14, offset: 42120}, - val: "((", - ignoreCase: false, - want: "\"((\"", - }, &labeledExpr{ - pos: position{line: 1335, col: 19, offset: 42125}, - label: "term", + pos: position{line: 758, col: 5, offset: 24442}, + label: "delimiter", + expr: &actionExpr{ + pos: position{line: 758, col: 16, offset: 24453}, + run: (*parser).callonExampleBlockDelimiter4, + expr: &seqExpr{ + pos: position{line: 758, col: 16, offset: 24453}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 758, col: 16, offset: 24453}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 758, col: 23, offset: 24460}, + expr: &litMatcher{ + pos: position{line: 758, col: 23, offset: 24460}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 760, col: 8, offset: 24544}, expr: &ruleRefExpr{ - pos: position{line: 1335, col: 25, offset: 42131}, - name: "IndexTermContent", + pos: position{line: 760, col: 8, offset: 24544}, + name: "Space", }, }, - &litMatcher{ - pos: position{line: 1335, col: 43, offset: 42149}, - val: "))", - ignoreCase: false, - want: "\"))\"", + &ruleRefExpr{ + pos: position{line: 760, col: 15, offset: 24551}, + name: "EOL", }, }, }, }, }, { - name: "IndexTermContent", - pos: position{line: 1339, col: 1, offset: 42218}, + name: "FencedBlockDelimiter", + pos: position{line: 764, col: 1, offset: 24660}, expr: &actionExpr{ - pos: position{line: 1339, col: 21, offset: 42238}, - run: (*parser).callonIndexTermContent1, - expr: &labeledExpr{ - pos: position{line: 1339, col: 21, offset: 42238}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 1339, col: 30, offset: 42247}, - expr: &choiceExpr{ - pos: position{line: 1339, col: 31, offset: 42248}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - run: (*parser).callonIndexTermContent5, - expr: &seqExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - expr: &charClassMatcher{ - pos: position{line: 3041, col: 5, offset: 98782}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3041, col: 15, offset: 98792}, - expr: &choiceExpr{ - pos: position{line: 3041, col: 17, offset: 98794}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3041, col: 17, offset: 98794}, - val: "[\\r\\n ,]]", - chars: []rune{'\r', '\n', ' ', ',', ']'}, - ignoreCase: false, - inverted: false, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - run: (*parser).callonIndexTermContent14, - expr: &seqExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - expr: &charClassMatcher{ - pos: position{line: 3043, col: 9, offset: 98876}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3043, col: 19, offset: 98886}, - expr: &seqExpr{ - pos: position{line: 3043, col: 20, offset: 98887}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3043, col: 20, offset: 98887}, - val: "[=*_`]", - chars: []rune{'=', '*', '_', '`'}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 3043, col: 27, offset: 98894}, - expr: &charClassMatcher{ - pos: position{line: 3043, col: 27, offset: 98894}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 1339, col: 38, offset: 42255}, - name: "QuotedText", - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonIndexTermContent24, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonIndexTermContent26, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonIndexTermContent28, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonIndexTermContent31, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonIndexTermContent33, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonIndexTermContent37, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonIndexTermContent41, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonIndexTermContent47, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonIndexTermContent52, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonIndexTermContent56, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonIndexTermContent62, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonIndexTermContent66, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonIndexTermContent72, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonIndexTermContent75, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonIndexTermContent79, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonIndexTermContent83, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, + pos: position{line: 765, col: 5, offset: 24689}, + run: (*parser).callonFencedBlockDelimiter1, + expr: &seqExpr{ + pos: position{line: 765, col: 5, offset: 24689}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 765, col: 5, offset: 24689}, + label: "delimiter", + expr: &actionExpr{ + pos: position{line: 765, col: 16, offset: 24700}, + run: (*parser).callonFencedBlockDelimiter4, + expr: &seqExpr{ + pos: position{line: 765, col: 16, offset: 24700}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 765, col: 16, offset: 24700}, + val: "```", + ignoreCase: false, + want: "\"```\"", }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonIndexTermContent85, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonIndexTermContent89, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", + &zeroOrMoreExpr{ + pos: position{line: 765, col: 22, offset: 24706}, + expr: &litMatcher{ + pos: position{line: 765, col: 22, offset: 24706}, + val: "`", ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1339, col: 99, offset: 42316}, - run: (*parser).callonIndexTermContent93, - expr: &seqExpr{ - pos: position{line: 1339, col: 100, offset: 42317}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1339, col: 100, offset: 42317}, - expr: &litMatcher{ - pos: position{line: 1339, col: 101, offset: 42318}, - val: "))", - ignoreCase: false, - want: "\"))\"", - }, - }, - &anyMatcher{ - line: 1339, col: 106, offset: 42323, + want: "\"`\"", }, }, }, }, }, }, + &zeroOrMoreExpr{ + pos: position{line: 767, col: 8, offset: 24790}, + expr: &ruleRefExpr{ + pos: position{line: 767, col: 8, offset: 24790}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 767, col: 15, offset: 24797}, + name: "EOL", + }, }, }, }, }, { - name: "ImageBlock", - pos: position{line: 1359, col: 1, offset: 43032}, + name: "MarkdownCodeDelimiter", + pos: position{line: 771, col: 1, offset: 24905}, expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 43051}, - run: (*parser).callonImageBlock1, + pos: position{line: 771, col: 26, offset: 24930}, + run: (*parser).callonMarkdownCodeDelimiter1, expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 43051}, + pos: position{line: 771, col: 26, offset: 24930}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1360, col: 5, offset: 43051}, - val: "image::", + pos: position{line: 771, col: 26, offset: 24930}, + val: "```", ignoreCase: false, - want: "\"image::\"", + want: "\"```\"", }, &labeledExpr{ - pos: position{line: 1360, col: 15, offset: 43061}, - label: "path", + pos: position{line: 771, col: 32, offset: 24936}, + label: "language", + expr: &ruleRefExpr{ + pos: position{line: 771, col: 42, offset: 24946}, + name: "Language", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 771, col: 52, offset: 24956}, + expr: &ruleRefExpr{ + pos: position{line: 771, col: 52, offset: 24956}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 771, col: 59, offset: 24963}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "Language", + pos: position{line: 775, col: 1, offset: 25054}, + expr: &actionExpr{ + pos: position{line: 775, col: 13, offset: 25066}, + run: (*parser).callonLanguage1, + expr: &oneOrMoreExpr{ + pos: position{line: 775, col: 14, offset: 25067}, + expr: &charClassMatcher{ + pos: position{line: 775, col: 14, offset: 25067}, + val: "[^\\r\\n` ]", + chars: []rune{'\r', '\n', '`', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "ListingBlockDelimiter", + pos: position{line: 779, col: 1, offset: 25196}, + expr: &actionExpr{ + pos: position{line: 780, col: 5, offset: 25226}, + run: (*parser).callonListingBlockDelimiter1, + expr: &seqExpr{ + pos: position{line: 780, col: 5, offset: 25226}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 780, col: 5, offset: 25226}, + label: "delimiter", expr: &actionExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - run: (*parser).callonImageBlock5, + pos: position{line: 780, col: 16, offset: 25237}, + run: (*parser).callonListingBlockDelimiter4, expr: &seqExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, + pos: position{line: 780, col: 16, offset: 25237}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - label: "scheme", - expr: &zeroOrOneExpr{ - pos: position{line: 3075, col: 20, offset: 99807}, - expr: &choiceExpr{ - pos: position{line: 3083, col: 11, offset: 100069}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3083, col: 11, offset: 100069}, - val: "http://", - ignoreCase: false, - want: "\"http://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 23, offset: 100081}, - val: "https://", - ignoreCase: false, - want: "\"https://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 36, offset: 100094}, - val: "ftp://", - ignoreCase: false, - want: "\"ftp://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 47, offset: 100105}, - val: "irc://", - ignoreCase: false, - want: "\"irc://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 58, offset: 100116}, - val: "mailto:", - ignoreCase: false, - want: "\"mailto:\"", - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 780, col: 16, offset: 25237}, + val: "----", + ignoreCase: false, + want: "\"----\"", }, - &labeledExpr{ - pos: position{line: 3075, col: 30, offset: 99817}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3075, col: 35, offset: 99822}, - expr: &choiceExpr{ - pos: position{line: 3075, col: 36, offset: 99823}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonImageBlock18, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonImageBlock25, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonImageBlock29, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonImageBlock36, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonImageBlock38, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonImageBlock40, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonImageBlock43, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonImageBlock47, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonImageBlock54, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonImageBlock59, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonImageBlock61, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonImageBlock65, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonImageBlock69, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonImageBlock76, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonImageBlock81, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonImageBlock83, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonImageBlock87, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonImageBlock91, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonImageBlock97, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonImageBlock101, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonImageBlock107, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonImageBlock109, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonImageBlock112, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonImageBlock114, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonImageBlock118, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonImageBlock122, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonImageBlock128, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonImageBlock133, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonImageBlock137, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonImageBlock143, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonImageBlock147, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonImageBlock153, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonImageBlock156, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonImageBlock160, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonImageBlock164, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonImageBlock166, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonImageBlock168, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonImageBlock172, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, + &zeroOrMoreExpr{ + pos: position{line: 780, col: 23, offset: 25244}, + expr: &litMatcher{ + pos: position{line: 780, col: 23, offset: 25244}, + val: "-", + ignoreCase: false, + want: "\"-\"", }, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1360, col: 31, offset: 43077}, - label: "attributes", + &zeroOrMoreExpr{ + pos: position{line: 782, col: 8, offset: 25328}, expr: &ruleRefExpr{ - pos: position{line: 1360, col: 43, offset: 43089}, - name: "InlineAttributes", + pos: position{line: 782, col: 8, offset: 25328}, + name: "Space", }, }, - &zeroOrMoreExpr{ - pos: position{line: 1360, col: 61, offset: 43107}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonImageBlock179, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + &ruleRefExpr{ + pos: position{line: 782, col: 15, offset: 25335}, + name: "EOL", }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonImageBlock182, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", + }, + }, + }, + }, + { + name: "LiteralBlockDelimiter", + pos: position{line: 786, col: 1, offset: 25444}, + expr: &actionExpr{ + pos: position{line: 787, col: 5, offset: 25474}, + run: (*parser).callonLiteralBlockDelimiter1, + expr: &seqExpr{ + pos: position{line: 787, col: 5, offset: 25474}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 787, col: 5, offset: 25474}, + label: "delimiter", + expr: &actionExpr{ + pos: position{line: 787, col: 16, offset: 25485}, + run: (*parser).callonLiteralBlockDelimiter4, + expr: &seqExpr{ + pos: position{line: 787, col: 16, offset: 25485}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 787, col: 16, offset: 25485}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 787, col: 23, offset: 25492}, + expr: &litMatcher{ + pos: position{line: 787, col: 23, offset: 25492}, + val: ".", ignoreCase: false, - want: "\"\\r\"", + want: "\".\"", }, }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, }, }, + &zeroOrMoreExpr{ + pos: position{line: 789, col: 8, offset: 25576}, + expr: &ruleRefExpr{ + pos: position{line: 789, col: 8, offset: 25576}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 789, col: 15, offset: 25583}, + name: "EOL", + }, }, }, }, }, { - name: "InlineImage", - pos: position{line: 1365, col: 1, offset: 43324}, + name: "PassthroughBlockDelimiter", + pos: position{line: 793, col: 1, offset: 25692}, expr: &actionExpr{ - pos: position{line: 1365, col: 16, offset: 43339}, - run: (*parser).callonInlineImage1, + pos: position{line: 794, col: 5, offset: 25726}, + run: (*parser).callonPassthroughBlockDelimiter1, expr: &seqExpr{ - pos: position{line: 1365, col: 16, offset: 43339}, + pos: position{line: 794, col: 5, offset: 25726}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1365, col: 16, offset: 43339}, - val: "image:", - ignoreCase: false, - want: "\"image:\"", - }, - ¬Expr{ - pos: position{line: 1365, col: 25, offset: 43348}, - expr: &litMatcher{ - pos: position{line: 1365, col: 26, offset: 43349}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, &labeledExpr{ - pos: position{line: 1365, col: 30, offset: 43353}, - label: "path", + pos: position{line: 794, col: 5, offset: 25726}, + label: "delimiter", expr: &actionExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - run: (*parser).callonInlineImage7, + pos: position{line: 794, col: 16, offset: 25737}, + run: (*parser).callonPassthroughBlockDelimiter4, expr: &seqExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, + pos: position{line: 794, col: 16, offset: 25737}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - label: "scheme", - expr: &zeroOrOneExpr{ - pos: position{line: 3075, col: 20, offset: 99807}, - expr: &choiceExpr{ - pos: position{line: 3083, col: 11, offset: 100069}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3083, col: 11, offset: 100069}, - val: "http://", - ignoreCase: false, - want: "\"http://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 23, offset: 100081}, - val: "https://", - ignoreCase: false, - want: "\"https://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 36, offset: 100094}, - val: "ftp://", - ignoreCase: false, - want: "\"ftp://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 47, offset: 100105}, - val: "irc://", - ignoreCase: false, - want: "\"irc://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 58, offset: 100116}, - val: "mailto:", - ignoreCase: false, - want: "\"mailto:\"", - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 794, col: 16, offset: 25737}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", }, - &labeledExpr{ - pos: position{line: 3075, col: 30, offset: 99817}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3075, col: 35, offset: 99822}, - expr: &choiceExpr{ - pos: position{line: 3075, col: 36, offset: 99823}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonInlineImage20, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonInlineImage27, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonInlineImage31, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineImage38, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonInlineImage40, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonInlineImage42, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonInlineImage45, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineImage49, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonInlineImage56, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonInlineImage61, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonInlineImage63, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonInlineImage67, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineImage71, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonInlineImage78, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonInlineImage83, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonInlineImage85, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonInlineImage89, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineImage93, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonInlineImage99, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineImage103, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonInlineImage109, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonInlineImage111, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonInlineImage114, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonInlineImage116, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonInlineImage120, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineImage124, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonInlineImage130, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonInlineImage135, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineImage139, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonInlineImage145, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonInlineImage149, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonInlineImage155, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonInlineImage158, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonInlineImage162, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonInlineImage166, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonInlineImage168, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonInlineImage170, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonInlineImage174, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, + &zeroOrMoreExpr{ + pos: position{line: 794, col: 23, offset: 25744}, + expr: &litMatcher{ + pos: position{line: 794, col: 23, offset: 25744}, + val: "+", + ignoreCase: false, + want: "\"+\"", }, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1365, col: 46, offset: 43369}, - label: "attributes", + &zeroOrMoreExpr{ + pos: position{line: 796, col: 8, offset: 25828}, expr: &ruleRefExpr{ - pos: position{line: 1365, col: 58, offset: 43381}, - name: "InlineAttributes", + pos: position{line: 796, col: 8, offset: 25828}, + name: "Space", }, }, + &ruleRefExpr{ + pos: position{line: 796, col: 15, offset: 25835}, + name: "EOL", + }, }, }, }, }, { - name: "InlineIcon", - pos: position{line: 1372, col: 1, offset: 43777}, + name: "QuoteBlockDelimiter", + pos: position{line: 800, col: 1, offset: 25948}, expr: &actionExpr{ - pos: position{line: 1372, col: 15, offset: 43791}, - run: (*parser).callonInlineIcon1, + pos: position{line: 801, col: 5, offset: 25976}, + run: (*parser).callonQuoteBlockDelimiter1, expr: &seqExpr{ - pos: position{line: 1372, col: 15, offset: 43791}, + pos: position{line: 801, col: 5, offset: 25976}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1372, col: 15, offset: 43791}, - val: "icon:", - ignoreCase: false, - want: "\"icon:\"", - }, &labeledExpr{ - pos: position{line: 1372, col: 23, offset: 43799}, - label: "icon", + pos: position{line: 801, col: 5, offset: 25976}, + label: "delimiter", expr: &actionExpr{ - pos: position{line: 1372, col: 29, offset: 43805}, - run: (*parser).callonInlineIcon5, - expr: &oneOrMoreExpr{ - pos: position{line: 1372, col: 29, offset: 43805}, - expr: &charClassMatcher{ - pos: position{line: 1372, col: 29, offset: 43805}, - val: "[_-0-9\\pL]", - chars: []rune{'_', '-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + pos: position{line: 801, col: 16, offset: 25987}, + run: (*parser).callonQuoteBlockDelimiter4, + expr: &seqExpr{ + pos: position{line: 801, col: 16, offset: 25987}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 801, col: 16, offset: 25987}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 801, col: 23, offset: 25994}, + expr: &litMatcher{ + pos: position{line: 801, col: 23, offset: 25994}, + val: "_", + ignoreCase: false, + want: "\"_\"", + }, + }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1372, col: 73, offset: 43849}, - label: "attributes", + &zeroOrMoreExpr{ + pos: position{line: 803, col: 8, offset: 26078}, expr: &ruleRefExpr{ - pos: position{line: 1372, col: 85, offset: 43861}, - name: "InlineAttributes", + pos: position{line: 803, col: 8, offset: 26078}, + name: "Space", }, }, + &ruleRefExpr{ + pos: position{line: 803, col: 15, offset: 26085}, + name: "EOL", + }, }, }, }, }, { - name: "InlineFootnote", - pos: position{line: 1379, col: 1, offset: 44227}, - expr: &choiceExpr{ - pos: position{line: 1379, col: 19, offset: 44245}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1379, col: 19, offset: 44245}, - run: (*parser).callonInlineFootnote2, - expr: &seqExpr{ - pos: position{line: 1379, col: 19, offset: 44245}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1379, col: 19, offset: 44245}, - val: "footnote:[", - ignoreCase: false, - want: "\"footnote:[\"", - }, - &labeledExpr{ - pos: position{line: 1379, col: 32, offset: 44258}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 1379, col: 42, offset: 44268}, - name: "FootnoteElements", - }, - }, - &litMatcher{ - pos: position{line: 1379, col: 60, offset: 44286}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1381, col: 9, offset: 44364}, - run: (*parser).callonInlineFootnote8, - expr: &seqExpr{ - pos: position{line: 1381, col: 9, offset: 44364}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1381, col: 9, offset: 44364}, - val: "footnote:", - ignoreCase: false, - want: "\"footnote:\"", - }, - &labeledExpr{ - pos: position{line: 1381, col: 21, offset: 44376}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonInlineFootnote12, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + name: "SidebarBlockDelimiter", + pos: position{line: 807, col: 1, offset: 26192}, + expr: &actionExpr{ + pos: position{line: 808, col: 5, offset: 26222}, + run: (*parser).callonSidebarBlockDelimiter1, + expr: &seqExpr{ + pos: position{line: 808, col: 5, offset: 26222}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 808, col: 5, offset: 26222}, + label: "delimiter", + expr: &actionExpr{ + pos: position{line: 808, col: 16, offset: 26233}, + run: (*parser).callonSidebarBlockDelimiter4, + expr: &seqExpr{ + pos: position{line: 808, col: 16, offset: 26233}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 808, col: 16, offset: 26233}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 808, col: 23, offset: 26240}, + expr: &litMatcher{ + pos: position{line: 808, col: 23, offset: 26240}, + val: "*", ignoreCase: false, - inverted: false, + want: "\"*\"", }, }, }, }, - &litMatcher{ - pos: position{line: 1381, col: 39, offset: 44394}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - &labeledExpr{ - pos: position{line: 1381, col: 43, offset: 44398}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 1381, col: 53, offset: 44408}, - name: "FootnoteElements", - }, - }, - &litMatcher{ - pos: position{line: 1381, col: 71, offset: 44426}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, }, }, - }, - }, - }, - }, - { - name: "FootnoteElements", - pos: position{line: 1387, col: 1, offset: 44592}, - expr: &actionExpr{ - pos: position{line: 1387, col: 21, offset: 44612}, - run: (*parser).callonFootnoteElements1, - expr: &labeledExpr{ - pos: position{line: 1387, col: 21, offset: 44612}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 1387, col: 30, offset: 44621}, - expr: &ruleRefExpr{ - pos: position{line: 1387, col: 31, offset: 44622}, - name: "FootnoteElement", + &zeroOrMoreExpr{ + pos: position{line: 810, col: 8, offset: 26324}, + expr: &ruleRefExpr{ + pos: position{line: 810, col: 8, offset: 26324}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 810, col: 15, offset: 26331}, + name: "EOL", }, }, }, }, }, { - name: "FootnoteElement", - pos: position{line: 1391, col: 1, offset: 44714}, + name: "DelimitedBlockRawLine", + pos: position{line: 814, col: 1, offset: 26440}, expr: &actionExpr{ - pos: position{line: 1392, col: 5, offset: 44738}, - run: (*parser).callonFootnoteElement1, + pos: position{line: 815, col: 5, offset: 26470}, + run: (*parser).callonDelimitedBlockRawLine1, expr: &seqExpr{ - pos: position{line: 1392, col: 5, offset: 44738}, + pos: position{line: 815, col: 5, offset: 26470}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1392, col: 5, offset: 44738}, - expr: &litMatcher{ - pos: position{line: 1392, col: 6, offset: 44739}, - val: "]", - ignoreCase: false, - want: "\"]\"", + pos: position{line: 815, col: 5, offset: 26470}, + expr: &ruleRefExpr{ + pos: position{line: 815, col: 6, offset: 26471}, + name: "EOF", }, }, &labeledExpr{ - pos: position{line: 1393, col: 5, offset: 44748}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1394, col: 9, offset: 44766}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1394, col: 9, offset: 44766}, - name: "InlineElement", - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonFootnoteElement8, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + pos: position{line: 816, col: 5, offset: 26543}, + label: "content", + expr: &actionExpr{ + pos: position{line: 816, col: 14, offset: 26552}, + run: (*parser).callonDelimitedBlockRawLine6, + expr: &zeroOrMoreExpr{ + pos: position{line: 816, col: 14, offset: 26552}, + expr: &charClassMatcher{ + pos: position{line: 816, col: 14, offset: 26552}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 818, col: 8, offset: 26633}, + name: "EOL", + }, }, }, }, }, { - name: "PassthroughMacro", - pos: position{line: 1427, col: 1, offset: 46390}, - expr: &choiceExpr{ - pos: position{line: 1427, col: 21, offset: 46410}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1427, col: 21, offset: 46410}, - run: (*parser).callonPassthroughMacro2, - expr: &seqExpr{ - pos: position{line: 1427, col: 21, offset: 46410}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1427, col: 21, offset: 46410}, - val: "pass:[", - ignoreCase: false, - want: "\"pass:[\"", - }, - &labeledExpr{ - pos: position{line: 1427, col: 30, offset: 46419}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1427, col: 38, offset: 46427}, - expr: &actionExpr{ - pos: position{line: 1433, col: 30, offset: 46753}, - run: (*parser).callonPassthroughMacro7, - expr: &charClassMatcher{ - pos: position{line: 1433, col: 30, offset: 46753}, - val: "[^]]", - chars: []rune{']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1427, col: 67, offset: 46456}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, + name: "CommentBlock", + pos: position{line: 825, col: 1, offset: 26755}, + expr: &actionExpr{ + pos: position{line: 826, col: 5, offset: 26775}, + run: (*parser).callonCommentBlock1, + expr: &seqExpr{ + pos: position{line: 826, col: 5, offset: 26775}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 826, col: 5, offset: 26775}, + name: "CommentBlockStartDelimiter", + }, + &labeledExpr{ + pos: position{line: 827, col: 5, offset: 26806}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 827, col: 14, offset: 26815}, + name: "CommentBlockContent", }, }, - }, - &actionExpr{ - pos: position{line: 1429, col: 9, offset: 46560}, - run: (*parser).callonPassthroughMacro10, - expr: &seqExpr{ - pos: position{line: 1429, col: 9, offset: 46560}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1429, col: 9, offset: 46560}, - val: "pass:q[", - ignoreCase: false, - want: "\"pass:q[\"", - }, - &labeledExpr{ - pos: position{line: 1429, col: 19, offset: 46570}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1429, col: 27, offset: 46578}, - expr: &choiceExpr{ - pos: position{line: 1429, col: 28, offset: 46579}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1429, col: 28, offset: 46579}, - name: "QuotedText", - }, - &actionExpr{ - pos: position{line: 1433, col: 30, offset: 46753}, - run: (*parser).callonPassthroughMacro17, - expr: &charClassMatcher{ - pos: position{line: 1433, col: 30, offset: 46753}, - val: "[^]]", - chars: []rune{']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1429, col: 69, offset: 46620}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, + &zeroOrOneExpr{ + pos: position{line: 828, col: 5, offset: 26840}, + expr: &ruleRefExpr{ + pos: position{line: 828, col: 5, offset: 26840}, + name: "CommentBlockEndDelimiter", }, }, }, @@ -24308,2635 +4406,98 @@ var g = &grammar{ }, }, { - name: "Link", - pos: position{line: 1440, col: 1, offset: 47009}, + name: "CommentBlockStartDelimiter", + pos: position{line: 832, col: 1, offset: 26954}, + expr: &ruleRefExpr{ + pos: position{line: 832, col: 31, offset: 26984}, + name: "CommentBlockDelimiter", + }, + }, + { + name: "CommentBlockEndDelimiter", + pos: position{line: 834, col: 1, offset: 27007}, expr: &choiceExpr{ - pos: position{line: 1440, col: 9, offset: 47017}, + pos: position{line: 834, col: 29, offset: 27035}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1443, col: 5, offset: 47071}, - run: (*parser).callonLink2, - expr: &seqExpr{ - pos: position{line: 1443, col: 5, offset: 47071}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1443, col: 5, offset: 47071}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1444, col: 5, offset: 47080}, - label: "url", - expr: &actionExpr{ - pos: position{line: 3079, col: 23, offset: 99949}, - run: (*parser).callonLink6, - expr: &seqExpr{ - pos: position{line: 3079, col: 23, offset: 99949}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3079, col: 23, offset: 99949}, - expr: &litMatcher{ - pos: position{line: 3079, col: 24, offset: 99950}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3079, col: 28, offset: 99954}, - label: "scheme", - expr: &choiceExpr{ - pos: position{line: 3083, col: 11, offset: 100069}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3083, col: 11, offset: 100069}, - val: "http://", - ignoreCase: false, - want: "\"http://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 23, offset: 100081}, - val: "https://", - ignoreCase: false, - want: "\"https://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 36, offset: 100094}, - val: "ftp://", - ignoreCase: false, - want: "\"ftp://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 47, offset: 100105}, - val: "irc://", - ignoreCase: false, - want: "\"irc://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 58, offset: 100116}, - val: "mailto:", - ignoreCase: false, - want: "\"mailto:\"", - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 3079, col: 44, offset: 99970}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3079, col: 49, offset: 99975}, - expr: &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonLink19, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonLink26, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonLink30, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonLink37, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonLink39, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonLink41, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonLink44, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonLink48, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonLink55, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonLink60, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonLink62, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonLink66, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonLink70, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonLink77, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonLink82, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonLink84, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonLink88, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonLink92, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonLink98, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonLink102, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonLink108, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonLink110, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonLink113, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonLink115, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonLink119, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonLink123, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonLink129, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonLink134, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonLink138, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonLink144, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonLink148, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonLink154, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonLink157, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonLink161, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonLink165, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonLink167, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1445, col: 5, offset: 47147}, - label: "closingBracket", - expr: &zeroOrOneExpr{ - pos: position{line: 1445, col: 20, offset: 47162}, - expr: &litMatcher{ - pos: position{line: 1445, col: 21, offset: 47163}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1446, col: 5, offset: 47194}, - run: (*parser).callonLink172, - }, - }, - }, - }, &ruleRefExpr{ - pos: position{line: 1440, col: 19, offset: 47027}, - name: "RelativeLink", + pos: position{line: 834, col: 29, offset: 27035}, + name: "CommentBlockDelimiter", }, &ruleRefExpr{ - pos: position{line: 1440, col: 34, offset: 47042}, - name: "ExternalLink", + pos: position{line: 834, col: 53, offset: 27059}, + name: "EOF", }, }, }, }, { - name: "RelativeLink", - pos: position{line: 1454, col: 1, offset: 47409}, - expr: &choiceExpr{ - pos: position{line: 1456, col: 5, offset: 47445}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1456, col: 5, offset: 47445}, - run: (*parser).callonRelativeLink2, - expr: &seqExpr{ - pos: position{line: 1456, col: 5, offset: 47445}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1456, col: 5, offset: 47445}, - val: "\\link:", - ignoreCase: false, - want: "\"\\\\link:\"", - }, - &labeledExpr{ - pos: position{line: 1456, col: 17, offset: 47457}, - label: "url", - expr: &actionExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - run: (*parser).callonRelativeLink6, - expr: &seqExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - label: "scheme", - expr: &zeroOrOneExpr{ - pos: position{line: 3075, col: 20, offset: 99807}, - expr: &choiceExpr{ - pos: position{line: 3083, col: 11, offset: 100069}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3083, col: 11, offset: 100069}, - val: "http://", - ignoreCase: false, - want: "\"http://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 23, offset: 100081}, - val: "https://", - ignoreCase: false, - want: "\"https://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 36, offset: 100094}, - val: "ftp://", - ignoreCase: false, - want: "\"ftp://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 47, offset: 100105}, - val: "irc://", - ignoreCase: false, - want: "\"irc://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 58, offset: 100116}, - val: "mailto:", - ignoreCase: false, - want: "\"mailto:\"", - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 3075, col: 30, offset: 99817}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3075, col: 35, offset: 99822}, - expr: &choiceExpr{ - pos: position{line: 3075, col: 36, offset: 99823}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonRelativeLink19, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonRelativeLink26, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonRelativeLink30, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonRelativeLink37, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonRelativeLink39, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonRelativeLink41, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonRelativeLink44, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink48, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonRelativeLink55, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonRelativeLink60, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonRelativeLink62, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonRelativeLink66, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink70, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonRelativeLink77, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonRelativeLink82, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonRelativeLink84, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonRelativeLink88, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink92, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonRelativeLink98, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink102, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonRelativeLink108, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonRelativeLink110, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonRelativeLink113, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonRelativeLink115, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonRelativeLink119, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonRelativeLink123, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonRelativeLink129, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonRelativeLink134, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink138, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonRelativeLink144, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink148, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonRelativeLink154, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonRelativeLink157, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonRelativeLink161, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonRelativeLink165, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonRelativeLink167, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonRelativeLink169, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonRelativeLink173, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + name: "CommentBlockContent", + pos: position{line: 836, col: 1, offset: 27064}, + expr: &zeroOrMoreExpr{ + pos: position{line: 837, col: 5, offset: 27092}, + expr: &actionExpr{ + pos: position{line: 837, col: 6, offset: 27093}, + run: (*parser).callonCommentBlockContent2, + expr: &seqExpr{ + pos: position{line: 837, col: 6, offset: 27093}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 837, col: 6, offset: 27093}, + expr: &ruleRefExpr{ + pos: position{line: 837, col: 7, offset: 27094}, + name: "CommentBlockEndDelimiter", }, - &labeledExpr{ - pos: position{line: 1456, col: 32, offset: 47472}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 1456, col: 44, offset: 47484}, - name: "InlineAttributes", - }, + }, + &labeledExpr{ + pos: position{line: 838, col: 5, offset: 27123}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 838, col: 10, offset: 27128}, + name: "DelimitedBlockRawLine", }, }, }, }, - &actionExpr{ - pos: position{line: 1461, col: 5, offset: 47616}, - run: (*parser).callonRelativeLink179, - expr: &seqExpr{ - pos: position{line: 1461, col: 5, offset: 47616}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1461, col: 5, offset: 47616}, - val: "link:", - ignoreCase: false, - want: "\"link:\"", - }, - &labeledExpr{ - pos: position{line: 1461, col: 13, offset: 47624}, - label: "url", - expr: &actionExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - run: (*parser).callonRelativeLink183, - expr: &seqExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 3075, col: 13, offset: 99800}, - label: "scheme", - expr: &zeroOrOneExpr{ - pos: position{line: 3075, col: 20, offset: 99807}, - expr: &choiceExpr{ - pos: position{line: 3083, col: 11, offset: 100069}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3083, col: 11, offset: 100069}, - val: "http://", - ignoreCase: false, - want: "\"http://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 23, offset: 100081}, - val: "https://", - ignoreCase: false, - want: "\"https://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 36, offset: 100094}, - val: "ftp://", - ignoreCase: false, - want: "\"ftp://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 47, offset: 100105}, - val: "irc://", - ignoreCase: false, - want: "\"irc://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 58, offset: 100116}, - val: "mailto:", - ignoreCase: false, - want: "\"mailto:\"", - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 3075, col: 30, offset: 99817}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3075, col: 35, offset: 99822}, - expr: &choiceExpr{ - pos: position{line: 3075, col: 36, offset: 99823}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonRelativeLink196, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonRelativeLink203, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonRelativeLink207, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonRelativeLink214, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonRelativeLink216, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonRelativeLink218, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonRelativeLink221, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink225, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonRelativeLink232, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonRelativeLink237, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonRelativeLink239, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonRelativeLink243, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink247, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonRelativeLink254, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonRelativeLink259, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonRelativeLink261, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonRelativeLink265, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink269, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonRelativeLink275, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink279, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonRelativeLink285, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonRelativeLink287, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonRelativeLink290, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonRelativeLink292, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonRelativeLink296, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonRelativeLink300, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonRelativeLink306, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonRelativeLink311, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink315, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonRelativeLink321, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonRelativeLink325, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonRelativeLink331, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonRelativeLink334, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonRelativeLink338, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonRelativeLink342, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonRelativeLink344, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonRelativeLink346, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonRelativeLink350, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1461, col: 28, offset: 47639}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 1461, col: 40, offset: 47651}, - name: "InlineAttributes", - }, + }, + }, + }, + { + name: "ExampleBlock", + pos: position{line: 845, col: 1, offset: 27256}, + expr: &actionExpr{ + pos: position{line: 846, col: 5, offset: 27276}, + run: (*parser).callonExampleBlock1, + expr: &seqExpr{ + pos: position{line: 846, col: 5, offset: 27276}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 846, col: 5, offset: 27276}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 846, col: 12, offset: 27283}, + name: "ExampleBlockStartDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 847, col: 5, offset: 27315}, + run: (*parser).callonExampleBlock5, + }, + &labeledExpr{ + pos: position{line: 850, col: 5, offset: 27407}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 850, col: 14, offset: 27416}, + name: "ExampleBlockContent", + }, + }, + &labeledExpr{ + pos: position{line: 851, col: 5, offset: 27441}, + label: "end", + expr: &zeroOrOneExpr{ + pos: position{line: 851, col: 9, offset: 27445}, + expr: &ruleRefExpr{ + pos: position{line: 851, col: 10, offset: 27446}, + name: "ExampleBlockEndDelimiter", }, }, }, @@ -26945,1691 +4506,67 @@ var g = &grammar{ }, }, { - name: "ExternalLink", - pos: position{line: 1465, col: 1, offset: 47767}, + name: "ExampleBlockStartDelimiter", + pos: position{line: 855, col: 1, offset: 27561}, + expr: &ruleRefExpr{ + pos: position{line: 855, col: 31, offset: 27591}, + name: "ExampleBlockDelimiter", + }, + }, + { + name: "ExampleBlockEndDelimiter", + pos: position{line: 857, col: 1, offset: 27614}, expr: &choiceExpr{ - pos: position{line: 1467, col: 5, offset: 47803}, + pos: position{line: 858, col: 5, offset: 27647}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1467, col: 5, offset: 47803}, - run: (*parser).callonExternalLink2, - expr: &seqExpr{ - pos: position{line: 1467, col: 5, offset: 47803}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1467, col: 5, offset: 47803}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &labeledExpr{ - pos: position{line: 1467, col: 9, offset: 47807}, - label: "url", - expr: &actionExpr{ - pos: position{line: 3079, col: 23, offset: 99949}, - run: (*parser).callonExternalLink6, - expr: &seqExpr{ - pos: position{line: 3079, col: 23, offset: 99949}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3079, col: 23, offset: 99949}, - expr: &litMatcher{ - pos: position{line: 3079, col: 24, offset: 99950}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3079, col: 28, offset: 99954}, - label: "scheme", - expr: &choiceExpr{ - pos: position{line: 3083, col: 11, offset: 100069}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3083, col: 11, offset: 100069}, - val: "http://", - ignoreCase: false, - want: "\"http://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 23, offset: 100081}, - val: "https://", - ignoreCase: false, - want: "\"https://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 36, offset: 100094}, - val: "ftp://", - ignoreCase: false, - want: "\"ftp://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 47, offset: 100105}, - val: "irc://", - ignoreCase: false, - want: "\"irc://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 58, offset: 100116}, - val: "mailto:", - ignoreCase: false, - want: "\"mailto:\"", - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 3079, col: 44, offset: 99970}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3079, col: 49, offset: 99975}, - expr: &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonExternalLink19, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonExternalLink26, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonExternalLink30, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExternalLink37, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonExternalLink39, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonExternalLink41, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonExternalLink44, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink48, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonExternalLink55, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonExternalLink60, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonExternalLink62, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonExternalLink66, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink70, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonExternalLink77, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonExternalLink82, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonExternalLink84, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonExternalLink88, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink92, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonExternalLink98, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink102, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonExternalLink108, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonExternalLink110, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonExternalLink113, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonExternalLink115, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonExternalLink119, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExternalLink123, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonExternalLink129, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonExternalLink134, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink138, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonExternalLink144, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink148, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonExternalLink154, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonExternalLink157, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonExternalLink161, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonExternalLink165, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonExternalLink167, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1467, col: 34, offset: 47832}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 1467, col: 45, offset: 47843}, - expr: &ruleRefExpr{ - pos: position{line: 1467, col: 46, offset: 47844}, - name: "InlineAttributes", - }, - }, + &seqExpr{ + pos: position{line: 858, col: 5, offset: 27647}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 858, col: 5, offset: 27647}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 858, col: 9, offset: 27651}, + name: "ExampleBlockDelimiter", }, }, + &andCodeExpr{ + pos: position{line: 859, col: 5, offset: 27678}, + run: (*parser).callonExampleBlockEndDelimiter5, + }, }, }, - &actionExpr{ - pos: position{line: 1472, col: 5, offset: 47977}, - run: (*parser).callonExternalLink172, - expr: &seqExpr{ - pos: position{line: 1472, col: 5, offset: 47977}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1472, col: 5, offset: 47977}, - label: "url", - expr: &actionExpr{ - pos: position{line: 3079, col: 23, offset: 99949}, - run: (*parser).callonExternalLink175, - expr: &seqExpr{ - pos: position{line: 3079, col: 23, offset: 99949}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3079, col: 23, offset: 99949}, - expr: &litMatcher{ - pos: position{line: 3079, col: 24, offset: 99950}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3079, col: 28, offset: 99954}, - label: "scheme", - expr: &choiceExpr{ - pos: position{line: 3083, col: 11, offset: 100069}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3083, col: 11, offset: 100069}, - val: "http://", - ignoreCase: false, - want: "\"http://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 23, offset: 100081}, - val: "https://", - ignoreCase: false, - want: "\"https://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 36, offset: 100094}, - val: "ftp://", - ignoreCase: false, - want: "\"ftp://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 47, offset: 100105}, - val: "irc://", - ignoreCase: false, - want: "\"irc://\"", - }, - &litMatcher{ - pos: position{line: 3083, col: 58, offset: 100116}, - val: "mailto:", - ignoreCase: false, - want: "\"mailto:\"", - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 3079, col: 44, offset: 99970}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3079, col: 49, offset: 99975}, - expr: &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonExternalLink188, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonExternalLink195, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonExternalLink199, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExternalLink206, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonExternalLink208, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonExternalLink210, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonExternalLink213, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink217, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonExternalLink224, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonExternalLink229, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonExternalLink231, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonExternalLink235, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink239, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonExternalLink246, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonExternalLink251, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonExternalLink253, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonExternalLink257, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink261, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonExternalLink267, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink271, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonExternalLink277, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonExternalLink279, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonExternalLink282, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonExternalLink284, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonExternalLink288, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExternalLink292, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonExternalLink298, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonExternalLink303, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink307, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonExternalLink313, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonExternalLink317, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonExternalLink323, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonExternalLink326, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonExternalLink330, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonExternalLink334, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonExternalLink336, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 862, col: 7, offset: 27772}, + name: "EOF", + }, + }, + }, + }, + { + name: "ExampleBlockContent", + pos: position{line: 864, col: 1, offset: 27777}, + expr: &zeroOrMoreExpr{ + pos: position{line: 865, col: 4, offset: 27804}, + expr: &actionExpr{ + pos: position{line: 865, col: 5, offset: 27805}, + run: (*parser).callonExampleBlockContent2, + expr: &seqExpr{ + pos: position{line: 865, col: 5, offset: 27805}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 865, col: 5, offset: 27805}, + expr: &ruleRefExpr{ + pos: position{line: 865, col: 6, offset: 27806}, + name: "ExampleBlockEndDelimiter", }, - &labeledExpr{ - pos: position{line: 1472, col: 30, offset: 48002}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 1472, col: 41, offset: 48013}, - expr: &ruleRefExpr{ - pos: position{line: 1472, col: 42, offset: 48014}, - name: "InlineAttributes", - }, - }, + }, + &labeledExpr{ + pos: position{line: 866, col: 5, offset: 27835}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 866, col: 11, offset: 27841}, + name: "DelimitedBlockRawLine", }, }, }, @@ -28638,2641 +4575,43 @@ var g = &grammar{ }, }, { - name: "ListElements", - pos: position{line: 1480, col: 1, offset: 48368}, + name: "FencedBlock", + pos: position{line: 873, col: 1, offset: 27969}, expr: &actionExpr{ - pos: position{line: 1481, col: 5, offset: 48389}, - run: (*parser).callonListElements1, + pos: position{line: 874, col: 5, offset: 27988}, + run: (*parser).callonFencedBlock1, expr: &seqExpr{ - pos: position{line: 1481, col: 5, offset: 48389}, + pos: position{line: 874, col: 5, offset: 27988}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1481, col: 5, offset: 48389}, - label: "firstElement", - expr: &choiceExpr{ - pos: position{line: 1487, col: 5, offset: 48591}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - run: (*parser).callonListElements5, - expr: &seqExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonListElements8, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements11, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonListElements15, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonListElements18, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonListElements21, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonListElements22, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonListElements27, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonListElements31, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonListElements35, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonListElements40, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements45, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1635, col: 5, offset: 53437}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonListElements49, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonListElements52, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements56, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - run: (*parser).callonListElements63, - expr: &seqExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonListElements66, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements69, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonListElements73, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonListElements76, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonListElements79, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonListElements81, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements83, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1685, col: 5, offset: 55336}, - label: "checkstyle", - expr: &zeroOrOneExpr{ - pos: position{line: 1685, col: 16, offset: 55347}, - expr: &actionExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - run: (*parser).callonListElements88, - expr: &seqExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - expr: &litMatcher{ - pos: position{line: 1721, col: 6, offset: 56625}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 1721, col: 10, offset: 56629}, - label: "style", - expr: &choiceExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - run: (*parser).callonListElements94, - expr: &litMatcher{ - pos: position{line: 1722, col: 7, offset: 56643}, - val: "[ ]", - ignoreCase: false, - want: "\"[ ]\"", - }, - }, - &actionExpr{ - pos: position{line: 1723, col: 7, offset: 56688}, - run: (*parser).callonListElements96, - expr: &litMatcher{ - pos: position{line: 1723, col: 7, offset: 56688}, - val: "[*]", - ignoreCase: false, - want: "\"[*]\"", - }, - }, - &actionExpr{ - pos: position{line: 1724, col: 7, offset: 56731}, - run: (*parser).callonListElements98, - expr: &litMatcher{ - pos: position{line: 1724, col: 7, offset: 56731}, - val: "[x]", - ignoreCase: false, - want: "\"[x]\"", - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements100, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1686, col: 5, offset: 55386}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonListElements104, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonListElements107, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements111, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - run: (*parser).callonListElements118, - expr: &seqExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonListElements121, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonListElements125, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements129, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1792, col: 5, offset: 58640}, - label: "description", - expr: &actionExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - run: (*parser).callonListElements133, - expr: &seqExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - run: (*parser).callonListElements136, - expr: &oneOrMoreExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - expr: &charClassMatcher{ - pos: position{line: 1802, col: 14, offset: 58997}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements140, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - run: (*parser).callonListElements147, - expr: &seqExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - label: "term", - expr: &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonListElements150, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElements154, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElements157, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElements160, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements163, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1734, col: 5, offset: 56959}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElements172, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElements175, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElements178, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1735, col: 5, offset: 57004}, - label: "description", - expr: &choiceExpr{ - pos: position{line: 1757, col: 5, offset: 57653}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - run: (*parser).callonListElements181, - expr: &seqExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements184, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements187, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1760, col: 9, offset: 57738}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElements195, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements201, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements204, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1761, col: 9, offset: 57758}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1761, col: 17, offset: 57766}, - expr: &choiceExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - run: (*parser).callonListElements214, - expr: &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonListElements215, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonListElements221, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements225, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - run: (*parser).callonListElements232, - expr: &seqExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1559, col: 9, offset: 51153}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElements235, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements241, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements244, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1560, col: 9, offset: 51172}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements255, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements257, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1561, col: 9, offset: 51211}, - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonListElements263, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements266, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonListElements270, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonListElements273, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonListElements276, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonListElements277, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonListElements282, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonListElements286, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonListElements290, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonListElements295, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements300, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1562, col: 9, offset: 51245}, - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonListElements304, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements307, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonListElements311, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonListElements314, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonListElements317, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonListElements319, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements321, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1563, col: 9, offset: 51281}, - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonListElements325, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonListElements329, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements333, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1564, col: 9, offset: 51315}, - expr: &seqExpr{ - pos: position{line: 1564, col: 11, offset: 51317}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonListElements338, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElements342, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElements345, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElements348, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements351, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElements359, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElements362, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElements365, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1565, col: 9, offset: 51377}, - expr: &actionExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - run: (*parser).callonListElements367, - expr: &seqExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 736, col: 5, offset: 23847}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 737, col: 5, offset: 23877}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 738, col: 9, offset: 23897}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonListElements373, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonListElements376, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements382, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements385, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonListElements392, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonListElements395, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements401, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements404, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonListElements411, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonListElements415, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements419, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements422, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonListElements429, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonListElements432, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements438, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements441, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonListElements448, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonListElements451, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements457, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements460, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonListElements467, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonListElements470, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements476, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements479, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonListElements486, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonListElements489, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements495, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements498, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonListElements505, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonListElements508, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements514, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements517, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonListElements524, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonListElements527, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElements533, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements536, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1566, col: 9, offset: 51401}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - run: (*parser).callonListElements544, - expr: &oneOrMoreExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - expr: &charClassMatcher{ - pos: position{line: 1566, col: 18, offset: 51410}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements548, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - run: (*parser).callonListElements555, - expr: &seqExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElements557, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1770, col: 9, offset: 58053}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - run: (*parser).callonListElements561, - expr: &oneOrMoreExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - expr: &charClassMatcher{ - pos: position{line: 1770, col: 18, offset: 58062}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElements565, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 874, col: 5, offset: 27988}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 874, col: 12, offset: 27995}, + name: "FencedBlockStartDelimiter", }, }, + &andCodeExpr{ + pos: position{line: 875, col: 5, offset: 28026}, + run: (*parser).callonFencedBlock5, + }, &labeledExpr{ - pos: position{line: 1482, col: 5, offset: 48420}, - label: "extraElements", + pos: position{line: 878, col: 5, offset: 28118}, + label: "content", expr: &ruleRefExpr{ - pos: position{line: 1482, col: 20, offset: 48435}, - name: "ExtraListElements", + pos: position{line: 878, col: 14, offset: 28127}, + name: "FencedBlockContent", + }, + }, + &labeledExpr{ + pos: position{line: 879, col: 5, offset: 28151}, + label: "end", + expr: &zeroOrOneExpr{ + pos: position{line: 879, col: 9, offset: 28155}, + expr: &ruleRefExpr{ + pos: position{line: 879, col: 10, offset: 28156}, + name: "FencedBlockEndDelimiter", + }, }, }, }, @@ -31280,7746 +4619,433 @@ var g = &grammar{ }, }, { - name: "ExtraListElements", - pos: position{line: 1492, col: 1, offset: 48690}, - expr: &actionExpr{ - pos: position{line: 1492, col: 22, offset: 48711}, - run: (*parser).callonExtraListElements1, - expr: &labeledExpr{ - pos: position{line: 1492, col: 22, offset: 48711}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 1492, col: 31, offset: 48720}, - expr: &ruleRefExpr{ - pos: position{line: 1492, col: 32, offset: 48721}, - name: "ExtraListElement", - }, - }, - }, + name: "FencedBlockStartDelimiter", + pos: position{line: 883, col: 1, offset: 28269}, + expr: &ruleRefExpr{ + pos: position{line: 883, col: 30, offset: 28298}, + name: "FencedBlockDelimiter", }, }, { - name: "ExtraListElement", - pos: position{line: 1496, col: 1, offset: 48801}, + name: "FencedBlockEndDelimiter", + pos: position{line: 885, col: 1, offset: 28320}, + expr: &choiceExpr{ + pos: position{line: 886, col: 5, offset: 28352}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 886, col: 5, offset: 28352}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 886, col: 5, offset: 28352}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 886, col: 9, offset: 28356}, + name: "FencedBlockDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 887, col: 5, offset: 28382}, + run: (*parser).callonFencedBlockEndDelimiter5, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 890, col: 7, offset: 28476}, + name: "EOF", + }, + }, + }, + }, + { + name: "FencedBlockContent", + pos: position{line: 892, col: 1, offset: 28481}, + expr: &zeroOrMoreExpr{ + pos: position{line: 893, col: 5, offset: 28508}, + expr: &actionExpr{ + pos: position{line: 893, col: 6, offset: 28509}, + run: (*parser).callonFencedBlockContent2, + expr: &seqExpr{ + pos: position{line: 893, col: 6, offset: 28509}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 893, col: 6, offset: 28509}, + expr: &ruleRefExpr{ + pos: position{line: 893, col: 7, offset: 28510}, + name: "FencedBlockEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 894, col: 5, offset: 28538}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 894, col: 11, offset: 28544}, + name: "DelimitedBlockRawLine", + }, + }, + }, + }, + }, + }, + }, + { + name: "ListingBlock", + pos: position{line: 901, col: 1, offset: 28673}, expr: &actionExpr{ - pos: position{line: 1497, col: 5, offset: 48940}, - run: (*parser).callonExtraListElement1, + pos: position{line: 902, col: 5, offset: 28693}, + run: (*parser).callonListingBlock1, expr: &seqExpr{ - pos: position{line: 1497, col: 5, offset: 48940}, + pos: position{line: 902, col: 5, offset: 28693}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1497, col: 5, offset: 48940}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &labeledExpr{ + pos: position{line: 902, col: 5, offset: 28693}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 902, col: 12, offset: 28700}, + name: "ListingBlockStartDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 903, col: 5, offset: 28732}, + run: (*parser).callonListingBlock5, + }, + &labeledExpr{ + pos: position{line: 906, col: 5, offset: 28824}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 906, col: 14, offset: 28833}, + name: "ListingBlockContent", + }, + }, + &labeledExpr{ + pos: position{line: 907, col: 5, offset: 28858}, + label: "end", + expr: &zeroOrOneExpr{ + pos: position{line: 907, col: 9, offset: 28862}, + expr: &ruleRefExpr{ + pos: position{line: 907, col: 10, offset: 28863}, + name: "ListingBlockEndDelimiter", + }, + }, + }, + }, + }, + }, + }, + { + name: "ListingBlockStartDelimiter", + pos: position{line: 911, col: 1, offset: 28978}, + expr: &ruleRefExpr{ + pos: position{line: 911, col: 31, offset: 29008}, + name: "ListingBlockDelimiter", + }, + }, + { + name: "ListingBlockEndDelimiter", + pos: position{line: 913, col: 1, offset: 29031}, + expr: &choiceExpr{ + pos: position{line: 914, col: 5, offset: 29064}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 914, col: 5, offset: 29064}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 914, col: 5, offset: 29064}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 914, col: 9, offset: 29068}, + name: "ListingBlockDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 915, col: 5, offset: 29095}, + run: (*parser).callonListingBlockEndDelimiter5, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 918, col: 7, offset: 29189}, + name: "EOF", + }, + }, + }, + }, + { + name: "ListingBlockContent", + pos: position{line: 920, col: 1, offset: 29194}, + expr: &zeroOrMoreExpr{ + pos: position{line: 921, col: 5, offset: 29222}, + expr: &actionExpr{ + pos: position{line: 921, col: 6, offset: 29223}, + run: (*parser).callonListingBlockContent2, + expr: &seqExpr{ + pos: position{line: 921, col: 6, offset: 29223}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 921, col: 6, offset: 29223}, + expr: &ruleRefExpr{ + pos: position{line: 921, col: 7, offset: 29224}, + name: "ListingBlockEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 922, col: 5, offset: 29253}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 922, col: 11, offset: 29259}, + name: "DelimitedBlockRawLine", }, }, }, + }, + }, + }, + }, + { + name: "LiteralBlock", + pos: position{line: 929, col: 1, offset: 29388}, + expr: &actionExpr{ + pos: position{line: 930, col: 5, offset: 29408}, + run: (*parser).callonLiteralBlock1, + expr: &seqExpr{ + pos: position{line: 930, col: 5, offset: 29408}, + exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1498, col: 5, offset: 48950}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1499, col: 9, offset: 48968}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1499, col: 13, offset: 48972}, - run: (*parser).callonExtraListElement8, - expr: &seqExpr{ - pos: position{line: 1499, col: 13, offset: 48972}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1499, col: 13, offset: 48972}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement11, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement17, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement20, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1500, col: 13, offset: 48996}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - run: (*parser).callonExtraListElement28, - expr: &seqExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonExtraListElement31, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement34, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonExtraListElement38, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonExtraListElement41, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonExtraListElement44, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonExtraListElement45, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonExtraListElement50, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonExtraListElement54, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonExtraListElement58, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonExtraListElement63, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement68, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1635, col: 5, offset: 53437}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonExtraListElement72, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonExtraListElement75, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement79, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1503, col: 13, offset: 49088}, - run: (*parser).callonExtraListElement86, - expr: &seqExpr{ - pos: position{line: 1503, col: 13, offset: 49088}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1503, col: 13, offset: 49088}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 1503, col: 24, offset: 49099}, - expr: &ruleRefExpr{ - pos: position{line: 1503, col: 25, offset: 49100}, - name: "BlockAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 1504, col: 13, offset: 49131}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - run: (*parser).callonExtraListElement92, - expr: &seqExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonExtraListElement95, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement98, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonExtraListElement102, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonExtraListElement105, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonExtraListElement108, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonExtraListElement109, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonExtraListElement114, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonExtraListElement118, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonExtraListElement122, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonExtraListElement127, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement132, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1635, col: 5, offset: 53437}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonExtraListElement136, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonExtraListElement139, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement143, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1507, col: 13, offset: 49259}, - run: (*parser).callonExtraListElement150, - expr: &seqExpr{ - pos: position{line: 1507, col: 13, offset: 49259}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1507, col: 13, offset: 49259}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement153, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement159, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement162, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1508, col: 13, offset: 49283}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - run: (*parser).callonExtraListElement170, - expr: &seqExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonExtraListElement173, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement176, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonExtraListElement180, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonExtraListElement183, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonExtraListElement186, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonExtraListElement188, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement190, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1685, col: 5, offset: 55336}, - label: "checkstyle", - expr: &zeroOrOneExpr{ - pos: position{line: 1685, col: 16, offset: 55347}, - expr: &actionExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - run: (*parser).callonExtraListElement195, - expr: &seqExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - expr: &litMatcher{ - pos: position{line: 1721, col: 6, offset: 56625}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 1721, col: 10, offset: 56629}, - label: "style", - expr: &choiceExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - run: (*parser).callonExtraListElement201, - expr: &litMatcher{ - pos: position{line: 1722, col: 7, offset: 56643}, - val: "[ ]", - ignoreCase: false, - want: "\"[ ]\"", - }, - }, - &actionExpr{ - pos: position{line: 1723, col: 7, offset: 56688}, - run: (*parser).callonExtraListElement203, - expr: &litMatcher{ - pos: position{line: 1723, col: 7, offset: 56688}, - val: "[*]", - ignoreCase: false, - want: "\"[*]\"", - }, - }, - &actionExpr{ - pos: position{line: 1724, col: 7, offset: 56731}, - run: (*parser).callonExtraListElement205, - expr: &litMatcher{ - pos: position{line: 1724, col: 7, offset: 56731}, - val: "[x]", - ignoreCase: false, - want: "\"[x]\"", - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement207, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1686, col: 5, offset: 55386}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonExtraListElement211, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonExtraListElement214, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement218, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1511, col: 13, offset: 49377}, - run: (*parser).callonExtraListElement225, - expr: &seqExpr{ - pos: position{line: 1511, col: 13, offset: 49377}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1511, col: 13, offset: 49377}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 1511, col: 24, offset: 49388}, - expr: &ruleRefExpr{ - pos: position{line: 1511, col: 25, offset: 49389}, - name: "BlockAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 1512, col: 13, offset: 49420}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - run: (*parser).callonExtraListElement231, - expr: &seqExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonExtraListElement234, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement237, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonExtraListElement241, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonExtraListElement244, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonExtraListElement247, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonExtraListElement249, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement251, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1685, col: 5, offset: 55336}, - label: "checkstyle", - expr: &zeroOrOneExpr{ - pos: position{line: 1685, col: 16, offset: 55347}, - expr: &actionExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - run: (*parser).callonExtraListElement256, - expr: &seqExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - expr: &litMatcher{ - pos: position{line: 1721, col: 6, offset: 56625}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 1721, col: 10, offset: 56629}, - label: "style", - expr: &choiceExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - run: (*parser).callonExtraListElement262, - expr: &litMatcher{ - pos: position{line: 1722, col: 7, offset: 56643}, - val: "[ ]", - ignoreCase: false, - want: "\"[ ]\"", - }, - }, - &actionExpr{ - pos: position{line: 1723, col: 7, offset: 56688}, - run: (*parser).callonExtraListElement264, - expr: &litMatcher{ - pos: position{line: 1723, col: 7, offset: 56688}, - val: "[*]", - ignoreCase: false, - want: "\"[*]\"", - }, - }, - &actionExpr{ - pos: position{line: 1724, col: 7, offset: 56731}, - run: (*parser).callonExtraListElement266, - expr: &litMatcher{ - pos: position{line: 1724, col: 7, offset: 56731}, - val: "[x]", - ignoreCase: false, - want: "\"[x]\"", - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement268, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1686, col: 5, offset: 55386}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonExtraListElement272, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonExtraListElement275, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement279, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1515, col: 13, offset: 49550}, - run: (*parser).callonExtraListElement286, - expr: &seqExpr{ - pos: position{line: 1515, col: 13, offset: 49550}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1515, col: 13, offset: 49550}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement289, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement295, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement298, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1516, col: 13, offset: 49574}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - run: (*parser).callonExtraListElement306, - expr: &seqExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonExtraListElement309, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonExtraListElement313, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement317, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1792, col: 5, offset: 58640}, - label: "description", - expr: &actionExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - run: (*parser).callonExtraListElement321, - expr: &seqExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - run: (*parser).callonExtraListElement324, - expr: &oneOrMoreExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - expr: &charClassMatcher{ - pos: position{line: 1802, col: 14, offset: 58997}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement328, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1519, col: 13, offset: 49666}, - run: (*parser).callonExtraListElement335, - expr: &seqExpr{ - pos: position{line: 1519, col: 13, offset: 49666}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1519, col: 13, offset: 49666}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 1519, col: 24, offset: 49677}, - expr: &ruleRefExpr{ - pos: position{line: 1519, col: 25, offset: 49678}, - name: "BlockAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 1520, col: 13, offset: 49709}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - run: (*parser).callonExtraListElement341, - expr: &seqExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonExtraListElement344, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonExtraListElement348, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement352, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1792, col: 5, offset: 58640}, - label: "description", - expr: &actionExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - run: (*parser).callonExtraListElement356, - expr: &seqExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - run: (*parser).callonExtraListElement359, - expr: &oneOrMoreExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - expr: &charClassMatcher{ - pos: position{line: 1802, col: 14, offset: 58997}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement363, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 1523, col: 11, offset: 49835}, - name: "ListElementContinuation", - }, - &actionExpr{ - pos: position{line: 1524, col: 13, offset: 49871}, - run: (*parser).callonExtraListElement371, - expr: &seqExpr{ - pos: position{line: 1524, col: 13, offset: 49871}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1524, col: 13, offset: 49871}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement374, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement380, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement383, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1525, col: 13, offset: 49895}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - run: (*parser).callonExtraListElement391, - expr: &seqExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - label: "term", - expr: &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonExtraListElement394, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement398, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement401, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement404, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement407, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1734, col: 5, offset: 56959}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement416, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement419, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement422, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1735, col: 5, offset: 57004}, - label: "description", - expr: &choiceExpr{ - pos: position{line: 1757, col: 5, offset: 57653}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - run: (*parser).callonExtraListElement425, - expr: &seqExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement428, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement431, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1760, col: 9, offset: 57738}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement439, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement445, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement448, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1761, col: 9, offset: 57758}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1761, col: 17, offset: 57766}, - expr: &choiceExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - run: (*parser).callonExtraListElement458, - expr: &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonExtraListElement459, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonExtraListElement465, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement469, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - run: (*parser).callonExtraListElement476, - expr: &seqExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1559, col: 9, offset: 51153}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement479, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement485, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement488, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1560, col: 9, offset: 51172}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement499, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement501, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1561, col: 9, offset: 51211}, - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonExtraListElement507, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement510, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonExtraListElement514, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonExtraListElement517, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonExtraListElement520, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonExtraListElement521, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonExtraListElement526, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonExtraListElement530, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonExtraListElement534, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonExtraListElement539, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement544, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1562, col: 9, offset: 51245}, - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonExtraListElement548, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement551, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonExtraListElement555, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonExtraListElement558, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonExtraListElement561, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonExtraListElement563, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement565, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1563, col: 9, offset: 51281}, - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonExtraListElement569, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonExtraListElement573, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement577, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1564, col: 9, offset: 51315}, - expr: &seqExpr{ - pos: position{line: 1564, col: 11, offset: 51317}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonExtraListElement582, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement586, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement589, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement592, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement595, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement603, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement606, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement609, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1565, col: 9, offset: 51377}, - expr: &actionExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - run: (*parser).callonExtraListElement611, - expr: &seqExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 736, col: 5, offset: 23847}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 737, col: 5, offset: 23877}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 738, col: 9, offset: 23897}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonExtraListElement617, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonExtraListElement620, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement626, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement629, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonExtraListElement636, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonExtraListElement639, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement645, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement648, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonExtraListElement655, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonExtraListElement659, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement663, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement666, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonExtraListElement673, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonExtraListElement676, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement682, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement685, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonExtraListElement692, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonExtraListElement695, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement701, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement704, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonExtraListElement711, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonExtraListElement714, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement720, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement723, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonExtraListElement730, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonExtraListElement733, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement739, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement742, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonExtraListElement749, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonExtraListElement752, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement758, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement761, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonExtraListElement768, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonExtraListElement771, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement777, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement780, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1566, col: 9, offset: 51401}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - run: (*parser).callonExtraListElement788, - expr: &oneOrMoreExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - expr: &charClassMatcher{ - pos: position{line: 1566, col: 18, offset: 51410}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement792, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - run: (*parser).callonExtraListElement799, - expr: &seqExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement801, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1770, col: 9, offset: 58053}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - run: (*parser).callonExtraListElement805, - expr: &oneOrMoreExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - expr: &charClassMatcher{ - pos: position{line: 1770, col: 18, offset: 58062}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement809, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1528, col: 13, offset: 49987}, - run: (*parser).callonExtraListElement816, - expr: &seqExpr{ - pos: position{line: 1528, col: 13, offset: 49987}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1528, col: 13, offset: 49987}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 1528, col: 24, offset: 49998}, - expr: &ruleRefExpr{ - pos: position{line: 1528, col: 25, offset: 49999}, - name: "BlockAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 1529, col: 13, offset: 50030}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - run: (*parser).callonExtraListElement822, - expr: &seqExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - label: "term", - expr: &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonExtraListElement825, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement829, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement832, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement835, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement838, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1734, col: 5, offset: 56959}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement847, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement850, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement853, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1735, col: 5, offset: 57004}, - label: "description", - expr: &choiceExpr{ - pos: position{line: 1757, col: 5, offset: 57653}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - run: (*parser).callonExtraListElement856, - expr: &seqExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement859, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement862, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1760, col: 9, offset: 57738}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement870, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement876, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement879, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1761, col: 9, offset: 57758}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1761, col: 17, offset: 57766}, - expr: &choiceExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - run: (*parser).callonExtraListElement889, - expr: &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonExtraListElement890, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonExtraListElement896, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement900, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - run: (*parser).callonExtraListElement907, - expr: &seqExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1559, col: 9, offset: 51153}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement910, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement916, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement919, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1560, col: 9, offset: 51172}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement930, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement932, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1561, col: 9, offset: 51211}, - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonExtraListElement938, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement941, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonExtraListElement945, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonExtraListElement948, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonExtraListElement951, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonExtraListElement952, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonExtraListElement957, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonExtraListElement961, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonExtraListElement965, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonExtraListElement970, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement975, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1562, col: 9, offset: 51245}, - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonExtraListElement979, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement982, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonExtraListElement986, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonExtraListElement989, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonExtraListElement992, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonExtraListElement994, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement996, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1563, col: 9, offset: 51281}, - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonExtraListElement1000, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonExtraListElement1004, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement1008, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1564, col: 9, offset: 51315}, - expr: &seqExpr{ - pos: position{line: 1564, col: 11, offset: 51317}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonExtraListElement1013, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement1017, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement1020, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement1023, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1026, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement1034, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement1037, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement1040, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1565, col: 9, offset: 51377}, - expr: &actionExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - run: (*parser).callonExtraListElement1042, - expr: &seqExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 736, col: 5, offset: 23847}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 737, col: 5, offset: 23877}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 738, col: 9, offset: 23897}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonExtraListElement1048, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonExtraListElement1051, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1057, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1060, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonExtraListElement1067, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonExtraListElement1070, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1076, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1079, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonExtraListElement1086, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonExtraListElement1090, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1094, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1097, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonExtraListElement1104, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonExtraListElement1107, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1113, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1116, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonExtraListElement1123, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonExtraListElement1126, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1132, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1135, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonExtraListElement1142, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonExtraListElement1145, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1151, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1154, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonExtraListElement1161, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonExtraListElement1164, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1170, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1173, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonExtraListElement1180, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonExtraListElement1183, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1189, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1192, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonExtraListElement1199, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonExtraListElement1202, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1208, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1211, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1566, col: 9, offset: 51401}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - run: (*parser).callonExtraListElement1219, - expr: &oneOrMoreExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - expr: &charClassMatcher{ - pos: position{line: 1566, col: 18, offset: 51410}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1223, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - run: (*parser).callonExtraListElement1230, - expr: &seqExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement1232, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1770, col: 9, offset: 58053}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - run: (*parser).callonExtraListElement1236, - expr: &oneOrMoreExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - expr: &charClassMatcher{ - pos: position{line: 1770, col: 18, offset: 58062}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1240, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonExtraListElement1247, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonExtraListElement1253, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1257, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1533, col: 13, offset: 50186}, - run: (*parser).callonExtraListElement1264, - expr: &seqExpr{ - pos: position{line: 1533, col: 13, offset: 50186}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1533, col: 13, offset: 50186}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement1267, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1273, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1276, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1534, col: 13, offset: 50209}, - label: "attributes", - expr: &zeroOrMoreExpr{ - pos: position{line: 1534, col: 24, offset: 50220}, - expr: &ruleRefExpr{ - pos: position{line: 1534, col: 25, offset: 50221}, - name: "BlockAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 1535, col: 13, offset: 50252}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - run: (*parser).callonExtraListElement1287, - expr: &seqExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - run: (*parser).callonExtraListElement1290, - expr: &seqExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1883, col: 14, offset: 61706}, - run: (*parser).callonExtraListElement1293, - expr: &seqExpr{ - pos: position{line: 1883, col: 14, offset: 61706}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement1295, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 1883, col: 21, offset: 61713}, - expr: &charClassMatcher{ - pos: position{line: 1883, col: 21, offset: 61713}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1886, col: 5, offset: 61770}, - run: (*parser).callonExtraListElement1300, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1302, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1877, col: 5, offset: 61453}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1877, col: 16, offset: 61464}, - expr: &choiceExpr{ - pos: position{line: 1877, col: 17, offset: 61465}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonExtraListElement1312, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonExtraListElement1318, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1322, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonExtraListElement1329, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonExtraListElement1332, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonExtraListElement1335, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1337, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1547, col: 13, offset: 50799}, - run: (*parser).callonExtraListElement1344, - expr: &labeledExpr{ - pos: position{line: 1547, col: 13, offset: 50799}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - run: (*parser).callonExtraListElement1347, - expr: &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonExtraListElement1348, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonExtraListElement1354, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1358, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - run: (*parser).callonExtraListElement1365, - expr: &seqExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1559, col: 9, offset: 51153}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonExtraListElement1368, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1374, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1377, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1560, col: 9, offset: 51172}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1388, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1390, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1561, col: 9, offset: 51211}, - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonExtraListElement1396, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1399, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonExtraListElement1403, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonExtraListElement1406, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonExtraListElement1409, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonExtraListElement1410, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonExtraListElement1415, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonExtraListElement1419, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonExtraListElement1423, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonExtraListElement1428, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement1433, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1562, col: 9, offset: 51245}, - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonExtraListElement1437, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1440, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonExtraListElement1444, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonExtraListElement1447, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonExtraListElement1450, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonExtraListElement1452, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement1454, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1563, col: 9, offset: 51281}, - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonExtraListElement1458, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonExtraListElement1462, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonExtraListElement1466, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1564, col: 9, offset: 51315}, - expr: &seqExpr{ - pos: position{line: 1564, col: 11, offset: 51317}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonExtraListElement1471, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement1475, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement1478, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement1481, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1484, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonExtraListElement1492, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonExtraListElement1495, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonExtraListElement1498, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1565, col: 9, offset: 51377}, - expr: &actionExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - run: (*parser).callonExtraListElement1500, - expr: &seqExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 736, col: 5, offset: 23847}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 737, col: 5, offset: 23877}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 738, col: 9, offset: 23897}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonExtraListElement1506, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonExtraListElement1509, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1515, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1518, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonExtraListElement1525, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonExtraListElement1528, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1534, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1537, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonExtraListElement1544, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonExtraListElement1548, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1552, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1555, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonExtraListElement1562, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonExtraListElement1565, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1571, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1574, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonExtraListElement1581, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonExtraListElement1584, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1590, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1593, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonExtraListElement1600, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonExtraListElement1603, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1609, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1612, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonExtraListElement1619, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonExtraListElement1622, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1628, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1631, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonExtraListElement1638, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonExtraListElement1641, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1647, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1650, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonExtraListElement1657, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonExtraListElement1660, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonExtraListElement1666, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1669, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1566, col: 9, offset: 51401}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - run: (*parser).callonExtraListElement1677, - expr: &oneOrMoreExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - expr: &charClassMatcher{ - pos: position{line: 1566, col: 18, offset: 51410}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonExtraListElement1681, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 930, col: 5, offset: 29408}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 930, col: 12, offset: 29415}, + name: "LiteralBlockStartDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 931, col: 5, offset: 29447}, + run: (*parser).callonLiteralBlock5, + }, + &labeledExpr{ + pos: position{line: 934, col: 5, offset: 29539}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 934, col: 14, offset: 29548}, + name: "LiteralBlockContent", + }, + }, + &labeledExpr{ + pos: position{line: 935, col: 5, offset: 29573}, + label: "end", + expr: &zeroOrOneExpr{ + pos: position{line: 935, col: 9, offset: 29577}, + expr: &ruleRefExpr{ + pos: position{line: 935, col: 10, offset: 29578}, + name: "LiteralBlockEndDelimiter", + }, + }, + }, + }, + }, + }, + }, + { + name: "LiteralBlockStartDelimiter", + pos: position{line: 939, col: 1, offset: 29693}, + expr: &ruleRefExpr{ + pos: position{line: 939, col: 31, offset: 29723}, + name: "LiteralBlockDelimiter", + }, + }, + { + name: "LiteralBlockEndDelimiter", + pos: position{line: 941, col: 1, offset: 29746}, + expr: &choiceExpr{ + pos: position{line: 942, col: 5, offset: 29779}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 942, col: 5, offset: 29779}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 942, col: 5, offset: 29779}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 942, col: 9, offset: 29783}, + name: "LiteralBlockDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 943, col: 5, offset: 29810}, + run: (*parser).callonLiteralBlockEndDelimiter5, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 946, col: 7, offset: 29904}, + name: "EOF", + }, + }, + }, + }, + { + name: "LiteralBlockContent", + pos: position{line: 948, col: 1, offset: 29909}, + expr: &zeroOrMoreExpr{ + pos: position{line: 949, col: 5, offset: 29937}, + expr: &actionExpr{ + pos: position{line: 949, col: 6, offset: 29938}, + run: (*parser).callonLiteralBlockContent2, + expr: &seqExpr{ + pos: position{line: 949, col: 6, offset: 29938}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 949, col: 6, offset: 29938}, + expr: &ruleRefExpr{ + pos: position{line: 949, col: 7, offset: 29939}, + name: "LiteralBlockEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 950, col: 5, offset: 29968}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 950, col: 11, offset: 29974}, + name: "DelimitedBlockRawLine", + }, + }, + }, + }, + }, + }, + }, + { + name: "MarkdownCodeBlock", + pos: position{line: 957, col: 1, offset: 30102}, + expr: &actionExpr{ + pos: position{line: 958, col: 5, offset: 30127}, + run: (*parser).callonMarkdownCodeBlock1, + expr: &seqExpr{ + pos: position{line: 958, col: 5, offset: 30127}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 958, col: 5, offset: 30127}, + label: "delimiter", + expr: &ruleRefExpr{ + pos: position{line: 958, col: 15, offset: 30137}, + name: "MarkdownCodeBlockStartDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 959, col: 5, offset: 30173}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 959, col: 14, offset: 30182}, + name: "MarkdownCodeBlockContent", + }, + }, + &zeroOrOneExpr{ + pos: position{line: 960, col: 5, offset: 30212}, + expr: &ruleRefExpr{ + pos: position{line: 960, col: 5, offset: 30212}, + name: "MarkdownCodeBlockEndDelimiter", + }, + }, + }, + }, + }, + }, + { + name: "MarkdownCodeBlockStartDelimiter", + pos: position{line: 967, col: 1, offset: 30503}, + expr: &ruleRefExpr{ + pos: position{line: 967, col: 36, offset: 30538}, + name: "MarkdownCodeDelimiter", + }, + }, + { + name: "MarkdownCodeBlockEndDelimiter", + pos: position{line: 969, col: 1, offset: 30561}, + expr: &seqExpr{ + pos: position{line: 969, col: 34, offset: 30594}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 969, col: 34, offset: 30594}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 969, col: 40, offset: 30600}, + expr: &ruleRefExpr{ + pos: position{line: 969, col: 40, offset: 30600}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 969, col: 47, offset: 30607}, + name: "EOL", + }, + }, + }, + }, + { + name: "MarkdownCodeBlockContent", + pos: position{line: 971, col: 1, offset: 30613}, + expr: &zeroOrMoreExpr{ + pos: position{line: 972, col: 5, offset: 30646}, + expr: &actionExpr{ + pos: position{line: 972, col: 6, offset: 30647}, + run: (*parser).callonMarkdownCodeBlockContent2, + expr: &seqExpr{ + pos: position{line: 972, col: 6, offset: 30647}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 972, col: 6, offset: 30647}, + expr: &ruleRefExpr{ + pos: position{line: 972, col: 7, offset: 30648}, + name: "MarkdownCodeBlockEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 973, col: 5, offset: 30682}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 973, col: 11, offset: 30688}, + name: "DelimitedBlockRawLine", + }, + }, + }, + }, + }, + }, + }, + { + name: "MarkdownQuoteBlock", + pos: position{line: 980, col: 1, offset: 30824}, + expr: &actionExpr{ + pos: position{line: 981, col: 5, offset: 30851}, + run: (*parser).callonMarkdownQuoteBlock1, + expr: &seqExpr{ + pos: position{line: 981, col: 5, offset: 30851}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 981, col: 5, offset: 30851}, + label: "firstLine", + expr: &ruleRefExpr{ + pos: position{line: 981, col: 16, offset: 30862}, + name: "MarkdownQuoteRawLine", + }, + }, + &labeledExpr{ + pos: position{line: 982, col: 5, offset: 30888}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 982, col: 16, offset: 30899}, + expr: &choiceExpr{ + pos: position{line: 982, col: 17, offset: 30900}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 982, col: 17, offset: 30900}, + name: "MarkdownQuoteRawLine", + }, + &ruleRefExpr{ + pos: position{line: 982, col: 40, offset: 30923}, + name: "ParagraphRawLine", }, }, }, @@ -39030,122 +5056,131 @@ var g = &grammar{ }, }, { - name: "ListElementContinuation", - pos: position{line: 1585, col: 1, offset: 51860}, + name: "MarkdownQuoteRawLine", + pos: position{line: 987, col: 1, offset: 31081}, expr: &actionExpr{ - pos: position{line: 1586, col: 5, offset: 51892}, - run: (*parser).callonListElementContinuation1, + pos: position{line: 988, col: 5, offset: 31110}, + run: (*parser).callonMarkdownQuoteRawLine1, expr: &seqExpr{ - pos: position{line: 1586, col: 5, offset: 51892}, + pos: position{line: 988, col: 5, offset: 31110}, exprs: []interface{}{ + ¬Expr{ + pos: position{line: 988, col: 5, offset: 31110}, + expr: &ruleRefExpr{ + pos: position{line: 988, col: 6, offset: 31111}, + name: "BlankLine", + }, + }, + &litMatcher{ + pos: position{line: 989, col: 5, offset: 31125}, + val: "> ", + ignoreCase: false, + want: "\"> \"", + }, &labeledExpr{ - pos: position{line: 1586, col: 5, offset: 51892}, - label: "offset", - expr: &zeroOrMoreExpr{ - pos: position{line: 1586, col: 12, offset: 51899}, - expr: &seqExpr{ - pos: position{line: 1586, col: 13, offset: 51900}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1586, col: 13, offset: 51900}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuation7, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuation9, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, + pos: position{line: 990, col: 5, offset: 31135}, + label: "content", + expr: &actionExpr{ + pos: position{line: 990, col: 14, offset: 31144}, + run: (*parser).callonMarkdownQuoteRawLine7, + expr: &oneOrMoreExpr{ + pos: position{line: 990, col: 15, offset: 31145}, + expr: &charClassMatcher{ + pos: position{line: 990, col: 15, offset: 31145}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 992, col: 8, offset: 31200}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "MarkdownQuoteAttribution", + pos: position{line: 996, col: 1, offset: 31263}, + expr: &actionExpr{ + pos: position{line: 997, col: 5, offset: 31296}, + run: (*parser).callonMarkdownQuoteAttribution1, + expr: &seqExpr{ + pos: position{line: 997, col: 5, offset: 31296}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", + pos: position{line: 997, col: 5, offset: 31296}, + val: "-- ", ignoreCase: false, - want: "\"+\"", + want: "\"-- \"", }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, + &labeledExpr{ + pos: position{line: 997, col: 11, offset: 31302}, + label: "author", expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuation16, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuation18, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", + pos: position{line: 997, col: 19, offset: 31310}, + run: (*parser).callonMarkdownQuoteAttribution5, + expr: &oneOrMoreExpr{ + pos: position{line: 997, col: 20, offset: 31311}, + expr: &charClassMatcher{ + pos: position{line: 997, col: 20, offset: 31311}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - want: "\"\\r\"", + inverted: true, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 999, col: 8, offset: 31365}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "PassthroughBlock", + pos: position{line: 1006, col: 1, offset: 31479}, + expr: &actionExpr{ + pos: position{line: 1007, col: 5, offset: 31503}, + run: (*parser).callonPassthroughBlock1, + expr: &seqExpr{ + pos: position{line: 1007, col: 5, offset: 31503}, + exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1588, col: 5, offset: 51956}, - label: "element", + pos: position{line: 1007, col: 5, offset: 31503}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 1007, col: 12, offset: 31510}, + name: "PassthroughBlockStartDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 1008, col: 5, offset: 31546}, + run: (*parser).callonPassthroughBlock5, + }, + &labeledExpr{ + pos: position{line: 1011, col: 5, offset: 31638}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1011, col: 14, offset: 31647}, + name: "PassthroughBlockContent", + }, + }, + &labeledExpr{ + pos: position{line: 1012, col: 5, offset: 31676}, + label: "end", expr: &zeroOrOneExpr{ - pos: position{line: 1588, col: 13, offset: 51964}, + pos: position{line: 1012, col: 9, offset: 31680}, expr: &ruleRefExpr{ - pos: position{line: 1588, col: 13, offset: 51964}, - name: "ListElementContinuationElement", + pos: position{line: 1012, col: 10, offset: 31681}, + name: "PassthroughBlockEndDelimiter", }, }, }, @@ -39154,6226 +5189,907 @@ var g = &grammar{ }, }, { - name: "ListElementContinuationElement", - pos: position{line: 1595, col: 1, offset: 52152}, + name: "PassthroughBlockStartDelimiter", + pos: position{line: 1016, col: 1, offset: 31804}, + expr: &ruleRefExpr{ + pos: position{line: 1016, col: 35, offset: 31838}, + name: "PassthroughBlockDelimiter", + }, + }, + { + name: "PassthroughBlockEndDelimiter", + pos: position{line: 1018, col: 1, offset: 31865}, + expr: &choiceExpr{ + pos: position{line: 1019, col: 5, offset: 31902}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 1019, col: 5, offset: 31902}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1019, col: 5, offset: 31902}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 1019, col: 9, offset: 31906}, + name: "PassthroughBlockDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 1020, col: 5, offset: 31937}, + run: (*parser).callonPassthroughBlockEndDelimiter5, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 1023, col: 7, offset: 32031}, + name: "EOF", + }, + }, + }, + }, + { + name: "PassthroughBlockContent", + pos: position{line: 1025, col: 1, offset: 32036}, + expr: &zeroOrMoreExpr{ + pos: position{line: 1026, col: 5, offset: 32068}, + expr: &actionExpr{ + pos: position{line: 1026, col: 6, offset: 32069}, + run: (*parser).callonPassthroughBlockContent2, + expr: &seqExpr{ + pos: position{line: 1026, col: 6, offset: 32069}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1026, col: 6, offset: 32069}, + expr: &ruleRefExpr{ + pos: position{line: 1026, col: 7, offset: 32070}, + name: "PassthroughBlockEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 1027, col: 5, offset: 32103}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 1027, col: 11, offset: 32109}, + name: "DelimitedBlockRawLine", + }, + }, + }, + }, + }, + }, + }, + { + name: "QuoteBlock", + pos: position{line: 1034, col: 1, offset: 32236}, expr: &actionExpr{ - pos: position{line: 1596, col: 5, offset: 52230}, - run: (*parser).callonListElementContinuationElement1, + pos: position{line: 1035, col: 5, offset: 32254}, + run: (*parser).callonQuoteBlock1, expr: &seqExpr{ - pos: position{line: 1596, col: 5, offset: 52230}, + pos: position{line: 1035, col: 5, offset: 32254}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1596, col: 5, offset: 52230}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + &labeledExpr{ + pos: position{line: 1035, col: 5, offset: 32254}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 1035, col: 12, offset: 32261}, + name: "QuoteBlockStartDelimiter", }, }, - ¬Expr{ - pos: position{line: 1597, col: 5, offset: 52256}, - expr: &choiceExpr{ - pos: position{line: 1487, col: 5, offset: 48591}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - run: (*parser).callonListElementContinuationElement8, - expr: &seqExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1634, col: 5, offset: 53398}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonListElementContinuationElement11, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement14, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonListElementContinuationElement18, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonListElementContinuationElement21, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonListElementContinuationElement24, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonListElementContinuationElement25, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonListElementContinuationElement30, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonListElementContinuationElement34, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonListElementContinuationElement38, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonListElementContinuationElement43, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement48, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1635, col: 5, offset: 53437}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonListElementContinuationElement52, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonListElementContinuationElement55, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement59, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - run: (*parser).callonListElementContinuationElement66, - expr: &seqExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1684, col: 5, offset: 55295}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonListElementContinuationElement69, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement72, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonListElementContinuationElement76, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonListElementContinuationElement79, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonListElementContinuationElement82, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonListElementContinuationElement84, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement86, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1685, col: 5, offset: 55336}, - label: "checkstyle", - expr: &zeroOrOneExpr{ - pos: position{line: 1685, col: 16, offset: 55347}, - expr: &actionExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - run: (*parser).callonListElementContinuationElement91, - expr: &seqExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 1721, col: 5, offset: 56624}, - expr: &litMatcher{ - pos: position{line: 1721, col: 6, offset: 56625}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 1721, col: 10, offset: 56629}, - label: "style", - expr: &choiceExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1722, col: 7, offset: 56643}, - run: (*parser).callonListElementContinuationElement97, - expr: &litMatcher{ - pos: position{line: 1722, col: 7, offset: 56643}, - val: "[ ]", - ignoreCase: false, - want: "\"[ ]\"", - }, - }, - &actionExpr{ - pos: position{line: 1723, col: 7, offset: 56688}, - run: (*parser).callonListElementContinuationElement99, - expr: &litMatcher{ - pos: position{line: 1723, col: 7, offset: 56688}, - val: "[*]", - ignoreCase: false, - want: "\"[*]\"", - }, - }, - &actionExpr{ - pos: position{line: 1724, col: 7, offset: 56731}, - run: (*parser).callonListElementContinuationElement101, - expr: &litMatcher{ - pos: position{line: 1724, col: 7, offset: 56731}, - val: "[x]", - ignoreCase: false, - want: "\"[x]\"", - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement103, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1686, col: 5, offset: 55386}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - run: (*parser).callonListElementContinuationElement107, - expr: &seqExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1575, col: 5, offset: 51633}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - run: (*parser).callonListElementContinuationElement110, - expr: &oneOrMoreExpr{ - pos: position{line: 1575, col: 14, offset: 51642}, - expr: &charClassMatcher{ - pos: position{line: 1575, col: 14, offset: 51642}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement114, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - run: (*parser).callonListElementContinuationElement121, - expr: &seqExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1791, col: 5, offset: 58604}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonListElementContinuationElement124, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonListElementContinuationElement128, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement132, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1792, col: 5, offset: 58640}, - label: "description", - expr: &actionExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - run: (*parser).callonListElementContinuationElement136, - expr: &seqExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1802, col: 5, offset: 58988}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - run: (*parser).callonListElementContinuationElement139, - expr: &oneOrMoreExpr{ - pos: position{line: 1802, col: 14, offset: 58997}, - expr: &charClassMatcher{ - pos: position{line: 1802, col: 14, offset: 58997}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement143, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - run: (*parser).callonListElementContinuationElement150, - expr: &seqExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1733, col: 5, offset: 56924}, - label: "term", - expr: &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonListElementContinuationElement153, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElementContinuationElement157, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElementContinuationElement160, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElementContinuationElement163, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement166, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1734, col: 5, offset: 56959}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElementContinuationElement175, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElementContinuationElement178, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElementContinuationElement181, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1735, col: 5, offset: 57004}, - label: "description", - expr: &choiceExpr{ - pos: position{line: 1757, col: 5, offset: 57653}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - run: (*parser).callonListElementContinuationElement184, - expr: &seqExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1759, col: 9, offset: 57718}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement187, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement190, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1760, col: 9, offset: 57738}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement198, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement204, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement207, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1761, col: 9, offset: 57758}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1761, col: 17, offset: 57766}, - expr: &choiceExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1555, col: 5, offset: 51000}, - run: (*parser).callonListElementContinuationElement217, - expr: &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonListElementContinuationElement218, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonListElementContinuationElement224, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement228, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - run: (*parser).callonListElementContinuationElement235, - expr: &seqExpr{ - pos: position{line: 1559, col: 9, offset: 51153}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1559, col: 9, offset: 51153}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement238, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement244, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement247, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1560, col: 9, offset: 51172}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement258, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement260, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1561, col: 9, offset: 51211}, - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonListElementContinuationElement266, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement269, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonListElementContinuationElement273, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonListElementContinuationElement276, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonListElementContinuationElement279, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonListElementContinuationElement280, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonListElementContinuationElement285, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonListElementContinuationElement289, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonListElementContinuationElement293, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonListElementContinuationElement298, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement303, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1562, col: 9, offset: 51245}, - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonListElementContinuationElement307, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement310, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonListElementContinuationElement314, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonListElementContinuationElement317, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonListElementContinuationElement320, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonListElementContinuationElement322, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement324, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1563, col: 9, offset: 51281}, - expr: &actionExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - run: (*parser).callonListElementContinuationElement328, - expr: &seqExpr{ - pos: position{line: 1797, col: 5, offset: 58805}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1797, col: 5, offset: 58805}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1797, col: 9, offset: 58809}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - run: (*parser).callonListElementContinuationElement332, - expr: &oneOrMoreExpr{ - pos: position{line: 1797, col: 14, offset: 58814}, - expr: &charClassMatcher{ - pos: position{line: 1797, col: 14, offset: 58814}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1797, col: 62, offset: 58862}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement336, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1564, col: 9, offset: 51315}, - expr: &seqExpr{ - pos: position{line: 1564, col: 11, offset: 51317}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - run: (*parser).callonListElementContinuationElement341, - expr: &oneOrMoreExpr{ - pos: position{line: 1741, col: 5, offset: 57183}, - expr: &seqExpr{ - pos: position{line: 1741, col: 6, offset: 57184}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1741, col: 6, offset: 57184}, - expr: &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElementContinuationElement345, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElementContinuationElement348, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElementContinuationElement351, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1741, col: 35, offset: 57213}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement354, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1741, col: 40, offset: 57218, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - run: (*parser).callonListElementContinuationElement362, - expr: &seqExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1746, col: 5, offset: 57334}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - run: (*parser).callonListElementContinuationElement365, - expr: &oneOrMoreExpr{ - pos: position{line: 1746, col: 16, offset: 57345}, - expr: &litMatcher{ - pos: position{line: 1746, col: 17, offset: 57346}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1749, col: 5, offset: 57403}, - run: (*parser).callonListElementContinuationElement368, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1565, col: 9, offset: 51377}, - expr: &actionExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - run: (*parser).callonListElementContinuationElement370, - expr: &seqExpr{ - pos: position{line: 736, col: 5, offset: 23847}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 736, col: 5, offset: 23847}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 737, col: 5, offset: 23877}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 738, col: 9, offset: 23897}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonListElementContinuationElement376, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonListElementContinuationElement379, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement385, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement388, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonListElementContinuationElement395, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonListElementContinuationElement398, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement404, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement407, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonListElementContinuationElement414, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonListElementContinuationElement418, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement422, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement425, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonListElementContinuationElement432, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonListElementContinuationElement435, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement441, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement444, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonListElementContinuationElement451, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonListElementContinuationElement454, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement460, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement463, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonListElementContinuationElement470, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonListElementContinuationElement473, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement479, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement482, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonListElementContinuationElement489, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonListElementContinuationElement492, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement498, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement501, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonListElementContinuationElement508, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonListElementContinuationElement511, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement517, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement520, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonListElementContinuationElement527, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonListElementContinuationElement530, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement536, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement539, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1566, col: 9, offset: 51401}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - run: (*parser).callonListElementContinuationElement547, - expr: &oneOrMoreExpr{ - pos: position{line: 1566, col: 18, offset: 51410}, - expr: &charClassMatcher{ - pos: position{line: 1566, col: 18, offset: 51410}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement551, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - run: (*parser).callonListElementContinuationElement558, - expr: &seqExpr{ - pos: position{line: 1769, col: 9, offset: 58001}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement560, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1770, col: 9, offset: 58053}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - run: (*parser).callonListElementContinuationElement564, - expr: &oneOrMoreExpr{ - pos: position{line: 1770, col: 18, offset: 58062}, - expr: &charClassMatcher{ - pos: position{line: 1770, col: 18, offset: 58062}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement568, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &andCodeExpr{ + pos: position{line: 1036, col: 5, offset: 32291}, + run: (*parser).callonQuoteBlock5, + }, + &labeledExpr{ + pos: position{line: 1039, col: 5, offset: 32383}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1039, col: 14, offset: 32392}, + name: "QuoteBlockContent", }, }, &labeledExpr{ - pos: position{line: 1598, col: 5, offset: 52273}, - label: "attributes", + pos: position{line: 1040, col: 5, offset: 32415}, + label: "end", expr: &zeroOrOneExpr{ - pos: position{line: 1598, col: 16, offset: 52284}, + pos: position{line: 1040, col: 9, offset: 32419}, expr: &ruleRefExpr{ - pos: position{line: 1598, col: 17, offset: 52285}, - name: "BlockAttributes", + pos: position{line: 1040, col: 10, offset: 32420}, + name: "QuoteBlockEndDelimiter", }, }, }, - &labeledExpr{ - pos: position{line: 1599, col: 5, offset: 52307}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1600, col: 9, offset: 52325}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement580, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement586, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement589, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + { + name: "QuoteBlockStartDelimiter", + pos: position{line: 1044, col: 1, offset: 32531}, + expr: &ruleRefExpr{ + pos: position{line: 1044, col: 29, offset: 32559}, + name: "QuoteBlockDelimiter", + }, + }, + { + name: "QuoteBlockEndDelimiter", + pos: position{line: 1046, col: 1, offset: 32580}, + expr: &choiceExpr{ + pos: position{line: 1047, col: 5, offset: 32611}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 1047, col: 5, offset: 32611}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1047, col: 5, offset: 32611}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 1047, col: 9, offset: 32615}, + name: "QuoteBlockDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 1048, col: 5, offset: 32640}, + run: (*parser).callonQuoteBlockEndDelimiter5, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 1051, col: 7, offset: 32734}, + name: "EOF", + }, + }, + }, + }, + { + name: "QuoteBlockContent", + pos: position{line: 1053, col: 1, offset: 32739}, + expr: &zeroOrMoreExpr{ + pos: position{line: 1054, col: 4, offset: 32764}, + expr: &actionExpr{ + pos: position{line: 1054, col: 5, offset: 32765}, + run: (*parser).callonQuoteBlockContent2, + expr: &seqExpr{ + pos: position{line: 1054, col: 5, offset: 32765}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1054, col: 5, offset: 32765}, + expr: &ruleRefExpr{ + pos: position{line: 1054, col: 6, offset: 32766}, + name: "QuoteBlockEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 1055, col: 5, offset: 32793}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 1055, col: 11, offset: 32799}, + name: "DelimitedBlockRawLine", + }, + }, + }, + }, + }, + }, + }, + { + name: "SidebarBlock", + pos: position{line: 1062, col: 1, offset: 32928}, + expr: &actionExpr{ + pos: position{line: 1063, col: 5, offset: 32948}, + run: (*parser).callonSidebarBlock1, + expr: &seqExpr{ + pos: position{line: 1063, col: 5, offset: 32948}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1063, col: 5, offset: 32948}, + label: "start", + expr: &ruleRefExpr{ + pos: position{line: 1063, col: 12, offset: 32955}, + name: "SidebarBlockStartDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 1064, col: 5, offset: 32987}, + run: (*parser).callonSidebarBlock5, + }, + &labeledExpr{ + pos: position{line: 1067, col: 5, offset: 33079}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1067, col: 14, offset: 33088}, + name: "SidebarBlockContent", + }, + }, + &labeledExpr{ + pos: position{line: 1068, col: 5, offset: 33113}, + label: "end", + expr: &zeroOrOneExpr{ + pos: position{line: 1068, col: 9, offset: 33117}, + expr: &ruleRefExpr{ + pos: position{line: 1068, col: 10, offset: 33118}, + name: "SidebarBlockEndDelimiter", + }, + }, + }, + }, + }, + }, + }, + { + name: "SidebarBlockStartDelimiter", + pos: position{line: 1072, col: 1, offset: 33233}, + expr: &ruleRefExpr{ + pos: position{line: 1072, col: 31, offset: 33263}, + name: "SidebarBlockDelimiter", + }, + }, + { + name: "SidebarBlockEndDelimiter", + pos: position{line: 1074, col: 1, offset: 33286}, + expr: &choiceExpr{ + pos: position{line: 1075, col: 5, offset: 33319}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 1075, col: 5, offset: 33319}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1075, col: 5, offset: 33319}, + label: "end", + expr: &ruleRefExpr{ + pos: position{line: 1075, col: 9, offset: 33323}, + name: "SidebarBlockDelimiter", + }, + }, + &andCodeExpr{ + pos: position{line: 1076, col: 5, offset: 33350}, + run: (*parser).callonSidebarBlockEndDelimiter5, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 1079, col: 7, offset: 33444}, + name: "EOF", + }, + }, + }, + }, + { + name: "SidebarBlockContent", + pos: position{line: 1081, col: 1, offset: 33449}, + expr: &zeroOrMoreExpr{ + pos: position{line: 1082, col: 4, offset: 33476}, + expr: &actionExpr{ + pos: position{line: 1082, col: 5, offset: 33477}, + run: (*parser).callonSidebarBlockContent2, + expr: &seqExpr{ + pos: position{line: 1082, col: 5, offset: 33477}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1082, col: 5, offset: 33477}, + expr: &ruleRefExpr{ + pos: position{line: 1082, col: 6, offset: 33478}, + name: "SidebarBlockEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 1083, col: 5, offset: 33507}, + label: "line", + expr: &ruleRefExpr{ + pos: position{line: 1083, col: 11, offset: 33513}, + name: "DelimitedBlockRawLine", + }, + }, + }, + }, + }, + }, + }, + { + name: "DocumentHeader", + pos: position{line: 1090, col: 1, offset: 33782}, + expr: &actionExpr{ + pos: position{line: 1091, col: 5, offset: 33805}, + run: (*parser).callonDocumentHeader1, + expr: &seqExpr{ + pos: position{line: 1091, col: 5, offset: 33805}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 1091, col: 5, offset: 33805}, + run: (*parser).callonDocumentHeader3, + }, + &labeledExpr{ + pos: position{line: 1094, col: 5, offset: 33866}, + label: "extraAttrs", + expr: &ruleRefExpr{ + pos: position{line: 1094, col: 17, offset: 33878}, + name: "DocumentHeaderAttributes", + }, + }, + &labeledExpr{ + pos: position{line: 1095, col: 5, offset: 33908}, + label: "info", + expr: &zeroOrOneExpr{ + pos: position{line: 1095, col: 10, offset: 33913}, + expr: &ruleRefExpr{ + pos: position{line: 1095, col: 11, offset: 33914}, + name: "DocumentInformation", + }, + }, + }, + &labeledExpr{ + pos: position{line: 1096, col: 5, offset: 33940}, + label: "moreExtraAttrs", + expr: &ruleRefExpr{ + pos: position{line: 1096, col: 21, offset: 33956}, + name: "DocumentHeaderAttributes", + }, + }, + &andCodeExpr{ + pos: position{line: 1097, col: 5, offset: 33986}, + run: (*parser).callonDocumentHeader11, + }, + }, + }, + }, + }, + { + name: "DocumentHeaderAttributes", + pos: position{line: 1115, col: 1, offset: 34621}, + expr: &zeroOrMoreExpr{ + pos: position{line: 1115, col: 29, offset: 34649}, + expr: &choiceExpr{ + pos: position{line: 1115, col: 30, offset: 34650}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1115, col: 30, offset: 34650}, + name: "AttributeDeclaration", + }, + &ruleRefExpr{ + pos: position{line: 1115, col: 53, offset: 34673}, + name: "AttributeReset", + }, + &ruleRefExpr{ + pos: position{line: 1115, col: 70, offset: 34690}, + name: "SingleLineComment", + }, + &ruleRefExpr{ + pos: position{line: 1115, col: 90, offset: 34710}, + name: "CommentBlock", + }, + &ruleRefExpr{ + pos: position{line: 1115, col: 105, offset: 34725}, + name: "BlankLine", + }, + }, + }, + }, + }, + { + name: "DocumentInformation", + pos: position{line: 1117, col: 1, offset: 34739}, + expr: &actionExpr{ + pos: position{line: 1118, col: 5, offset: 34766}, + run: (*parser).callonDocumentInformation1, + expr: &seqExpr{ + pos: position{line: 1118, col: 5, offset: 34766}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1118, col: 5, offset: 34766}, + label: "title", + expr: &ruleRefExpr{ + pos: position{line: 1118, col: 12, offset: 34773}, + name: "DocumentTitle", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1119, col: 5, offset: 34792}, + expr: &choiceExpr{ + pos: position{line: 1119, col: 6, offset: 34793}, + alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1601, col: 11, offset: 52345}, - name: "AttributeDeclaration", - }, - &actionExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - run: (*parser).callonListElementContinuationElement597, - expr: &seqExpr{ - pos: position{line: 364, col: 19, offset: 11171}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 364, col: 19, offset: 11171}, - val: ":!", - ignoreCase: false, - want: "\":!\"", - }, - &labeledExpr{ - pos: position{line: 364, col: 24, offset: 11176}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonListElementContinuationElement601, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 364, col: 45, offset: 11197}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 364, col: 49, offset: 11201}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement608, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement611, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + pos: position{line: 1119, col: 6, offset: 34793}, + name: "SingleLineComment", }, - &actionExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - run: (*parser).callonListElementContinuationElement618, - expr: &seqExpr{ - pos: position{line: 366, col: 9, offset: 11292}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 366, col: 9, offset: 11292}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 366, col: 13, offset: 11296}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonListElementContinuationElement622, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 366, col: 34, offset: 11317}, - val: "!:", - ignoreCase: false, - want: "\"!:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 366, col: 39, offset: 11322}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement629, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement632, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1119, col: 26, offset: 34813}, + name: "CommentBlock", }, - &actionExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - run: (*parser).callonListElementContinuationElement639, - expr: &seqExpr{ - pos: position{line: 827, col: 5, offset: 26970}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonListElementContinuationElement641, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonListElementContinuationElement644, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement650, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement653, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 828, col: 5, offset: 27001}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 838, col: 5, offset: 27287}, - expr: &actionExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - run: (*parser).callonListElementContinuationElement662, - expr: &seqExpr{ - pos: position{line: 838, col: 6, offset: 27288}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 838, col: 6, offset: 27288}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonListElementContinuationElement666, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonListElementContinuationElement669, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement675, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement678, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 839, col: 5, offset: 27318}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement688, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement694, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement698, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 829, col: 5, offset: 27035}, - expr: &choiceExpr{ - pos: position{line: 835, col: 29, offset: 27230}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - run: (*parser).callonListElementContinuationElement707, - expr: &seqExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 752, col: 5, offset: 24389}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - run: (*parser).callonListElementContinuationElement710, - expr: &seqExpr{ - pos: position{line: 752, col: 16, offset: 24400}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 752, col: 16, offset: 24400}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 752, col: 23, offset: 24407}, - expr: &litMatcher{ - pos: position{line: 752, col: 23, offset: 24407}, - val: "/", - ignoreCase: false, - want: "\"/\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 754, col: 8, offset: 24491}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement716, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement719, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 847, col: 5, offset: 27471}, - run: (*parser).callonListElementContinuationElement728, - expr: &seqExpr{ - pos: position{line: 847, col: 5, offset: 27471}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 847, col: 5, offset: 27471}, - label: "start", - expr: &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonListElementContinuationElement731, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonListElementContinuationElement734, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement740, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement743, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 848, col: 5, offset: 27510}, - run: (*parser).callonListElementContinuationElement750, - }, - &labeledExpr{ - pos: position{line: 851, col: 5, offset: 27602}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 866, col: 4, offset: 27999}, - expr: &actionExpr{ - pos: position{line: 866, col: 5, offset: 28000}, - run: (*parser).callonListElementContinuationElement753, - expr: &seqExpr{ - pos: position{line: 866, col: 5, offset: 28000}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 866, col: 5, offset: 28000}, - expr: &choiceExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - label: "end", - expr: &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonListElementContinuationElement759, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonListElementContinuationElement762, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement768, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement771, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 860, col: 5, offset: 27873}, - run: (*parser).callonListElementContinuationElement778, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 867, col: 5, offset: 28030}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement782, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement788, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement792, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 852, col: 5, offset: 27636}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 852, col: 9, offset: 27640}, - expr: &choiceExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 859, col: 5, offset: 27842}, - label: "end", - expr: &actionExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - run: (*parser).callonListElementContinuationElement804, - expr: &seqExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 759, col: 5, offset: 24637}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - run: (*parser).callonListElementContinuationElement807, - expr: &seqExpr{ - pos: position{line: 759, col: 16, offset: 24648}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 759, col: 16, offset: 24648}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 759, col: 23, offset: 24655}, - expr: &litMatcher{ - pos: position{line: 759, col: 23, offset: 24655}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 761, col: 8, offset: 24739}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement813, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement816, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 860, col: 5, offset: 27873}, - run: (*parser).callonListElementContinuationElement823, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1120, col: 5, offset: 34867}, + label: "authorsAndRevision", + expr: &zeroOrOneExpr{ + pos: position{line: 1120, col: 24, offset: 34886}, + expr: &ruleRefExpr{ + pos: position{line: 1120, col: 25, offset: 34887}, + name: "DocumentAuthorsAndRevision", + }, + }, + }, + }, + }, + }, + }, + { + name: "DocumentTitle", + pos: position{line: 1125, col: 1, offset: 35025}, + expr: &actionExpr{ + pos: position{line: 1126, col: 5, offset: 35047}, + run: (*parser).callonDocumentTitle1, + expr: &seqExpr{ + pos: position{line: 1126, col: 5, offset: 35047}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1126, col: 5, offset: 35047}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + &ruleRefExpr{ + pos: position{line: 1126, col: 9, offset: 35051}, + name: "Spaces", + }, + &labeledExpr{ + pos: position{line: 1126, col: 16, offset: 35058}, + label: "title", + expr: &ruleRefExpr{ + pos: position{line: 1126, col: 23, offset: 35065}, + name: "SectionTitle", + }, + }, + &ruleRefExpr{ + pos: position{line: 1126, col: 37, offset: 35079}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "DocumentAuthorsAndRevision", + pos: position{line: 1130, col: 1, offset: 35118}, + expr: &actionExpr{ + pos: position{line: 1131, col: 5, offset: 35153}, + run: (*parser).callonDocumentAuthorsAndRevision1, + expr: &seqExpr{ + pos: position{line: 1131, col: 5, offset: 35153}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1131, col: 5, offset: 35153}, + label: "authors", + expr: &ruleRefExpr{ + pos: position{line: 1131, col: 14, offset: 35162}, + name: "DocumentAuthors", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1132, col: 5, offset: 35183}, + expr: &choiceExpr{ + pos: position{line: 1132, col: 6, offset: 35184}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1132, col: 6, offset: 35184}, + name: "SingleLineComment", }, - &actionExpr{ - pos: position{line: 959, col: 5, offset: 30322}, - run: (*parser).callonListElementContinuationElement826, - expr: &seqExpr{ - pos: position{line: 959, col: 5, offset: 30322}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 959, col: 5, offset: 30322}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - run: (*parser).callonListElementContinuationElement829, - expr: &seqExpr{ - pos: position{line: 772, col: 26, offset: 25125}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 772, col: 26, offset: 25125}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &labeledExpr{ - pos: position{line: 772, col: 32, offset: 25131}, - label: "language", - expr: &actionExpr{ - pos: position{line: 776, col: 13, offset: 25261}, - run: (*parser).callonListElementContinuationElement833, - expr: &oneOrMoreExpr{ - pos: position{line: 776, col: 14, offset: 25262}, - expr: &charClassMatcher{ - pos: position{line: 776, col: 14, offset: 25262}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 772, col: 52, offset: 25151}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement837, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement840, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 960, col: 5, offset: 30368}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 973, col: 5, offset: 30841}, - expr: &actionExpr{ - pos: position{line: 973, col: 6, offset: 30842}, - run: (*parser).callonListElementContinuationElement849, - expr: &seqExpr{ - pos: position{line: 973, col: 6, offset: 30842}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 973, col: 6, offset: 30842}, - expr: &seqExpr{ - pos: position{line: 970, col: 34, offset: 30789}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 970, col: 34, offset: 30789}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 970, col: 40, offset: 30795}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement855, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement858, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 974, col: 5, offset: 30877}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement866, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement872, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement876, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 961, col: 5, offset: 30407}, - expr: &seqExpr{ - pos: position{line: 970, col: 34, offset: 30789}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 970, col: 34, offset: 30789}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 970, col: 40, offset: 30795}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement887, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement890, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1132, col: 26, offset: 35204}, + name: "CommentBlock", }, - &actionExpr{ - pos: position{line: 875, col: 5, offset: 28183}, - run: (*parser).callonListElementContinuationElement897, - expr: &seqExpr{ - pos: position{line: 875, col: 5, offset: 28183}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 875, col: 5, offset: 28183}, - label: "start", - expr: &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonListElementContinuationElement900, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonListElementContinuationElement903, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement909, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement912, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 876, col: 5, offset: 28221}, - run: (*parser).callonListElementContinuationElement919, - }, - &labeledExpr{ - pos: position{line: 879, col: 5, offset: 28313}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 894, col: 5, offset: 28703}, - expr: &actionExpr{ - pos: position{line: 894, col: 6, offset: 28704}, - run: (*parser).callonListElementContinuationElement922, - expr: &seqExpr{ - pos: position{line: 894, col: 6, offset: 28704}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 894, col: 6, offset: 28704}, - expr: &choiceExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - label: "end", - expr: &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonListElementContinuationElement928, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonListElementContinuationElement931, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement937, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement940, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 888, col: 5, offset: 28577}, - run: (*parser).callonListElementContinuationElement947, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 895, col: 5, offset: 28733}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement951, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement957, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement961, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 880, col: 5, offset: 28346}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 880, col: 9, offset: 28350}, - expr: &choiceExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 887, col: 5, offset: 28547}, - label: "end", - expr: &actionExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - run: (*parser).callonListElementContinuationElement973, - expr: &seqExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 766, col: 5, offset: 24884}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - run: (*parser).callonListElementContinuationElement976, - expr: &seqExpr{ - pos: position{line: 766, col: 16, offset: 24895}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 766, col: 16, offset: 24895}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 766, col: 22, offset: 24901}, - expr: &litMatcher{ - pos: position{line: 766, col: 22, offset: 24901}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 768, col: 8, offset: 24985}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement982, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement985, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 888, col: 5, offset: 28577}, - run: (*parser).callonListElementContinuationElement992, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1133, col: 5, offset: 35258}, + label: "revision", + expr: &zeroOrOneExpr{ + pos: position{line: 1133, col: 14, offset: 35267}, + expr: &ruleRefExpr{ + pos: position{line: 1133, col: 15, offset: 35268}, + name: "DocumentRevision", + }, + }, + }, + }, + }, + }, + }, + { + name: "DocumentAuthors", + pos: position{line: 1137, col: 1, offset: 35390}, + expr: &actionExpr{ + pos: position{line: 1137, col: 20, offset: 35409}, + run: (*parser).callonDocumentAuthors1, + expr: &seqExpr{ + pos: position{line: 1137, col: 20, offset: 35409}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1137, col: 20, offset: 35409}, + expr: &ruleRefExpr{ + pos: position{line: 1137, col: 20, offset: 35409}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 1137, col: 27, offset: 35416}, + label: "authors", + expr: &choiceExpr{ + pos: position{line: 1137, col: 36, offset: 35425}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1137, col: 36, offset: 35425}, + name: "DocumentAuthorsInlineForm", }, - &actionExpr{ - pos: position{line: 903, col: 5, offset: 28888}, - run: (*parser).callonListElementContinuationElement995, - expr: &seqExpr{ - pos: position{line: 903, col: 5, offset: 28888}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 903, col: 5, offset: 28888}, - label: "start", - expr: &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonListElementContinuationElement998, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonListElementContinuationElement1001, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1007, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1010, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 904, col: 5, offset: 28927}, - run: (*parser).callonListElementContinuationElement1017, - }, - &labeledExpr{ - pos: position{line: 907, col: 5, offset: 29019}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 922, col: 5, offset: 29417}, - expr: &actionExpr{ - pos: position{line: 922, col: 6, offset: 29418}, - run: (*parser).callonListElementContinuationElement1020, - expr: &seqExpr{ - pos: position{line: 922, col: 6, offset: 29418}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 922, col: 6, offset: 29418}, - expr: &choiceExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - label: "end", - expr: &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonListElementContinuationElement1026, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonListElementContinuationElement1029, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1035, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1038, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 916, col: 5, offset: 29290}, - run: (*parser).callonListElementContinuationElement1045, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 923, col: 5, offset: 29448}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement1049, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement1055, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1059, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 908, col: 5, offset: 29053}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 908, col: 9, offset: 29057}, - expr: &choiceExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 915, col: 5, offset: 29259}, - label: "end", - expr: &actionExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - run: (*parser).callonListElementContinuationElement1071, - expr: &seqExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 781, col: 5, offset: 25421}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - run: (*parser).callonListElementContinuationElement1074, - expr: &seqExpr{ - pos: position{line: 781, col: 16, offset: 25432}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 781, col: 16, offset: 25432}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 781, col: 23, offset: 25439}, - expr: &litMatcher{ - pos: position{line: 781, col: 23, offset: 25439}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 783, col: 8, offset: 25523}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1080, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1083, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 916, col: 5, offset: 29290}, - run: (*parser).callonListElementContinuationElement1090, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1137, col: 64, offset: 35453}, + name: "DocumentAuthorsAttributeForm", }, - &actionExpr{ - pos: position{line: 931, col: 5, offset: 29603}, - run: (*parser).callonListElementContinuationElement1093, - expr: &seqExpr{ - pos: position{line: 931, col: 5, offset: 29603}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 931, col: 5, offset: 29603}, - label: "start", - expr: &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonListElementContinuationElement1096, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonListElementContinuationElement1099, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1105, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1108, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 932, col: 5, offset: 29642}, - run: (*parser).callonListElementContinuationElement1115, - }, - &labeledExpr{ - pos: position{line: 935, col: 5, offset: 29734}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 950, col: 5, offset: 30132}, - expr: &actionExpr{ - pos: position{line: 950, col: 6, offset: 30133}, - run: (*parser).callonListElementContinuationElement1118, - expr: &seqExpr{ - pos: position{line: 950, col: 6, offset: 30133}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 950, col: 6, offset: 30133}, - expr: &choiceExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - label: "end", - expr: &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonListElementContinuationElement1124, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonListElementContinuationElement1127, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1133, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1136, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 944, col: 5, offset: 30005}, - run: (*parser).callonListElementContinuationElement1143, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 951, col: 5, offset: 30163}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement1147, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement1153, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1157, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 936, col: 5, offset: 29768}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 936, col: 9, offset: 29772}, - expr: &choiceExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 943, col: 5, offset: 29974}, - label: "end", - expr: &actionExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - run: (*parser).callonListElementContinuationElement1169, - expr: &seqExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 788, col: 5, offset: 25669}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - run: (*parser).callonListElementContinuationElement1172, - expr: &seqExpr{ - pos: position{line: 788, col: 16, offset: 25680}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 788, col: 16, offset: 25680}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 788, col: 23, offset: 25687}, - expr: &litMatcher{ - pos: position{line: 788, col: 23, offset: 25687}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 790, col: 8, offset: 25771}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1178, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1181, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 944, col: 5, offset: 30005}, - run: (*parser).callonListElementContinuationElement1188, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 1137, col: 94, offset: 35483}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "DocumentAuthorsInlineForm", + pos: position{line: 1141, col: 1, offset: 35516}, + expr: &actionExpr{ + pos: position{line: 1141, col: 30, offset: 35545}, + run: (*parser).callonDocumentAuthorsInlineForm1, + expr: &seqExpr{ + pos: position{line: 1141, col: 30, offset: 35545}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1141, col: 30, offset: 35545}, + expr: &litMatcher{ + pos: position{line: 1141, col: 31, offset: 35546}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + &labeledExpr{ + pos: position{line: 1141, col: 35, offset: 35550}, + label: "authors", + expr: &oneOrMoreExpr{ + pos: position{line: 1141, col: 44, offset: 35559}, + expr: &ruleRefExpr{ + pos: position{line: 1141, col: 44, offset: 35559}, + name: "DocumentAuthor", + }, + }, + }, + }, + }, + }, + }, + { + name: "DocumentAuthorsAttributeForm", + pos: position{line: 1145, col: 1, offset: 35645}, + expr: &actionExpr{ + pos: position{line: 1145, col: 33, offset: 35677}, + run: (*parser).callonDocumentAuthorsAttributeForm1, + expr: &seqExpr{ + pos: position{line: 1145, col: 33, offset: 35677}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1145, col: 33, offset: 35677}, + val: ":author:", + ignoreCase: false, + want: "\":author:\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1145, col: 44, offset: 35688}, + expr: &ruleRefExpr{ + pos: position{line: 1145, col: 44, offset: 35688}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 1145, col: 51, offset: 35695}, + label: "author", + expr: &ruleRefExpr{ + pos: position{line: 1145, col: 59, offset: 35703}, + name: "DocumentAuthor", + }, + }, + }, + }, + }, + }, + { + name: "DocumentAuthor", + pos: position{line: 1149, col: 1, offset: 35768}, + expr: &actionExpr{ + pos: position{line: 1150, col: 5, offset: 35791}, + run: (*parser).callonDocumentAuthor1, + expr: &seqExpr{ + pos: position{line: 1150, col: 5, offset: 35791}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1150, col: 5, offset: 35791}, + label: "fullName", + expr: &zeroOrOneExpr{ + pos: position{line: 1150, col: 14, offset: 35800}, + expr: &ruleRefExpr{ + pos: position{line: 1150, col: 15, offset: 35801}, + name: "DocumentAuthorFullName", + }, + }, + }, + &labeledExpr{ + pos: position{line: 1150, col: 40, offset: 35826}, + label: "email", + expr: &zeroOrOneExpr{ + pos: position{line: 1150, col: 46, offset: 35832}, + expr: &ruleRefExpr{ + pos: position{line: 1150, col: 47, offset: 35833}, + name: "DocumentAuthorEmail", + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1150, col: 69, offset: 35855}, + expr: &ruleRefExpr{ + pos: position{line: 1150, col: 69, offset: 35855}, + name: "Space", + }, + }, + &zeroOrOneExpr{ + pos: position{line: 1150, col: 76, offset: 35862}, + expr: &litMatcher{ + pos: position{line: 1150, col: 76, offset: 35862}, + val: ";", + ignoreCase: false, + want: "\";\"", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1150, col: 81, offset: 35867}, + expr: &ruleRefExpr{ + pos: position{line: 1150, col: 81, offset: 35867}, + name: "Space", + }, + }, + &andCodeExpr{ + pos: position{line: 1151, col: 5, offset: 35879}, + run: (*parser).callonDocumentAuthor15, + }, + }, + }, + }, + }, + { + name: "DocumentAuthorFullName", + pos: position{line: 1160, col: 1, offset: 36149}, + expr: &actionExpr{ + pos: position{line: 1161, col: 5, offset: 36180}, + run: (*parser).callonDocumentAuthorFullName1, + expr: &seqExpr{ + pos: position{line: 1161, col: 5, offset: 36180}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1161, col: 5, offset: 36180}, + label: "part1", + expr: &actionExpr{ + pos: position{line: 1161, col: 12, offset: 36187}, + run: (*parser).callonDocumentAuthorFullName4, + expr: &oneOrMoreExpr{ + pos: position{line: 1161, col: 12, offset: 36187}, + expr: &charClassMatcher{ + pos: position{line: 1161, col: 12, offset: 36187}, + val: "[^<;\\r\\n ]", + chars: []rune{'<', ';', '\r', '\n', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1164, col: 5, offset: 36267}, + expr: &ruleRefExpr{ + pos: position{line: 1164, col: 5, offset: 36267}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 1165, col: 5, offset: 36278}, + label: "part2", + expr: &zeroOrOneExpr{ + pos: position{line: 1165, col: 11, offset: 36284}, + expr: &actionExpr{ + pos: position{line: 1165, col: 12, offset: 36285}, + run: (*parser).callonDocumentAuthorFullName11, + expr: &oneOrMoreExpr{ + pos: position{line: 1165, col: 12, offset: 36285}, + expr: &charClassMatcher{ + pos: position{line: 1165, col: 12, offset: 36285}, + val: "[^<;\\r\\n ]", + chars: []rune{'<', ';', '\r', '\n', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1168, col: 5, offset: 36366}, + expr: &ruleRefExpr{ + pos: position{line: 1168, col: 5, offset: 36366}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 1169, col: 5, offset: 36377}, + label: "part3", + expr: &zeroOrOneExpr{ + pos: position{line: 1169, col: 11, offset: 36383}, + expr: &actionExpr{ + pos: position{line: 1169, col: 12, offset: 36384}, + run: (*parser).callonDocumentAuthorFullName18, + expr: &oneOrMoreExpr{ + pos: position{line: 1169, col: 12, offset: 36384}, + expr: &charClassMatcher{ + pos: position{line: 1169, col: 12, offset: 36384}, + val: "[^<;\\r\\n]", + chars: []rune{'<', ';', '\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1172, col: 5, offset: 36463}, + expr: &ruleRefExpr{ + pos: position{line: 1172, col: 5, offset: 36463}, + name: "Space", + }, + }, + }, + }, + }, + }, + { + name: "DocumentAuthorEmail", + pos: position{line: 1177, col: 1, offset: 36557}, + expr: &actionExpr{ + pos: position{line: 1178, col: 5, offset: 36585}, + run: (*parser).callonDocumentAuthorEmail1, + expr: &seqExpr{ + pos: position{line: 1178, col: 5, offset: 36585}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1178, col: 5, offset: 36585}, + expr: &ruleRefExpr{ + pos: position{line: 1178, col: 6, offset: 36586}, + name: "EOF", + }, + }, + &litMatcher{ + pos: position{line: 1179, col: 5, offset: 36595}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1180, col: 5, offset: 36604}, + label: "email", + expr: &actionExpr{ + pos: position{line: 1180, col: 12, offset: 36611}, + run: (*parser).callonDocumentAuthorEmail7, + expr: &oneOrMoreExpr{ + pos: position{line: 1180, col: 13, offset: 36612}, + expr: &charClassMatcher{ + pos: position{line: 1180, col: 13, offset: 36612}, + val: "[^>\\r\\n]", + chars: []rune{'>', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1183, col: 5, offset: 36672}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + }, + }, + }, + }, + { + name: "DocumentRevision", + pos: position{line: 1189, col: 1, offset: 36841}, + expr: &actionExpr{ + pos: position{line: 1189, col: 21, offset: 36861}, + run: (*parser).callonDocumentRevision1, + expr: &seqExpr{ + pos: position{line: 1189, col: 21, offset: 36861}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1189, col: 21, offset: 36861}, + expr: &ruleRefExpr{ + pos: position{line: 1189, col: 21, offset: 36861}, + name: "Space", + }, + }, + ¬Expr{ + pos: position{line: 1189, col: 28, offset: 36868}, + expr: &litMatcher{ + pos: position{line: 1189, col: 29, offset: 36869}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + &labeledExpr{ + pos: position{line: 1189, col: 33, offset: 36873}, + label: "revision", + expr: &choiceExpr{ + pos: position{line: 1190, col: 9, offset: 36892}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 982, col: 5, offset: 31046}, - run: (*parser).callonListElementContinuationElement1191, + pos: position{line: 1190, col: 10, offset: 36893}, + run: (*parser).callonDocumentRevision9, expr: &seqExpr{ - pos: position{line: 982, col: 5, offset: 31046}, + pos: position{line: 1190, col: 10, offset: 36893}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 982, col: 5, offset: 31046}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - run: (*parser).callonListElementContinuationElement1194, - expr: &seqExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 989, col: 5, offset: 31305}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement1197, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1203, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1206, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 990, col: 5, offset: 31320}, - val: "> ", - ignoreCase: false, - want: "\"> \"", - }, - &labeledExpr{ - pos: position{line: 991, col: 5, offset: 31330}, - label: "content", - expr: &actionExpr{ - pos: position{line: 991, col: 14, offset: 31339}, - run: (*parser).callonListElementContinuationElement1215, - expr: &oneOrMoreExpr{ - pos: position{line: 991, col: 15, offset: 31340}, - expr: &charClassMatcher{ - pos: position{line: 991, col: 15, offset: 31340}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1219, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + pos: position{line: 1190, col: 10, offset: 36893}, + label: "revnumber", + expr: &ruleRefExpr{ + pos: position{line: 1190, col: 21, offset: 36904}, + name: "DocumentRevisionNumber", }, }, - &labeledExpr{ - pos: position{line: 983, col: 5, offset: 31083}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 983, col: 16, offset: 31094}, - expr: &choiceExpr{ - pos: position{line: 983, col: 17, offset: 31095}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - run: (*parser).callonListElementContinuationElement1229, - expr: &seqExpr{ - pos: position{line: 989, col: 5, offset: 31305}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 989, col: 5, offset: 31305}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement1232, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1238, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1241, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 990, col: 5, offset: 31320}, - val: "> ", - ignoreCase: false, - want: "\"> \"", - }, - &labeledExpr{ - pos: position{line: 991, col: 5, offset: 31330}, - label: "content", - expr: &actionExpr{ - pos: position{line: 991, col: 14, offset: 31339}, - run: (*parser).callonListElementContinuationElement1250, - expr: &oneOrMoreExpr{ - pos: position{line: 991, col: 15, offset: 31340}, - expr: &charClassMatcher{ - pos: position{line: 991, col: 15, offset: 31340}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1254, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonListElementContinuationElement1261, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonListElementContinuationElement1264, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonListElementContinuationElement1267, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1269, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &zeroOrOneExpr{ + pos: position{line: 1190, col: 45, offset: 36928}, + expr: &litMatcher{ + pos: position{line: 1190, col: 45, offset: 36928}, + val: ",", + ignoreCase: false, + want: "\",\"", }, }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1008, col: 5, offset: 31698}, - run: (*parser).callonListElementContinuationElement1276, - expr: &seqExpr{ - pos: position{line: 1008, col: 5, offset: 31698}, - exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1008, col: 5, offset: 31698}, - label: "start", - expr: &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonListElementContinuationElement1279, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonListElementContinuationElement1282, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1288, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1291, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, + pos: position{line: 1190, col: 50, offset: 36933}, + label: "revdate", + expr: &zeroOrOneExpr{ + pos: position{line: 1190, col: 58, offset: 36941}, + expr: &ruleRefExpr{ + pos: position{line: 1190, col: 59, offset: 36942}, + name: "DocumentRevisionDate", }, }, }, - &andCodeExpr{ - pos: position{line: 1009, col: 5, offset: 31741}, - run: (*parser).callonListElementContinuationElement1298, - }, - &labeledExpr{ - pos: position{line: 1012, col: 5, offset: 31833}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1027, col: 5, offset: 32263}, - expr: &actionExpr{ - pos: position{line: 1027, col: 6, offset: 32264}, - run: (*parser).callonListElementContinuationElement1301, - expr: &seqExpr{ - pos: position{line: 1027, col: 6, offset: 32264}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1027, col: 6, offset: 32264}, - expr: &choiceExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - label: "end", - expr: &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonListElementContinuationElement1307, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonListElementContinuationElement1310, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1316, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1319, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1021, col: 5, offset: 32132}, - run: (*parser).callonListElementContinuationElement1326, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1028, col: 5, offset: 32298}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement1330, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement1336, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1340, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &zeroOrOneExpr{ + pos: position{line: 1190, col: 82, offset: 36965}, + expr: &litMatcher{ + pos: position{line: 1190, col: 82, offset: 36965}, + val: ":", + ignoreCase: false, + want: "\":\"", }, }, &labeledExpr{ - pos: position{line: 1013, col: 5, offset: 31871}, - label: "end", + pos: position{line: 1190, col: 87, offset: 36970}, + label: "revremark", expr: &zeroOrOneExpr{ - pos: position{line: 1013, col: 9, offset: 31875}, - expr: &choiceExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1020, col: 5, offset: 32097}, - label: "end", - expr: &actionExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - run: (*parser).callonListElementContinuationElement1352, - expr: &seqExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 795, col: 5, offset: 25921}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - run: (*parser).callonListElementContinuationElement1355, - expr: &seqExpr{ - pos: position{line: 795, col: 16, offset: 25932}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 795, col: 16, offset: 25932}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 795, col: 23, offset: 25939}, - expr: &litMatcher{ - pos: position{line: 795, col: 23, offset: 25939}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 797, col: 8, offset: 26023}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1361, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1364, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1021, col: 5, offset: 32132}, - run: (*parser).callonListElementContinuationElement1371, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + pos: position{line: 1190, col: 97, offset: 36980}, + expr: &ruleRefExpr{ + pos: position{line: 1190, col: 98, offset: 36981}, + name: "DocumentRevisionRemark", }, }, }, @@ -45381,3073 +6097,137 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1036, col: 5, offset: 32449}, - run: (*parser).callonListElementContinuationElement1374, + pos: position{line: 1192, col: 15, offset: 37098}, + run: (*parser).callonDocumentRevision23, expr: &seqExpr{ - pos: position{line: 1036, col: 5, offset: 32449}, + pos: position{line: 1192, col: 15, offset: 37098}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1036, col: 5, offset: 32449}, - label: "start", - expr: &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonListElementContinuationElement1377, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonListElementContinuationElement1380, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1386, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1389, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + pos: position{line: 1192, col: 15, offset: 37098}, + label: "revdate", + expr: &ruleRefExpr{ + pos: position{line: 1192, col: 24, offset: 37107}, + name: "DocumentRevisionDate", }, }, - &andCodeExpr{ - pos: position{line: 1037, col: 5, offset: 32486}, - run: (*parser).callonListElementContinuationElement1396, - }, - &labeledExpr{ - pos: position{line: 1040, col: 5, offset: 32578}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1055, col: 4, offset: 32959}, - expr: &actionExpr{ - pos: position{line: 1055, col: 5, offset: 32960}, - run: (*parser).callonListElementContinuationElement1399, - expr: &seqExpr{ - pos: position{line: 1055, col: 5, offset: 32960}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1055, col: 5, offset: 32960}, - expr: &choiceExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - label: "end", - expr: &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonListElementContinuationElement1405, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonListElementContinuationElement1408, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1414, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1417, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1049, col: 5, offset: 32835}, - run: (*parser).callonListElementContinuationElement1424, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1056, col: 5, offset: 32988}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement1428, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement1434, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1438, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &zeroOrOneExpr{ + pos: position{line: 1192, col: 46, offset: 37129}, + expr: &litMatcher{ + pos: position{line: 1192, col: 46, offset: 37129}, + val: ":", + ignoreCase: false, + want: "\":\"", }, }, &labeledExpr{ - pos: position{line: 1041, col: 5, offset: 32610}, - label: "end", + pos: position{line: 1192, col: 51, offset: 37134}, + label: "revremark", expr: &zeroOrOneExpr{ - pos: position{line: 1041, col: 9, offset: 32614}, - expr: &choiceExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1048, col: 5, offset: 32806}, - label: "end", - expr: &actionExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - run: (*parser).callonListElementContinuationElement1450, - expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 802, col: 5, offset: 26171}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - run: (*parser).callonListElementContinuationElement1453, - expr: &seqExpr{ - pos: position{line: 802, col: 16, offset: 26182}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 802, col: 16, offset: 26182}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 802, col: 23, offset: 26189}, - expr: &litMatcher{ - pos: position{line: 802, col: 23, offset: 26189}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 804, col: 8, offset: 26273}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1459, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1462, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1049, col: 5, offset: 32835}, - run: (*parser).callonListElementContinuationElement1469, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + pos: position{line: 1192, col: 61, offset: 37144}, + expr: &ruleRefExpr{ + pos: position{line: 1192, col: 62, offset: 37145}, + name: "DocumentRevisionRemark", }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 1064, col: 5, offset: 33143}, - run: (*parser).callonListElementContinuationElement1472, - expr: &seqExpr{ - pos: position{line: 1064, col: 5, offset: 33143}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1064, col: 5, offset: 33143}, - label: "start", - expr: &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonListElementContinuationElement1475, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonListElementContinuationElement1478, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1484, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1487, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1065, col: 5, offset: 33182}, - run: (*parser).callonListElementContinuationElement1494, - }, - &labeledExpr{ - pos: position{line: 1068, col: 5, offset: 33274}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1083, col: 4, offset: 33671}, - expr: &actionExpr{ - pos: position{line: 1083, col: 5, offset: 33672}, - run: (*parser).callonListElementContinuationElement1497, - expr: &seqExpr{ - pos: position{line: 1083, col: 5, offset: 33672}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1083, col: 5, offset: 33672}, - expr: &choiceExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - label: "end", - expr: &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonListElementContinuationElement1503, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonListElementContinuationElement1506, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1512, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1515, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1077, col: 5, offset: 33545}, - run: (*parser).callonListElementContinuationElement1522, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1084, col: 5, offset: 33702}, - label: "line", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - run: (*parser).callonListElementContinuationElement1526, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26665}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 816, col: 5, offset: 26665}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 817, col: 5, offset: 26738}, - label: "content", - expr: &actionExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - run: (*parser).callonListElementContinuationElement1532, - expr: &zeroOrMoreExpr{ - pos: position{line: 817, col: 14, offset: 26747}, - expr: &charClassMatcher{ - pos: position{line: 817, col: 14, offset: 26747}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1536, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1069, col: 5, offset: 33308}, - label: "end", - expr: &zeroOrOneExpr{ - pos: position{line: 1069, col: 9, offset: 33312}, - expr: &choiceExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1076, col: 5, offset: 33514}, - label: "end", - expr: &actionExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - run: (*parser).callonListElementContinuationElement1548, - expr: &seqExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 809, col: 5, offset: 26417}, - label: "delimiter", - expr: &actionExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - run: (*parser).callonListElementContinuationElement1551, - expr: &seqExpr{ - pos: position{line: 809, col: 16, offset: 26428}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 809, col: 16, offset: 26428}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 809, col: 23, offset: 26435}, - expr: &litMatcher{ - pos: position{line: 809, col: 23, offset: 26435}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 811, col: 8, offset: 26519}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1557, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1560, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1077, col: 5, offset: 33545}, - run: (*parser).callonListElementContinuationElement1567, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 1194, col: 13, offset: 37254}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "DocumentRevisionNumber", + pos: position{line: 1199, col: 1, offset: 37384}, + expr: &choiceExpr{ + pos: position{line: 1199, col: 27, offset: 37410}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1199, col: 27, offset: 37410}, + run: (*parser).callonDocumentRevisionNumber2, + expr: &seqExpr{ + pos: position{line: 1199, col: 27, offset: 37410}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1199, col: 27, offset: 37410}, + val: "v", + ignoreCase: true, + want: "\"v\"i", + }, + &charClassMatcher{ + pos: position{line: 1199, col: 32, offset: 37415}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + &oneOrMoreExpr{ + pos: position{line: 1199, col: 38, offset: 37421}, + expr: &charClassMatcher{ + pos: position{line: 1199, col: 38, offset: 37421}, + val: "[^:,\\r\\n]", + chars: []rune{':', ',', '\r', '\n'}, + ignoreCase: false, + inverted: true, }, - &actionExpr{ - pos: position{line: 2984, col: 18, offset: 96798}, - run: (*parser).callonListElementContinuationElement1570, - expr: &seqExpr{ - pos: position{line: 2984, col: 18, offset: 96798}, - exprs: []interface{}{ - &choiceExpr{ - pos: position{line: 2985, col: 9, offset: 96808}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2985, col: 9, offset: 96808}, - val: "'''", - ignoreCase: false, - want: "\"'''\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 11, offset: 96844}, - val: "***", - ignoreCase: false, - want: "\"***\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 19, offset: 96852}, - val: "* * *", - ignoreCase: false, - want: "\"* * *\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 29, offset: 96862}, - val: "---", - ignoreCase: false, - want: "\"---\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 37, offset: 96870}, - val: "- - -", - ignoreCase: false, - want: "\"- - -\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 47, offset: 96880}, - val: "___", - ignoreCase: false, - want: "\"___\"", - }, - &litMatcher{ - pos: position{line: 2986, col: 55, offset: 96888}, - val: "_ _ _", - ignoreCase: false, - want: "\"_ _ _\"", - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 2987, col: 11, offset: 96946}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1581, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1584, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1592, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1201, col: 5, offset: 37469}, + run: (*parser).callonDocumentRevisionNumber8, + expr: &seqExpr{ + pos: position{line: 1201, col: 5, offset: 37469}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 1201, col: 5, offset: 37469}, + expr: &litMatcher{ + pos: position{line: 1201, col: 5, offset: 37469}, + val: "v", + ignoreCase: true, + want: "\"v\"i", }, - &ruleRefExpr{ - pos: position{line: 1605, col: 11, offset: 52487}, - name: "ImageBlock", + }, + &charClassMatcher{ + pos: position{line: 1201, col: 11, offset: 37475}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + &oneOrMoreExpr{ + pos: position{line: 1201, col: 17, offset: 37481}, + expr: &charClassMatcher{ + pos: position{line: 1201, col: 17, offset: 37481}, + val: "[^:,\\r\\n]", + chars: []rune{':', ',', '\r', '\n'}, + ignoreCase: false, + inverted: true, }, - &actionExpr{ - pos: position{line: 2882, col: 5, offset: 93927}, - run: (*parser).callonListElementContinuationElement1600, - expr: &seqExpr{ - pos: position{line: 2882, col: 5, offset: 93927}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1604, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1607, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2883, col: 5, offset: 93951}, - label: "header", - expr: &zeroOrOneExpr{ - pos: position{line: 2883, col: 12, offset: 93958}, - expr: &actionExpr{ - pos: position{line: 2898, col: 5, offset: 94271}, - run: (*parser).callonListElementContinuationElement1616, - expr: &seqExpr{ - pos: position{line: 2898, col: 5, offset: 94271}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2898, col: 5, offset: 94271}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2898, col: 11, offset: 94277}, - expr: &actionExpr{ - pos: position{line: 2904, col: 5, offset: 94394}, - run: (*parser).callonListElementContinuationElement1620, - expr: &seqExpr{ - pos: position{line: 2904, col: 5, offset: 94394}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2904, col: 5, offset: 94394}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2904, col: 9, offset: 94398}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1624, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2905, col: 5, offset: 94410}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2905, col: 14, offset: 94419}, - expr: &actionExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - run: (*parser).callonListElementContinuationElement1628, - expr: &labeledExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - run: (*parser).callonListElementContinuationElement1630, - expr: &oneOrMoreExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - expr: &charClassMatcher{ - pos: position{line: 2937, col: 14, offset: 95216}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1634, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2899, col: 5, offset: 94299}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement1642, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1648, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1651, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2884, col: 5, offset: 93977}, - label: "rows", - expr: &zeroOrMoreExpr{ - pos: position{line: 2884, col: 10, offset: 93982}, - expr: &choiceExpr{ - pos: position{line: 2909, col: 13, offset: 94516}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2919, col: 5, offset: 94735}, - run: (*parser).callonListElementContinuationElement1661, - expr: &seqExpr{ - pos: position{line: 2919, col: 5, offset: 94735}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2919, col: 5, offset: 94735}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1668, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1671, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2920, col: 5, offset: 94758}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2920, col: 11, offset: 94764}, - expr: &actionExpr{ - pos: position{line: 2920, col: 12, offset: 94765}, - run: (*parser).callonListElementContinuationElement1682, - expr: &seqExpr{ - pos: position{line: 2920, col: 12, offset: 94765}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2920, col: 12, offset: 94765}, - label: "cell", - expr: &actionExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - run: (*parser).callonListElementContinuationElement1685, - expr: &seqExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2929, col: 5, offset: 95006}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1692, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1695, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2930, col: 5, offset: 95029}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement1705, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1711, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1714, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2931, col: 5, offset: 95044}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2931, col: 9, offset: 95048}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1723, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2931, col: 16, offset: 95055}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2931, col: 25, offset: 95064}, - expr: &actionExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - run: (*parser).callonListElementContinuationElement1727, - expr: &labeledExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - run: (*parser).callonListElementContinuationElement1729, - expr: &oneOrMoreExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - expr: &charClassMatcher{ - pos: position{line: 2937, col: 14, offset: 95216}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1733, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2923, col: 6, offset: 94827}, - alternatives: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2923, col: 6, offset: 94827}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement1742, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1748, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1751, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &andExpr{ - pos: position{line: 2923, col: 19, offset: 94840}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1763, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1766, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2912, col: 5, offset: 94583}, - run: (*parser).callonListElementContinuationElement1775, - expr: &seqExpr{ - pos: position{line: 2912, col: 5, offset: 94583}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2912, col: 5, offset: 94583}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1782, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1785, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2913, col: 5, offset: 94606}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2913, col: 11, offset: 94612}, - expr: &actionExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - run: (*parser).callonListElementContinuationElement1796, - expr: &seqExpr{ - pos: position{line: 2929, col: 5, offset: 95006}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2929, col: 5, offset: 95006}, - expr: &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1803, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1806, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2930, col: 5, offset: 95029}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement1816, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1822, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1825, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2931, col: 5, offset: 95044}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2931, col: 9, offset: 95048}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1834, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2931, col: 16, offset: 95055}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2931, col: 25, offset: 95064}, - expr: &actionExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - run: (*parser).callonListElementContinuationElement1838, - expr: &labeledExpr{ - pos: position{line: 2937, col: 5, offset: 95207}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - run: (*parser).callonListElementContinuationElement1840, - expr: &oneOrMoreExpr{ - pos: position{line: 2937, col: 14, offset: 95216}, - expr: &charClassMatcher{ - pos: position{line: 2937, col: 14, offset: 95216}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1844, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 2914, col: 5, offset: 94633}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonListElementContinuationElement1852, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1858, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1861, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2894, col: 22, offset: 94184}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2890, col: 19, offset: 94104}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2890, col: 19, offset: 94104}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2890, col: 26, offset: 94111}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1872, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1875, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1201, col: 28, offset: 37492}, + expr: &ruleRefExpr{ + pos: position{line: 1201, col: 28, offset: 37492}, + name: "Space", }, - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonListElementContinuationElement1884, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonListElementContinuationElement1890, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1894, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1853, col: 5, offset: 60754}, - run: (*parser).callonListElementContinuationElement1901, - expr: &seqExpr{ - pos: position{line: 1853, col: 5, offset: 60754}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1853, col: 5, offset: 60754}, - label: "kind", - expr: &choiceExpr{ - pos: position{line: 293, col: 19, offset: 9062}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 293, col: 19, offset: 9062}, - run: (*parser).callonListElementContinuationElement1905, - expr: &litMatcher{ - pos: position{line: 293, col: 19, offset: 9062}, - val: "TIP", - ignoreCase: false, - want: "\"TIP\"", - }, - }, - &actionExpr{ - pos: position{line: 295, col: 5, offset: 9100}, - run: (*parser).callonListElementContinuationElement1907, - expr: &litMatcher{ - pos: position{line: 295, col: 5, offset: 9100}, - val: "NOTE", - ignoreCase: false, - want: "\"NOTE\"", - }, - }, - &actionExpr{ - pos: position{line: 297, col: 5, offset: 9140}, - run: (*parser).callonListElementContinuationElement1909, - expr: &litMatcher{ - pos: position{line: 297, col: 5, offset: 9140}, - val: "IMPORTANT", - ignoreCase: false, - want: "\"IMPORTANT\"", - }, - }, - &actionExpr{ - pos: position{line: 299, col: 5, offset: 9190}, - run: (*parser).callonListElementContinuationElement1911, - expr: &litMatcher{ - pos: position{line: 299, col: 5, offset: 9190}, - val: "WARNING", - ignoreCase: false, - want: "\"WARNING\"", - }, - }, - &actionExpr{ - pos: position{line: 301, col: 5, offset: 9236}, - run: (*parser).callonListElementContinuationElement1913, - expr: &litMatcher{ - pos: position{line: 301, col: 5, offset: 9236}, - val: "CAUTION", - ignoreCase: false, - want: "\"CAUTION\"", - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1853, col: 27, offset: 60776}, - val: ": ", - ignoreCase: false, - want: "\": \"", - }, - &labeledExpr{ - pos: position{line: 1854, col: 5, offset: 60786}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonListElementContinuationElement1917, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonListElementContinuationElement1920, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonListElementContinuationElement1923, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1925, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1855, col: 5, offset: 60820}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1855, col: 16, offset: 60831}, - expr: &actionExpr{ - pos: position{line: 1856, col: 9, offset: 60841}, - run: (*parser).callonListElementContinuationElement1934, - expr: &seqExpr{ - pos: position{line: 1856, col: 9, offset: 60841}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1856, col: 9, offset: 60841}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonListElementContinuationElement1940, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1942, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1857, col: 9, offset: 60880}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 1857, col: 15, offset: 60886}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonListElementContinuationElement1949, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonListElementContinuationElement1955, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1959, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonListElementContinuationElement1966, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonListElementContinuationElement1969, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonListElementContinuationElement1972, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1974, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - run: (*parser).callonListElementContinuationElement1981, - expr: &seqExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1876, col: 5, offset: 61412}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - run: (*parser).callonListElementContinuationElement1984, - expr: &seqExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1883, col: 5, offset: 61697}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1883, col: 14, offset: 61706}, - run: (*parser).callonListElementContinuationElement1987, - expr: &seqExpr{ - pos: position{line: 1883, col: 14, offset: 61706}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonListElementContinuationElement1989, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 1883, col: 21, offset: 61713}, - expr: &charClassMatcher{ - pos: position{line: 1883, col: 21, offset: 61713}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1886, col: 5, offset: 61770}, - run: (*parser).callonListElementContinuationElement1994, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement1996, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1877, col: 5, offset: 61453}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1877, col: 16, offset: 61464}, - expr: &choiceExpr{ - pos: position{line: 1877, col: 17, offset: 61465}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonListElementContinuationElement2006, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonListElementContinuationElement2012, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement2016, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonListElementContinuationElement2023, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonListElementContinuationElement2026, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonListElementContinuationElement2029, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement2031, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1623, col: 5, offset: 53113}, - run: (*parser).callonListElementContinuationElement2038, - expr: &seqExpr{ - pos: position{line: 1623, col: 5, offset: 53113}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1623, col: 5, offset: 53113}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1623, col: 14, offset: 53122}, - run: (*parser).callonListElementContinuationElement2041, - expr: &oneOrMoreExpr{ - pos: position{line: 1623, col: 14, offset: 53122}, - expr: &charClassMatcher{ - pos: position{line: 1623, col: 14, offset: 53122}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonListElementContinuationElement2045, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + }, + &andExpr{ + pos: position{line: 1201, col: 35, offset: 37499}, + expr: &litMatcher{ + pos: position{line: 1201, col: 36, offset: 37500}, + val: ",", + ignoreCase: false, + want: "\",\"", }, }, }, @@ -48457,34 +6237,74 @@ var g = &grammar{ }, }, { - name: "Callout", - pos: position{line: 1781, col: 1, offset: 58295}, + name: "DocumentRevisionDate", + pos: position{line: 1205, col: 1, offset: 37540}, expr: &actionExpr{ - pos: position{line: 1783, col: 5, offset: 58373}, - run: (*parser).callonCallout1, + pos: position{line: 1205, col: 25, offset: 37564}, + run: (*parser).callonDocumentRevisionDate1, + expr: &oneOrMoreExpr{ + pos: position{line: 1205, col: 25, offset: 37564}, + expr: &charClassMatcher{ + pos: position{line: 1205, col: 25, offset: 37564}, + val: "[^:\\r\\n]", + chars: []rune{':', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "DocumentRevisionRemark", + pos: position{line: 1209, col: 1, offset: 37610}, + expr: &actionExpr{ + pos: position{line: 1209, col: 27, offset: 37636}, + run: (*parser).callonDocumentRevisionRemark1, + expr: &oneOrMoreExpr{ + pos: position{line: 1209, col: 27, offset: 37636}, + expr: &charClassMatcher{ + pos: position{line: 1209, col: 27, offset: 37636}, + val: "[^\\r\\r\\n]", + chars: []rune{'\r', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "ElementPlaceHolderDelimiter", + pos: position{line: 1216, col: 1, offset: 37883}, + expr: &litMatcher{ + pos: position{line: 1216, col: 32, offset: 37914}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + }, + { + name: "ElementPlaceHolder", + pos: position{line: 1218, col: 1, offset: 37924}, + expr: &actionExpr{ + pos: position{line: 1218, col: 23, offset: 37946}, + run: (*parser).callonElementPlaceHolder1, expr: &seqExpr{ - pos: position{line: 1783, col: 5, offset: 58373}, + pos: position{line: 1218, col: 23, offset: 37946}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1783, col: 5, offset: 58373}, - run: (*parser).callonCallout3, - }, - &litMatcher{ - pos: position{line: 1786, col: 5, offset: 58440}, - val: "<", - ignoreCase: false, - want: "\"<\"", + &ruleRefExpr{ + pos: position{line: 1218, col: 23, offset: 37946}, + name: "ElementPlaceHolderDelimiter", }, &labeledExpr{ - pos: position{line: 1786, col: 9, offset: 58444}, + pos: position{line: 1218, col: 51, offset: 37974}, label: "ref", expr: &actionExpr{ - pos: position{line: 1786, col: 14, offset: 58449}, - run: (*parser).callonCallout6, + pos: position{line: 1218, col: 56, offset: 37979}, + run: (*parser).callonElementPlaceHolder5, expr: &oneOrMoreExpr{ - pos: position{line: 1786, col: 14, offset: 58449}, + pos: position{line: 1218, col: 56, offset: 37979}, expr: &charClassMatcher{ - pos: position{line: 1786, col: 14, offset: 58449}, + pos: position{line: 1218, col: 56, offset: 37979}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -48493,69 +6313,45 @@ var g = &grammar{ }, }, }, + &ruleRefExpr{ + pos: position{line: 1218, col: 95, offset: 38018}, + name: "ElementPlaceHolderDelimiter", + }, + }, + }, + }, + }, + { + name: "LineBreak", + pos: position{line: 1225, col: 1, offset: 38374}, + expr: &actionExpr{ + pos: position{line: 1226, col: 5, offset: 38392}, + run: (*parser).callonLineBreak1, + expr: &seqExpr{ + pos: position{line: 1226, col: 5, offset: 38392}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 1226, col: 5, offset: 38392}, + run: (*parser).callonLineBreak3, + }, &litMatcher{ - pos: position{line: 1786, col: 62, offset: 58497}, - val: ">", + pos: position{line: 1229, col: 5, offset: 38494}, + val: "+", ignoreCase: false, - want: "\">\"", + want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 1786, col: 66, offset: 58501}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonCallout11, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 1229, col: 9, offset: 38498}, + expr: &ruleRefExpr{ + pos: position{line: 1229, col: 9, offset: 38498}, + name: "Space", }, }, &andExpr{ - pos: position{line: 1786, col: 73, offset: 58508}, - expr: &choiceExpr{ - pos: position{line: 1786, col: 75, offset: 58510}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonCallout15, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &ruleRefExpr{ - pos: position{line: 1786, col: 81, offset: 58516}, - name: "Callout", - }, - }, + pos: position{line: 1229, col: 16, offset: 38505}, + expr: &ruleRefExpr{ + pos: position{line: 1229, col: 18, offset: 38507}, + name: "EOL", }, }, }, @@ -48563,772 +6359,242 @@ var g = &grammar{ }, }, { - name: "ShortcutParagraph", - pos: position{line: 1812, col: 1, offset: 59377}, + name: "FrontMatter", + pos: position{line: 1236, col: 1, offset: 38755}, expr: &actionExpr{ - pos: position{line: 1813, col: 5, offset: 59403}, - run: (*parser).callonShortcutParagraph1, + pos: position{line: 1237, col: 5, offset: 38775}, + run: (*parser).callonFrontMatter1, expr: &seqExpr{ - pos: position{line: 1813, col: 5, offset: 59403}, + pos: position{line: 1237, col: 5, offset: 38775}, exprs: []interface{}{ - &andExpr{ - pos: position{line: 1813, col: 5, offset: 59403}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, + &andCodeExpr{ + pos: position{line: 1237, col: 5, offset: 38775}, + run: (*parser).callonFrontMatter3, }, - &andExpr{ - pos: position{line: 1814, col: 5, offset: 59514}, - expr: ¬Expr{ - pos: position{line: 1814, col: 7, offset: 59516}, - expr: &actionExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - run: (*parser).callonShortcutParagraph7, - expr: &seqExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1641, col: 5, offset: 53606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonShortcutParagraph10, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1641, col: 12, offset: 53613}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - run: (*parser).callonShortcutParagraph14, - expr: &seqExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1643, col: 9, offset: 53676}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - run: (*parser).callonShortcutParagraph17, - expr: &oneOrMoreExpr{ - pos: position{line: 1643, col: 16, offset: 53683}, - expr: &litMatcher{ - pos: position{line: 1643, col: 17, offset: 53684}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1647, col: 9, offset: 53784}, - run: (*parser).callonShortcutParagraph20, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - run: (*parser).callonShortcutParagraph21, - expr: &seqExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1666, col: 11, offset: 54501}, - expr: &charClassMatcher{ - pos: position{line: 1666, col: 12, offset: 54502}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1666, col: 20, offset: 54510}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - run: (*parser).callonShortcutParagraph26, - expr: &seqExpr{ - pos: position{line: 1668, col: 13, offset: 54627}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1668, col: 14, offset: 54628}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1668, col: 21, offset: 54635}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - run: (*parser).callonShortcutParagraph30, - expr: &seqExpr{ - pos: position{line: 1670, col: 13, offset: 54755}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1670, col: 14, offset: 54756}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1670, col: 21, offset: 54763}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - run: (*parser).callonShortcutParagraph34, - expr: &seqExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1672, col: 13, offset: 54883}, - expr: &charClassMatcher{ - pos: position{line: 1672, col: 14, offset: 54884}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1672, col: 26, offset: 54896}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - run: (*parser).callonShortcutParagraph39, - expr: &seqExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1674, col: 13, offset: 55016}, - expr: &charClassMatcher{ - pos: position{line: 1674, col: 14, offset: 55017}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1674, col: 26, offset: 55029}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonShortcutParagraph44, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, + &labeledExpr{ + pos: position{line: 1240, col: 5, offset: 38833}, + label: "frontmatter", + expr: &ruleRefExpr{ + pos: position{line: 1240, col: 18, offset: 38846}, + name: "YamlFrontMatter", }, }, - &andExpr{ - pos: position{line: 1815, col: 5, offset: 59547}, - expr: ¬Expr{ - pos: position{line: 1815, col: 7, offset: 59549}, - expr: &actionExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - run: (*parser).callonShortcutParagraph49, - expr: &seqExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1691, col: 5, offset: 55568}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonShortcutParagraph52, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1691, col: 12, offset: 55575}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1691, col: 20, offset: 55583}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - run: (*parser).callonShortcutParagraph56, - expr: &seqExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1693, col: 9, offset: 55640}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - run: (*parser).callonShortcutParagraph59, - expr: &oneOrMoreExpr{ - pos: position{line: 1693, col: 16, offset: 55647}, - expr: &litMatcher{ - pos: position{line: 1693, col: 17, offset: 55648}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1697, col: 9, offset: 55748}, - run: (*parser).callonShortcutParagraph62, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1714, col: 14, offset: 56455}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1714, col: 21, offset: 56462}, - run: (*parser).callonShortcutParagraph64, - expr: &litMatcher{ - pos: position{line: 1714, col: 22, offset: 56463}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonShortcutParagraph66, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, + }, + }, + }, + }, + { + name: "YamlFrontMatter", + pos: position{line: 1245, col: 1, offset: 38909}, + expr: &actionExpr{ + pos: position{line: 1245, col: 20, offset: 38928}, + run: (*parser).callonYamlFrontMatter1, + expr: &seqExpr{ + pos: position{line: 1245, col: 20, offset: 38928}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1245, col: 20, offset: 38928}, + name: "YamlFrontMatterDelimiter", + }, + &labeledExpr{ + pos: position{line: 1245, col: 45, offset: 38953}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 1245, col: 53, offset: 38961}, + expr: &ruleRefExpr{ + pos: position{line: 1245, col: 54, offset: 38962}, + name: "YamlFrontMatterContent", }, }, }, - &andExpr{ - pos: position{line: 1816, col: 5, offset: 59582}, - expr: ¬Expr{ - pos: position{line: 1816, col: 7, offset: 59584}, - expr: &choiceExpr{ - pos: position{line: 293, col: 19, offset: 9062}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 293, col: 19, offset: 9062}, - run: (*parser).callonShortcutParagraph72, - expr: &litMatcher{ - pos: position{line: 293, col: 19, offset: 9062}, - val: "TIP", - ignoreCase: false, - want: "\"TIP\"", - }, - }, - &actionExpr{ - pos: position{line: 295, col: 5, offset: 9100}, - run: (*parser).callonShortcutParagraph74, - expr: &litMatcher{ - pos: position{line: 295, col: 5, offset: 9100}, - val: "NOTE", - ignoreCase: false, - want: "\"NOTE\"", - }, - }, - &actionExpr{ - pos: position{line: 297, col: 5, offset: 9140}, - run: (*parser).callonShortcutParagraph76, - expr: &litMatcher{ - pos: position{line: 297, col: 5, offset: 9140}, - val: "IMPORTANT", - ignoreCase: false, - want: "\"IMPORTANT\"", - }, - }, - &actionExpr{ - pos: position{line: 299, col: 5, offset: 9190}, - run: (*parser).callonShortcutParagraph78, - expr: &litMatcher{ - pos: position{line: 299, col: 5, offset: 9190}, - val: "WARNING", - ignoreCase: false, - want: "\"WARNING\"", - }, - }, - &actionExpr{ - pos: position{line: 301, col: 5, offset: 9236}, - run: (*parser).callonShortcutParagraph80, - expr: &litMatcher{ - pos: position{line: 301, col: 5, offset: 9236}, - val: "CAUTION", - ignoreCase: false, - want: "\"CAUTION\"", - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1245, col: 79, offset: 38987}, + name: "YamlFrontMatterDelimiter", }, - &labeledExpr{ - pos: position{line: 1817, col: 5, offset: 59605}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonShortcutParagraph83, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonShortcutParagraph86, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonShortcutParagraph89, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonShortcutParagraph91, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + }, + }, + }, + }, + { + name: "YamlFrontMatterDelimiter", + pos: position{line: 1249, col: 1, offset: 39071}, + expr: &seqExpr{ + pos: position{line: 1249, col: 30, offset: 39100}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1249, col: 30, offset: 39100}, + val: "---", + ignoreCase: false, + want: "\"---\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1249, col: 36, offset: 39106}, + expr: &ruleRefExpr{ + pos: position{line: 1249, col: 36, offset: 39106}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 1249, col: 43, offset: 39113}, + name: "EOL", + }, + }, + }, + }, + { + name: "YamlFrontMatterContent", + pos: position{line: 1251, col: 1, offset: 39118}, + expr: &actionExpr{ + pos: position{line: 1251, col: 27, offset: 39144}, + run: (*parser).callonYamlFrontMatterContent1, + expr: &zeroOrMoreExpr{ + pos: position{line: 1251, col: 27, offset: 39144}, + expr: &oneOrMoreExpr{ + pos: position{line: 1251, col: 28, offset: 39145}, + expr: &seqExpr{ + pos: position{line: 1251, col: 29, offset: 39146}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1251, col: 29, offset: 39146}, + expr: &ruleRefExpr{ + pos: position{line: 1251, col: 30, offset: 39147}, + name: "YamlFrontMatterDelimiter", }, }, + &anyMatcher{ + line: 1251, col: 55, offset: 39172, + }, }, }, - &andCodeExpr{ - pos: position{line: 1818, col: 5, offset: 59639}, - run: (*parser).callonShortcutParagraph98, + }, + }, + }, + }, + { + name: "FrontMatterFragment", + pos: position{line: 1255, col: 1, offset: 39218}, + expr: &choiceExpr{ + pos: position{line: 1255, col: 24, offset: 39241}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1255, col: 24, offset: 39241}, + name: "FrontMatterDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 1255, col: 47, offset: 39264}, + name: "BlankLine", + }, + &ruleRefExpr{ + pos: position{line: 1255, col: 59, offset: 39276}, + name: "FrontMatterLine", + }, + }, + }, + }, + { + name: "FrontMatterDelimiter", + pos: position{line: 1257, col: 1, offset: 39293}, + expr: &seqExpr{ + pos: position{line: 1257, col: 26, offset: 39318}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1257, col: 26, offset: 39318}, + val: "---", + ignoreCase: false, + want: "\"---\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1257, col: 32, offset: 39324}, + expr: &ruleRefExpr{ + pos: position{line: 1257, col: 32, offset: 39324}, + name: "Space", }, - &labeledExpr{ - pos: position{line: 1825, col: 5, offset: 60001}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1825, col: 16, offset: 60012}, - expr: &actionExpr{ - pos: position{line: 1826, col: 9, offset: 60022}, - run: (*parser).callonShortcutParagraph101, - expr: &seqExpr{ - pos: position{line: 1826, col: 9, offset: 60022}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1826, col: 9, offset: 60022}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, + }, + &ruleRefExpr{ + pos: position{line: 1257, col: 39, offset: 39331}, + name: "EOF", + }, + }, + }, + }, + { + name: "FrontMatterLine", + pos: position{line: 1259, col: 1, offset: 39336}, + expr: &actionExpr{ + pos: position{line: 1259, col: 20, offset: 39355}, + run: (*parser).callonFrontMatterLine1, + expr: &zeroOrMoreExpr{ + pos: position{line: 1259, col: 20, offset: 39355}, + expr: &anyMatcher{ + line: 1259, col: 21, offset: 39356, + }, + }, + }, + }, + { + name: "InlineElement", + pos: position{line: 1276, col: 1, offset: 39806}, + expr: &actionExpr{ + pos: position{line: 1277, col: 5, offset: 39829}, + run: (*parser).callonInlineElement1, + expr: &labeledExpr{ + pos: position{line: 1277, col: 5, offset: 39829}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 1278, col: 9, offset: 39847}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1278, col: 9, offset: 39847}, + name: "InlineWord", + }, + &ruleRefExpr{ + pos: position{line: 1279, col: 11, offset: 39908}, + name: "Spaces", + }, + &ruleRefExpr{ + pos: position{line: 1280, col: 11, offset: 39926}, + name: "LineBreak", + }, + &seqExpr{ + pos: position{line: 1281, col: 11, offset: 39946}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1281, col: 11, offset: 39946}, + expr: &ruleRefExpr{ + pos: position{line: 1281, col: 12, offset: 39947}, + name: "EOL", + }, + }, + &choiceExpr{ + pos: position{line: 1282, col: 13, offset: 39989}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1282, col: 13, offset: 39989}, + name: "Symbol", }, - ¬Expr{ - pos: position{line: 1827, col: 9, offset: 60036}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonShortcutParagraph107, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonShortcutParagraph113, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonShortcutParagraph116, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1283, col: 15, offset: 40010}, + name: "Quote", }, - ¬Expr{ - pos: position{line: 1828, col: 9, offset: 60055}, - expr: &ruleRefExpr{ - pos: position{line: 1828, col: 10, offset: 60056}, - name: "BlockAttributes", - }, + &ruleRefExpr{ + pos: position{line: 1284, col: 15, offset: 40030}, + name: "AttributeReference", }, - ¬Expr{ - pos: position{line: 1829, col: 9, offset: 60080}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonShortcutParagraph129, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonShortcutParagraph131, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1285, col: 15, offset: 40064}, + name: "InlineMacro", }, - &labeledExpr{ - pos: position{line: 1830, col: 9, offset: 60119}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 1830, col: 15, offset: 60125}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonShortcutParagraph138, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonShortcutParagraph144, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonShortcutParagraph148, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonShortcutParagraph155, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonShortcutParagraph158, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonShortcutParagraph161, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonShortcutParagraph163, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1286, col: 15, offset: 40090}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 1287, col: 15, offset: 40171}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 1289, col: 15, offset: 40271}, + name: "AnyChar", }, }, }, @@ -49340,480 +6606,71 @@ var g = &grammar{ }, }, { - name: "Paragraph", - pos: position{line: 1837, col: 1, offset: 60322}, - expr: &actionExpr{ - pos: position{line: 1838, col: 5, offset: 60340}, - run: (*parser).callonParagraph1, - expr: &seqExpr{ - pos: position{line: 1838, col: 5, offset: 60340}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1838, col: 5, offset: 60340}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonParagraph4, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonParagraph7, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonParagraph10, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonParagraph12, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1839, col: 5, offset: 60374}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1839, col: 16, offset: 60385}, - expr: &actionExpr{ - pos: position{line: 1840, col: 9, offset: 60395}, - run: (*parser).callonParagraph21, - expr: &seqExpr{ - pos: position{line: 1840, col: 9, offset: 60395}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1840, col: 9, offset: 60395}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - ¬Expr{ - pos: position{line: 1841, col: 9, offset: 60408}, - expr: &actionExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - run: (*parser).callonParagraph27, - expr: &seqExpr{ - pos: position{line: 690, col: 14, offset: 22312}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 690, col: 14, offset: 22312}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 690, col: 19, offset: 22317}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonParagraph33, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonParagraph36, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1842, col: 9, offset: 60427}, - expr: &ruleRefExpr{ - pos: position{line: 1842, col: 10, offset: 60428}, - name: "BlockAttributes", - }, - }, - ¬Expr{ - pos: position{line: 1843, col: 9, offset: 60452}, - expr: &seqExpr{ - pos: position{line: 1593, col: 34, offset: 52132}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1593, col: 34, offset: 52132}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1593, col: 38, offset: 52136}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonParagraph49, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonParagraph51, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1844, col: 9, offset: 60491}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 1844, col: 15, offset: 60497}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - run: (*parser).callonParagraph58, - expr: &seqExpr{ - pos: position{line: 2770, col: 22, offset: 90854}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2775, col: 31, offset: 91075}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2775, col: 36, offset: 91080}, - expr: &litMatcher{ - pos: position{line: 2775, col: 37, offset: 91081}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2770, col: 49, offset: 90881}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - run: (*parser).callonParagraph64, - expr: &zeroOrMoreExpr{ - pos: position{line: 2777, col: 29, offset: 91116}, - expr: &charClassMatcher{ - pos: position{line: 2777, col: 29, offset: 91116}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonParagraph68, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - run: (*parser).callonParagraph75, - expr: &seqExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1865, col: 5, offset: 61130}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - run: (*parser).callonParagraph78, - expr: &oneOrMoreExpr{ - pos: position{line: 1865, col: 14, offset: 61139}, - expr: &charClassMatcher{ - pos: position{line: 1865, col: 14, offset: 61139}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1868, col: 5, offset: 61246}, - run: (*parser).callonParagraph81, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonParagraph83, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + name: "InlineAnchor", + pos: position{line: 1297, col: 1, offset: 40533}, + expr: &choiceExpr{ + pos: position{line: 1299, col: 5, offset: 40569}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1299, col: 5, offset: 40569}, + run: (*parser).callonInlineAnchor2, + expr: &seqExpr{ + pos: position{line: 1299, col: 5, offset: 40569}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1299, col: 5, offset: 40569}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &litMatcher{ + pos: position{line: 1299, col: 9, offset: 40573}, + val: "[[", + ignoreCase: false, + want: "\"[[\"", + }, + &labeledExpr{ + pos: position{line: 1299, col: 14, offset: 40578}, + label: "id", + expr: &ruleRefExpr{ + pos: position{line: 1299, col: 18, offset: 40582}, + name: "Id", }, }, + &litMatcher{ + pos: position{line: 1299, col: 22, offset: 40586}, + val: "]]", + ignoreCase: false, + want: "\"]]\"", + }, }, }, }, - }, - }, - }, - { - name: "QuotedText", - pos: position{line: 1896, col: 1, offset: 62232}, - expr: &choiceExpr{ - pos: position{line: 1900, col: 5, offset: 62453}, - alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1900, col: 5, offset: 62453}, - run: (*parser).callonQuotedText2, + pos: position{line: 1305, col: 5, offset: 40772}, + run: (*parser).callonInlineAnchor9, expr: &seqExpr{ - pos: position{line: 1900, col: 5, offset: 62453}, + pos: position{line: 1305, col: 5, offset: 40772}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1900, col: 5, offset: 62453}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 1900, col: 16, offset: 62464}, - expr: &actionExpr{ - pos: position{line: 1900, col: 17, offset: 62465}, - run: (*parser).callonQuotedText6, - expr: &ruleRefExpr{ - pos: position{line: 1900, col: 17, offset: 62465}, - name: "LongHandAttributes", - }, - }, - }, + &litMatcher{ + pos: position{line: 1305, col: 5, offset: 40772}, + val: "[[", + ignoreCase: false, + want: "\"[[\"", }, &labeledExpr{ - pos: position{line: 1903, col: 5, offset: 62553}, - label: "text", + pos: position{line: 1305, col: 10, offset: 40777}, + label: "id", expr: &ruleRefExpr{ - pos: position{line: 1903, col: 10, offset: 62558}, - name: "EscapedQuotedText", - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1909, col: 5, offset: 62742}, - run: (*parser).callonQuotedText10, - expr: &seqExpr{ - pos: position{line: 1909, col: 5, offset: 62742}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1909, col: 5, offset: 62742}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 1909, col: 16, offset: 62753}, - expr: &ruleRefExpr{ - pos: position{line: 1909, col: 17, offset: 62754}, - name: "LongHandAttributes", - }, + pos: position{line: 1305, col: 14, offset: 40781}, + name: "Id", }, }, - &labeledExpr{ - pos: position{line: 1910, col: 5, offset: 62780}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 1910, col: 11, offset: 62786}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1910, col: 11, offset: 62786}, - name: "UnconstrainedQuotedText", - }, - &ruleRefExpr{ - pos: position{line: 1910, col: 37, offset: 62812}, - name: "ConstrainedQuotedText", - }, - }, - }, + &litMatcher{ + pos: position{line: 1305, col: 18, offset: 40785}, + val: "]]", + ignoreCase: false, + want: "\"]]\"", }, }, }, @@ -49822,112 +6679,69 @@ var g = &grammar{ }, }, { - name: "ConstrainedQuotedText", - pos: position{line: 1919, col: 1, offset: 63088}, - expr: &choiceExpr{ - pos: position{line: 1920, col: 5, offset: 63118}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1920, col: 5, offset: 63118}, - name: "SingleQuoteBoldText", - }, - &ruleRefExpr{ - pos: position{line: 1921, col: 7, offset: 63145}, - name: "SingleQuoteItalicText", - }, - &ruleRefExpr{ - pos: position{line: 1922, col: 7, offset: 63173}, - name: "SingleQuoteMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 1923, col: 7, offset: 63201}, - name: "SingleQuoteMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 1924, col: 7, offset: 63233}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 1925, col: 7, offset: 63254}, - name: "SuperscriptText", - }, - }, - }, - }, - { - name: "UnconstrainedQuotedText", - pos: position{line: 1927, col: 1, offset: 63272}, - expr: &choiceExpr{ - pos: position{line: 1928, col: 5, offset: 63304}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1928, col: 5, offset: 63304}, - name: "DoubleQuoteBoldText", - }, - &ruleRefExpr{ - pos: position{line: 1929, col: 7, offset: 63330}, - name: "DoubleQuoteItalicText", - }, - &ruleRefExpr{ - pos: position{line: 1930, col: 7, offset: 63358}, - name: "DoubleQuoteMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 1931, col: 7, offset: 63386}, - name: "DoubleQuoteMonospaceText", + name: "InlineButton", + pos: position{line: 1312, col: 1, offset: 41120}, + expr: &actionExpr{ + pos: position{line: 1313, col: 5, offset: 41141}, + run: (*parser).callonInlineButton1, + expr: &seqExpr{ + pos: position{line: 1313, col: 5, offset: 41141}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 1313, col: 5, offset: 41141}, + run: (*parser).callonInlineButton3, + }, + &litMatcher{ + pos: position{line: 1316, col: 5, offset: 41200}, + val: "btn:", + ignoreCase: false, + want: "\"btn:\"", + }, + &labeledExpr{ + pos: position{line: 1316, col: 12, offset: 41207}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 1316, col: 24, offset: 41219}, + name: "InlineAttributes", + }, + }, }, }, }, }, { - name: "EscapedQuotedText", - pos: position{line: 1933, col: 1, offset: 63412}, + name: "InlineMenu", + pos: position{line: 1323, col: 1, offset: 41507}, expr: &actionExpr{ - pos: position{line: 1934, col: 5, offset: 63493}, - run: (*parser).callonEscapedQuotedText1, + pos: position{line: 1324, col: 5, offset: 41526}, + run: (*parser).callonInlineMenu1, expr: &seqExpr{ - pos: position{line: 1934, col: 5, offset: 63493}, + pos: position{line: 1324, col: 5, offset: 41526}, exprs: []interface{}{ - &andExpr{ - pos: position{line: 1934, col: 5, offset: 63493}, - expr: &litMatcher{ - pos: position{line: 1934, col: 7, offset: 63495}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", + &andCodeExpr{ + pos: position{line: 1324, col: 5, offset: 41526}, + run: (*parser).callonInlineMenu3, + }, + &litMatcher{ + pos: position{line: 1327, col: 5, offset: 41585}, + val: "menu:", + ignoreCase: false, + want: "\"menu:\"", + }, + &labeledExpr{ + pos: position{line: 1327, col: 13, offset: 41593}, + label: "id", + expr: &ruleRefExpr{ + pos: position{line: 1327, col: 17, offset: 41597}, + name: "Id", }, }, &labeledExpr{ - pos: position{line: 1935, col: 5, offset: 63504}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1936, col: 9, offset: 63522}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1936, col: 9, offset: 63522}, - name: "EscapedBoldText", - }, - &ruleRefExpr{ - pos: position{line: 1937, col: 11, offset: 63549}, - name: "EscapedItalicText", - }, - &ruleRefExpr{ - pos: position{line: 1938, col: 11, offset: 63577}, - name: "EscapedMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 1939, col: 11, offset: 63605}, - name: "EscapedMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 1940, col: 11, offset: 63636}, - name: "EscapedSubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 1941, col: 11, offset: 63667}, - name: "EscapedSuperscriptText", - }, - }, + pos: position{line: 1327, col: 21, offset: 41601}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 1327, col: 33, offset: 41613}, + name: "InlineAttributes", }, }, }, @@ -49935,1559 +6749,203 @@ var g = &grammar{ }, }, { - name: "BoldText", - pos: position{line: 1961, col: 1, offset: 64194}, - expr: &choiceExpr{ - pos: position{line: 1961, col: 13, offset: 64206}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 1961, col: 13, offset: 64206}, - name: "DoubleQuoteBoldText", - }, - &ruleRefExpr{ - pos: position{line: 1961, col: 35, offset: 64228}, - name: "SingleQuoteBoldText", - }, - }, - }, - }, - { - name: "DoubleQuoteBoldText", - pos: position{line: 1975, col: 1, offset: 64590}, + name: "IndexTerm", + pos: position{line: 1334, col: 1, offset: 41912}, expr: &actionExpr{ - pos: position{line: 1976, col: 5, offset: 64618}, - run: (*parser).callonDoubleQuoteBoldText1, + pos: position{line: 1334, col: 14, offset: 41925}, + run: (*parser).callonIndexTerm1, expr: &seqExpr{ - pos: position{line: 1976, col: 5, offset: 64618}, + pos: position{line: 1334, col: 14, offset: 41925}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1973, col: 33, offset: 64584}, - val: "**", + pos: position{line: 1334, col: 14, offset: 41925}, + val: "((", ignoreCase: false, - want: "\"**\"", + want: "\"((\"", }, &labeledExpr{ - pos: position{line: 1977, col: 5, offset: 64652}, - label: "elements", + pos: position{line: 1334, col: 19, offset: 41930}, + label: "term", expr: &ruleRefExpr{ - pos: position{line: 1977, col: 15, offset: 64662}, - name: "DoubleQuoteBoldTextElements", + pos: position{line: 1334, col: 25, offset: 41936}, + name: "IndexTermContent", }, }, &litMatcher{ - pos: position{line: 1973, col: 33, offset: 64584}, - val: "**", + pos: position{line: 1334, col: 43, offset: 41954}, + val: "))", ignoreCase: false, - want: "\"**\"", + want: "\"))\"", }, }, }, }, }, { - name: "DoubleQuoteBoldTextElements", - pos: position{line: 1982, col: 1, offset: 64819}, - expr: &oneOrMoreExpr{ - pos: position{line: 1982, col: 32, offset: 64850}, - expr: &ruleRefExpr{ - pos: position{line: 1982, col: 32, offset: 64850}, - name: "DoubleQuoteBoldTextElement", - }, - }, - }, - { - name: "DoubleQuoteBoldTextElement", - pos: position{line: 1984, col: 1, offset: 64881}, + name: "IndexTermContent", + pos: position{line: 1338, col: 1, offset: 42023}, expr: &actionExpr{ - pos: position{line: 1985, col: 5, offset: 64916}, - run: (*parser).callonDoubleQuoteBoldTextElement1, - expr: &seqExpr{ - pos: position{line: 1985, col: 5, offset: 64916}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1985, col: 5, offset: 64916}, - expr: &litMatcher{ - pos: position{line: 1973, col: 33, offset: 64584}, - val: "**", - ignoreCase: false, - want: "\"**\"", - }, - }, - &labeledExpr{ - pos: position{line: 1986, col: 5, offset: 64950}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1987, col: 9, offset: 64968}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1966, col: 5, offset: 64342}, - run: (*parser).callonDoubleQuoteBoldTextElement7, - expr: &seqExpr{ - pos: position{line: 1966, col: 5, offset: 64342}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1966, col: 5, offset: 64342}, - expr: &charClassMatcher{ - pos: position{line: 1966, col: 5, offset: 64342}, - val: "[,?!;0-9\\pL]", - chars: []rune{',', '?', '!', ';'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 1966, col: 19, offset: 64356}, - expr: &choiceExpr{ - pos: position{line: 1966, col: 21, offset: 64358}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteBoldTextElement13, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1963, col: 22, offset: 64316}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, + pos: position{line: 1338, col: 21, offset: 42043}, + run: (*parser).callonIndexTermContent1, + expr: &labeledExpr{ + pos: position{line: 1338, col: 21, offset: 42043}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 1338, col: 30, offset: 42052}, + expr: &choiceExpr{ + pos: position{line: 1338, col: 31, offset: 42053}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1338, col: 31, offset: 42053}, + name: "Word", + }, + &ruleRefExpr{ + pos: position{line: 1338, col: 38, offset: 42060}, + name: "QuotedText", + }, + &ruleRefExpr{ + pos: position{line: 1338, col: 51, offset: 42073}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 1338, col: 59, offset: 42081}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 1338, col: 78, offset: 42100}, + name: "ElementPlaceHolder", + }, + &actionExpr{ + pos: position{line: 1338, col: 99, offset: 42121}, + run: (*parser).callonIndexTermContent10, + expr: &seqExpr{ + pos: position{line: 1338, col: 100, offset: 42122}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1338, col: 100, offset: 42122}, + expr: &litMatcher{ + pos: position{line: 1338, col: 101, offset: 42123}, + val: "))", + ignoreCase: false, + want: "\"))\"", }, }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDoubleQuoteBoldTextElement16, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &anyMatcher{ + line: 1338, col: 106, offset: 42128, }, }, }, - &seqExpr{ - pos: position{line: 1989, col: 11, offset: 65041}, + }, + }, + }, + }, + }, + }, + }, + { + name: "ConcealedIndexTerm", + pos: position{line: 1344, col: 1, offset: 42234}, + expr: &actionExpr{ + pos: position{line: 1344, col: 23, offset: 42256}, + run: (*parser).callonConcealedIndexTerm1, + expr: &seqExpr{ + pos: position{line: 1344, col: 23, offset: 42256}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1344, col: 23, offset: 42256}, + val: "(((", + ignoreCase: false, + want: "\"(((\"", + }, + &labeledExpr{ + pos: position{line: 1344, col: 29, offset: 42262}, + label: "term1", + expr: &ruleRefExpr{ + pos: position{line: 1344, col: 36, offset: 42269}, + name: "ConcealedIndexTermContent", + }, + }, + &labeledExpr{ + pos: position{line: 1345, col: 5, offset: 42301}, + label: "term2", + expr: &zeroOrOneExpr{ + pos: position{line: 1345, col: 11, offset: 42307}, + expr: &actionExpr{ + pos: position{line: 1345, col: 12, offset: 42308}, + run: (*parser).callonConcealedIndexTerm8, + expr: &seqExpr{ + pos: position{line: 1345, col: 12, offset: 42308}, exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteBoldTextElement20, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + &zeroOrMoreExpr{ + pos: position{line: 1345, col: 12, offset: 42308}, + expr: &ruleRefExpr{ + pos: position{line: 1345, col: 12, offset: 42308}, + name: "Space", }, }, - ¬Expr{ - pos: position{line: 1989, col: 19, offset: 65049}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteBoldTextElement26, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 1345, col: 19, offset: 42315}, + val: ",", + ignoreCase: false, + want: "\",\"", }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteBoldTextElement31, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteBoldTextElement33, + &zeroOrMoreExpr{ + pos: position{line: 1345, col: 23, offset: 42319}, + expr: &ruleRefExpr{ + pos: position{line: 1345, col: 23, offset: 42319}, + name: "Space", }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonDoubleQuoteBoldTextElement36, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteBoldTextElement40, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteBoldTextElement47, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteBoldTextElement52, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteBoldTextElement54, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonDoubleQuoteBoldTextElement58, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteBoldTextElement62, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteBoldTextElement69, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteBoldTextElement74, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteBoldTextElement76, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteBoldTextElement80, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteBoldTextElement84, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteBoldTextElement90, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteBoldTextElement94, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, + }, + &labeledExpr{ + pos: position{line: 1345, col: 30, offset: 42326}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1345, col: 39, offset: 42335}, + name: "ConcealedIndexTermContent", }, }, }, }, - &ruleRefExpr{ - pos: position{line: 1991, col: 11, offset: 65131}, - name: "InlineMacro", - }, - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonDoubleQuoteBoldTextElement101, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", + }, + }, + }, + &labeledExpr{ + pos: position{line: 1346, col: 5, offset: 42393}, + label: "term3", + expr: &zeroOrOneExpr{ + pos: position{line: 1346, col: 11, offset: 42399}, + expr: &actionExpr{ + pos: position{line: 1346, col: 12, offset: 42400}, + run: (*parser).callonConcealedIndexTerm19, + expr: &seqExpr{ + pos: position{line: 1346, col: 12, offset: 42400}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1346, col: 12, offset: 42400}, + expr: &ruleRefExpr{ + pos: position{line: 1346, col: 12, offset: 42400}, + name: "Space", }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteBoldTextElement105, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteBoldTextElement107, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteBoldTextElement109, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteBoldTextElement111, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteBoldTextElement113, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteBoldTextElement115, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteBoldTextElement117, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteBoldTextElement119, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteBoldTextElement121, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteBoldTextElement123, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteBoldTextElement125, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteBoldTextElement128, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteBoldTextElement132, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteBoldTextElement139, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteBoldTextElement141, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteBoldTextElement146, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteBoldTextElement153, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteBoldTextElement155, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteBoldTextElement157, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteBoldTextElement159, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteBoldTextElement161, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteBoldTextElement163, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteBoldTextElement165, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteBoldTextElement167, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteBoldTextElement169, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteBoldTextElement171, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteBoldTextElement173, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteBoldTextElement175, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteBoldTextElement177, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteBoldTextElement180, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteBoldTextElement184, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteBoldTextElement191, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteBoldTextElement193, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteBoldTextElement198, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteBoldTextElement205, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteBoldTextElement207, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteBoldTextElement209, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteBoldTextElement211, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonDoubleQuoteBoldTextElement213, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonDoubleQuoteBoldTextElement219, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteBoldTextElement225, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteBoldTextElement227, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonDoubleQuoteBoldTextElement230, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonDoubleQuoteBoldTextElement232, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteBoldTextElement236, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteBoldTextElement240, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonDoubleQuoteBoldTextElement246, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteBoldTextElement251, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteBoldTextElement255, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteBoldTextElement261, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteBoldTextElement265, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonDoubleQuoteBoldTextElement271, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonDoubleQuoteBoldTextElement274, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteBoldTextElement278, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonDoubleQuoteBoldTextElement282, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 1994, col: 11, offset: 65247}, - name: "QuotedTextInDoubleQuoteBoldText", - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonDoubleQuoteBoldTextElement285, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonDoubleQuoteBoldTextElement289, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &charClassMatcher{ - pos: position{line: 2013, col: 5, offset: 65759}, - val: "[^\\r\\n*]", - chars: []rune{'\r', '\n', '*'}, - ignoreCase: false, - inverted: true, - }, - &actionExpr{ - pos: position{line: 2014, col: 7, offset: 65856}, - run: (*parser).callonDoubleQuoteBoldTextElement294, - expr: &seqExpr{ - pos: position{line: 2014, col: 7, offset: 65856}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1973, col: 33, offset: 64584}, - val: "**", - ignoreCase: false, - want: "\"**\"", - }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonDoubleQuoteBoldTextElement297, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + }, + &litMatcher{ + pos: position{line: 1346, col: 19, offset: 42407}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1346, col: 23, offset: 42411}, + expr: &ruleRefExpr{ + pos: position{line: 1346, col: 23, offset: 42411}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 1346, col: 30, offset: 42418}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1346, col: 39, offset: 42427}, + name: "ConcealedIndexTermContent", }, }, }, @@ -51495,61 +6953,34 @@ var g = &grammar{ }, }, }, + &litMatcher{ + pos: position{line: 1347, col: 5, offset: 42485}, + val: ")))", + ignoreCase: false, + want: "\")))\"", + }, }, }, }, }, { - name: "QuotedTextInDoubleQuoteBoldText", - pos: position{line: 2000, col: 1, offset: 65401}, + name: "ConcealedIndexTermContent", + pos: position{line: 1351, col: 1, offset: 42564}, expr: &actionExpr{ - pos: position{line: 2001, col: 5, offset: 65441}, - run: (*parser).callonQuotedTextInDoubleQuoteBoldText1, - expr: &seqExpr{ - pos: position{line: 2001, col: 5, offset: 65441}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2001, col: 5, offset: 65441}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 2001, col: 16, offset: 65452}, - expr: &ruleRefExpr{ - pos: position{line: 2001, col: 17, offset: 65453}, - name: "LongHandAttributes", - }, + pos: position{line: 1351, col: 30, offset: 42593}, + run: (*parser).callonConcealedIndexTermContent1, + expr: &oneOrMoreExpr{ + pos: position{line: 1351, col: 30, offset: 42593}, + expr: &choiceExpr{ + pos: position{line: 1351, col: 31, offset: 42594}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1351, col: 31, offset: 42594}, + name: "Alphanum", }, - }, - &labeledExpr{ - pos: position{line: 2002, col: 5, offset: 65479}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 2003, col: 9, offset: 65494}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2003, col: 9, offset: 65494}, - name: "SingleQuoteBoldText", - }, - &ruleRefExpr{ - pos: position{line: 2004, col: 11, offset: 65524}, - name: "ItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2005, col: 11, offset: 65545}, - name: "MarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2006, col: 11, offset: 65566}, - name: "MonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2007, col: 11, offset: 65590}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2008, col: 11, offset: 65614}, - name: "SuperscriptText", - }, - }, + &ruleRefExpr{ + pos: position{line: 1351, col: 42, offset: 42605}, + name: "Space", }, }, }, @@ -51557,564 +6988,413 @@ var g = &grammar{ }, }, { - name: "SingleQuoteBoldText", - pos: position{line: 2025, col: 1, offset: 66243}, + name: "ImageBlock", + pos: position{line: 1358, col: 1, offset: 42837}, expr: &actionExpr{ - pos: position{line: 2026, col: 4, offset: 66270}, - run: (*parser).callonSingleQuoteBoldText1, + pos: position{line: 1359, col: 5, offset: 42856}, + run: (*parser).callonImageBlock1, expr: &seqExpr{ - pos: position{line: 2026, col: 4, offset: 66270}, + pos: position{line: 1359, col: 5, offset: 42856}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2021, col: 38, offset: 66197}, - val: "*", + pos: position{line: 1359, col: 5, offset: 42856}, + val: "image::", ignoreCase: false, - want: "\"*\"", + want: "\"image::\"", }, &labeledExpr{ - pos: position{line: 2027, col: 5, offset: 66308}, - label: "elements", + pos: position{line: 1359, col: 15, offset: 42866}, + label: "path", expr: &ruleRefExpr{ - pos: position{line: 2027, col: 15, offset: 66318}, - name: "SingleQuoteBoldTextElements", + pos: position{line: 1359, col: 21, offset: 42872}, + name: "Location", }, }, - &litMatcher{ - pos: position{line: 2023, col: 36, offset: 66237}, - val: "*", - ignoreCase: false, - want: "\"*\"", + &labeledExpr{ + pos: position{line: 1359, col: 31, offset: 42882}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 1359, col: 43, offset: 42894}, + name: "InlineAttributes", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1359, col: 61, offset: 42912}, + expr: &ruleRefExpr{ + pos: position{line: 1359, col: 61, offset: 42912}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 1359, col: 68, offset: 42919}, + name: "EOL", }, }, }, }, }, { - name: "SingleQuoteBoldTextElements", - pos: position{line: 2032, col: 1, offset: 66478}, + name: "InlineImage", + pos: position{line: 1364, col: 1, offset: 43129}, expr: &actionExpr{ - pos: position{line: 2033, col: 5, offset: 66515}, - run: (*parser).callonSingleQuoteBoldTextElements1, + pos: position{line: 1364, col: 16, offset: 43144}, + run: (*parser).callonInlineImage1, expr: &seqExpr{ - pos: position{line: 2033, col: 5, offset: 66515}, + pos: position{line: 1364, col: 16, offset: 43144}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2033, col: 5, offset: 66515}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, + &litMatcher{ + pos: position{line: 1364, col: 16, offset: 43144}, + val: "image:", + ignoreCase: false, + want: "\"image:\"", }, ¬Expr{ - pos: position{line: 2033, col: 10, offset: 66520}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteBoldTextElements7, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 1364, col: 25, offset: 43153}, + expr: &litMatcher{ + pos: position{line: 1364, col: 26, offset: 43154}, + val: ":", + ignoreCase: false, + want: "\":\"", }, }, &labeledExpr{ - pos: position{line: 2034, col: 5, offset: 66559}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 2034, col: 14, offset: 66568}, - expr: &ruleRefExpr{ - pos: position{line: 2034, col: 15, offset: 66569}, - name: "SingleQuoteBoldTextElement", - }, + pos: position{line: 1364, col: 30, offset: 43158}, + label: "path", + expr: &ruleRefExpr{ + pos: position{line: 1364, col: 36, offset: 43164}, + name: "Location", }, }, - &andCodeExpr{ - pos: position{line: 2035, col: 5, offset: 66603}, - run: (*parser).callonSingleQuoteBoldTextElements12, + &labeledExpr{ + pos: position{line: 1364, col: 46, offset: 43174}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 1364, col: 58, offset: 43186}, + name: "InlineAttributes", + }, }, }, }, }, }, { - name: "SingleQuoteBoldTextElement", - pos: position{line: 2041, col: 1, offset: 66744}, - expr: &choiceExpr{ - pos: position{line: 2042, col: 5, offset: 66779}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1966, col: 5, offset: 64342}, - run: (*parser).callonSingleQuoteBoldTextElement2, - expr: &seqExpr{ - pos: position{line: 1966, col: 5, offset: 64342}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1966, col: 5, offset: 64342}, + name: "InlineIcon", + pos: position{line: 1371, col: 1, offset: 43582}, + expr: &actionExpr{ + pos: position{line: 1371, col: 15, offset: 43596}, + run: (*parser).callonInlineIcon1, + expr: &seqExpr{ + pos: position{line: 1371, col: 15, offset: 43596}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1371, col: 15, offset: 43596}, + val: "icon:", + ignoreCase: false, + want: "\"icon:\"", + }, + &labeledExpr{ + pos: position{line: 1371, col: 23, offset: 43604}, + label: "icon", + expr: &actionExpr{ + pos: position{line: 1371, col: 29, offset: 43610}, + run: (*parser).callonInlineIcon5, + expr: &oneOrMoreExpr{ + pos: position{line: 1371, col: 29, offset: 43610}, expr: &charClassMatcher{ - pos: position{line: 1966, col: 5, offset: 64342}, - val: "[,?!;0-9\\pL]", - chars: []rune{',', '?', '!', ';'}, + pos: position{line: 1371, col: 29, offset: 43610}, + val: "[\\pL0-9_-]", + chars: []rune{'_', '-'}, ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, inverted: false, }, }, - &andExpr{ - pos: position{line: 1966, col: 19, offset: 64356}, - expr: &choiceExpr{ - pos: position{line: 1966, col: 21, offset: 64358}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteBoldTextElement8, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1963, col: 22, offset: 64316}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, + }, + }, + &labeledExpr{ + pos: position{line: 1371, col: 73, offset: 43654}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 1371, col: 85, offset: 43666}, + name: "InlineAttributes", }, }, }, + }, + }, + }, + { + name: "InlineFootnote", + pos: position{line: 1378, col: 1, offset: 44032}, + expr: &choiceExpr{ + pos: position{line: 1378, col: 19, offset: 44050}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonSingleQuoteBoldTextElement11, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 1378, col: 19, offset: 44050}, + run: (*parser).callonInlineFootnote2, + expr: &seqExpr{ + pos: position{line: 1378, col: 19, offset: 44050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1378, col: 19, offset: 44050}, + val: "footnote:[", + ignoreCase: false, + want: "\"footnote:[\"", + }, + &labeledExpr{ + pos: position{line: 1378, col: 32, offset: 44063}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 1378, col: 42, offset: 44073}, + name: "FootnoteElements", + }, + }, + &litMatcher{ + pos: position{line: 1378, col: 60, offset: 44091}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, }, }, }, - &seqExpr{ - pos: position{line: 2044, col: 7, offset: 66811}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteBoldTextElement15, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + &actionExpr{ + pos: position{line: 1380, col: 9, offset: 44169}, + run: (*parser).callonInlineFootnote8, + expr: &seqExpr{ + pos: position{line: 1380, col: 9, offset: 44169}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1380, col: 9, offset: 44169}, + val: "footnote:", + ignoreCase: false, + want: "\"footnote:\"", + }, + &labeledExpr{ + pos: position{line: 1380, col: 21, offset: 44181}, + label: "ref", + expr: &ruleRefExpr{ + pos: position{line: 1380, col: 26, offset: 44186}, + name: "FootnoteRef", }, }, + &litMatcher{ + pos: position{line: 1380, col: 39, offset: 44199}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + &labeledExpr{ + pos: position{line: 1380, col: 43, offset: 44203}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 1380, col: 53, offset: 44213}, + name: "FootnoteElements", + }, + }, + &litMatcher{ + pos: position{line: 1380, col: 71, offset: 44231}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, }, - ¬Expr{ - pos: position{line: 2044, col: 15, offset: 66819}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteBoldTextElement21, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + }, + }, + }, + }, + }, + { + name: "FootnoteRef", + pos: position{line: 1384, col: 1, offset: 44371}, + expr: &ruleRefExpr{ + pos: position{line: 1384, col: 16, offset: 44386}, + name: "Alphanums", + }, + }, + { + name: "FootnoteElements", + pos: position{line: 1386, col: 1, offset: 44397}, + expr: &actionExpr{ + pos: position{line: 1386, col: 21, offset: 44417}, + run: (*parser).callonFootnoteElements1, + expr: &labeledExpr{ + pos: position{line: 1386, col: 21, offset: 44417}, + label: "elements", + expr: &zeroOrMoreExpr{ + pos: position{line: 1386, col: 30, offset: 44426}, + expr: &ruleRefExpr{ + pos: position{line: 1386, col: 31, offset: 44427}, + name: "FootnoteElement", + }, + }, + }, + }, + }, + { + name: "FootnoteElement", + pos: position{line: 1390, col: 1, offset: 44519}, + expr: &actionExpr{ + pos: position{line: 1391, col: 5, offset: 44543}, + run: (*parser).callonFootnoteElement1, + expr: &seqExpr{ + pos: position{line: 1391, col: 5, offset: 44543}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1391, col: 5, offset: 44543}, + expr: &litMatcher{ + pos: position{line: 1391, col: 6, offset: 44544}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + }, + &labeledExpr{ + pos: position{line: 1392, col: 5, offset: 44553}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 1393, col: 9, offset: 44571}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1393, col: 9, offset: 44571}, + name: "InlineElement", + }, + &ruleRefExpr{ + pos: position{line: 1394, col: 11, offset: 44595}, + name: "Newline", }, }, }, }, }, + }, + }, + }, + { + name: "SinglePlusPassthroughPrefix", + pos: position{line: 1402, col: 1, offset: 44835}, + expr: &litMatcher{ + pos: position{line: 1402, col: 32, offset: 44866}, + val: "+", + ignoreCase: false, + want: "\"+\"", + }, + }, + { + name: "SinglePlusPassthrough", + pos: position{line: 1404, col: 1, offset: 44871}, + expr: &actionExpr{ + pos: position{line: 1404, col: 26, offset: 44896}, + run: (*parser).callonSinglePlusPassthrough1, + expr: &seqExpr{ + pos: position{line: 1404, col: 26, offset: 44896}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1404, col: 26, offset: 44896}, + name: "SinglePlusPassthroughPrefix", + }, + &labeledExpr{ + pos: position{line: 1404, col: 54, offset: 44924}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1404, col: 63, offset: 44933}, + name: "SinglePlusPassthroughContent", + }, + }, + &ruleRefExpr{ + pos: position{line: 1404, col: 93, offset: 44963}, + name: "SinglePlusPassthroughPrefix", + }, + ¬Expr{ + pos: position{line: 1404, col: 121, offset: 44991}, + expr: &ruleRefExpr{ + pos: position{line: 1404, col: 122, offset: 44992}, + name: "Alphanum", + }, + }, + }, + }, + }, + }, + { + name: "SinglePlusPassthroughContent", + pos: position{line: 1408, col: 1, offset: 45105}, + expr: &choiceExpr{ + pos: position{line: 1408, col: 33, offset: 45137}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteBoldTextElement26, + pos: position{line: 1408, col: 34, offset: 45138}, + run: (*parser).callonSinglePlusPassthroughContent2, expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, + pos: position{line: 1408, col: 34, offset: 45138}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteBoldTextElement28, + &seqExpr{ + pos: position{line: 1408, col: 35, offset: 45139}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1408, col: 35, offset: 45139}, + expr: &ruleRefExpr{ + pos: position{line: 1408, col: 36, offset: 45140}, + name: "SinglePlusPassthroughPrefix", + }, + }, + ¬Expr{ + pos: position{line: 1408, col: 64, offset: 45168}, + expr: &ruleRefExpr{ + pos: position{line: 1408, col: 65, offset: 45169}, + name: "Space", + }, + }, + ¬Expr{ + pos: position{line: 1408, col: 71, offset: 45175}, + expr: &ruleRefExpr{ + pos: position{line: 1408, col: 72, offset: 45176}, + name: "Newline", + }, + }, + &anyMatcher{ + line: 1408, col: 80, offset: 45184, + }, + }, }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonSingleQuoteBoldTextElement31, + &zeroOrMoreExpr{ + pos: position{line: 1408, col: 83, offset: 45187}, + expr: &seqExpr{ + pos: position{line: 1408, col: 84, offset: 45188}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1408, col: 84, offset: 45188}, expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, + pos: position{line: 1408, col: 86, offset: 45190}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteBoldTextElement35, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteBoldTextElement42, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteBoldTextElement47, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteBoldTextElement49, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1408, col: 86, offset: 45190}, + name: "Spaces", }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", + &ruleRefExpr{ + pos: position{line: 1408, col: 93, offset: 45197}, + name: "SinglePlusPassthroughPrefix", }, }, }, }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonSingleQuoteBoldTextElement53, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteBoldTextElement57, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteBoldTextElement64, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteBoldTextElement69, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteBoldTextElement71, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, + ¬Expr{ + pos: position{line: 1408, col: 122, offset: 45226}, + expr: &ruleRefExpr{ + pos: position{line: 1408, col: 123, offset: 45227}, + name: "SinglePlusPassthroughPrefix", }, }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteBoldTextElement75, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteBoldTextElement79, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, + ¬Expr{ + pos: position{line: 1408, col: 151, offset: 45255}, + expr: &ruleRefExpr{ + pos: position{line: 1408, col: 152, offset: 45256}, + name: "Newline", }, }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteBoldTextElement85, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteBoldTextElement89, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &anyMatcher{ + line: 1408, col: 160, offset: 45264, }, }, }, @@ -52122,997 +7402,452 @@ var g = &grammar{ }, }, }, - &ruleRefExpr{ - pos: position{line: 2046, col: 7, offset: 66893}, - name: "InlineMacro", - }, &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonSingleQuoteBoldTextElement96, + pos: position{line: 1410, col: 11, offset: 45414}, + run: (*parser).callonSinglePlusPassthroughContent23, expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, + pos: position{line: 1410, col: 12, offset: 45415}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", + ¬Expr{ + pos: position{line: 1410, col: 12, offset: 45415}, + expr: &ruleRefExpr{ + pos: position{line: 1410, col: 13, offset: 45416}, + name: "Space", + }, }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteBoldTextElement100, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteBoldTextElement102, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteBoldTextElement104, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteBoldTextElement106, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteBoldTextElement108, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteBoldTextElement110, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteBoldTextElement112, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteBoldTextElement114, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteBoldTextElement116, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteBoldTextElement118, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteBoldTextElement120, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteBoldTextElement123, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteBoldTextElement127, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteBoldTextElement134, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteBoldTextElement136, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteBoldTextElement141, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteBoldTextElement148, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteBoldTextElement150, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteBoldTextElement152, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, + ¬Expr{ + pos: position{line: 1410, col: 19, offset: 45422}, + expr: &ruleRefExpr{ + pos: position{line: 1410, col: 20, offset: 45423}, + name: "Newline", + }, + }, + ¬Expr{ + pos: position{line: 1410, col: 28, offset: 45431}, + expr: &ruleRefExpr{ + pos: position{line: 1410, col: 29, offset: 45432}, + name: "SinglePlusPassthroughPrefix", }, }, + &anyMatcher{ + line: 1410, col: 57, offset: 45460, + }, }, }, }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteBoldTextElement154, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteBoldTextElement156, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", + }, + }, + }, + { + name: "TriplePlusPassthroughPrefix", + pos: position{line: 1414, col: 1, offset: 45550}, + expr: &litMatcher{ + pos: position{line: 1414, col: 32, offset: 45581}, + val: "+++", + ignoreCase: false, + want: "\"+++\"", + }, + }, + { + name: "TriplePlusPassthrough", + pos: position{line: 1416, col: 1, offset: 45588}, + expr: &actionExpr{ + pos: position{line: 1416, col: 26, offset: 45613}, + run: (*parser).callonTriplePlusPassthrough1, + expr: &seqExpr{ + pos: position{line: 1416, col: 26, offset: 45613}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1416, col: 26, offset: 45613}, + name: "TriplePlusPassthroughPrefix", }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteBoldTextElement158, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", + &labeledExpr{ + pos: position{line: 1416, col: 54, offset: 45641}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1416, col: 63, offset: 45650}, + name: "TriplePlusPassthroughContent", + }, }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteBoldTextElement160, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", + &ruleRefExpr{ + pos: position{line: 1416, col: 93, offset: 45680}, + name: "TriplePlusPassthroughPrefix", }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteBoldTextElement162, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", + ¬Expr{ + pos: position{line: 1416, col: 121, offset: 45708}, + expr: &ruleRefExpr{ + pos: position{line: 1416, col: 122, offset: 45709}, + name: "Alphanum", + }, }, }, + }, + }, + }, + { + name: "TriplePlusPassthroughContent", + pos: position{line: 1420, col: 1, offset: 45822}, + expr: &choiceExpr{ + pos: position{line: 1420, col: 33, offset: 45854}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteBoldTextElement164, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", + pos: position{line: 1420, col: 34, offset: 45855}, + run: (*parser).callonTriplePlusPassthroughContent2, + expr: &zeroOrMoreExpr{ + pos: position{line: 1420, col: 34, offset: 45855}, + expr: &seqExpr{ + pos: position{line: 1420, col: 35, offset: 45856}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1420, col: 35, offset: 45856}, + expr: &ruleRefExpr{ + pos: position{line: 1420, col: 36, offset: 45857}, + name: "TriplePlusPassthroughPrefix", + }, + }, + &anyMatcher{ + line: 1420, col: 64, offset: 45885, + }, + }, + }, }, }, &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteBoldTextElement166, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", + pos: position{line: 1422, col: 11, offset: 46058}, + run: (*parser).callonTriplePlusPassthroughContent8, + expr: &zeroOrOneExpr{ + pos: position{line: 1422, col: 11, offset: 46058}, + expr: &seqExpr{ + pos: position{line: 1422, col: 12, offset: 46059}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1422, col: 12, offset: 46059}, + expr: &ruleRefExpr{ + pos: position{line: 1422, col: 13, offset: 46060}, + name: "Space", + }, + }, + ¬Expr{ + pos: position{line: 1422, col: 19, offset: 46066}, + expr: &ruleRefExpr{ + pos: position{line: 1422, col: 20, offset: 46067}, + name: "Newline", + }, + }, + ¬Expr{ + pos: position{line: 1422, col: 28, offset: 46075}, + expr: &ruleRefExpr{ + pos: position{line: 1422, col: 29, offset: 46076}, + name: "TriplePlusPassthroughPrefix", + }, + }, + &anyMatcher{ + line: 1422, col: 57, offset: 46104, + }, + }, + }, }, }, + }, + }, + }, + { + name: "PassthroughMacro", + pos: position{line: 1426, col: 1, offset: 46195}, + expr: &choiceExpr{ + pos: position{line: 1426, col: 21, offset: 46215}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteBoldTextElement168, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", + pos: position{line: 1426, col: 21, offset: 46215}, + run: (*parser).callonPassthroughMacro2, + expr: &seqExpr{ + pos: position{line: 1426, col: 21, offset: 46215}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1426, col: 21, offset: 46215}, + val: "pass:[", + ignoreCase: false, + want: "\"pass:[\"", + }, + &labeledExpr{ + pos: position{line: 1426, col: 30, offset: 46224}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 1426, col: 38, offset: 46232}, + expr: &ruleRefExpr{ + pos: position{line: 1426, col: 39, offset: 46233}, + name: "PassthroughMacroCharacter", + }, + }, + }, + &litMatcher{ + pos: position{line: 1426, col: 67, offset: 46261}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + }, }, }, &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteBoldTextElement170, + pos: position{line: 1428, col: 9, offset: 46365}, + run: (*parser).callonPassthroughMacro9, expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, + pos: position{line: 1428, col: 9, offset: 46365}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteBoldTextElement172, - }, &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", + pos: position{line: 1428, col: 9, offset: 46365}, + val: "pass:q[", ignoreCase: false, - want: "\"--\"", + want: "\"pass:q[\"", }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteBoldTextElement175, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteBoldTextElement179, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, + &labeledExpr{ + pos: position{line: 1428, col: 19, offset: 46375}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 1428, col: 27, offset: 46383}, + expr: &choiceExpr{ + pos: position{line: 1428, col: 28, offset: 46384}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1428, col: 28, offset: 46384}, + name: "QuotedText", + }, + &ruleRefExpr{ + pos: position{line: 1428, col: 41, offset: 46397}, + name: "PassthroughMacroCharacter", }, }, }, }, }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteBoldTextElement186, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteBoldTextElement188, - }, &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", + pos: position{line: 1428, col: 69, offset: 46425}, + val: "]", ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteBoldTextElement193, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + want: "\"]\"", }, }, }, }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteBoldTextElement200, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, + }, + }, + }, + { + name: "PassthroughMacroCharacter", + pos: position{line: 1432, col: 1, offset: 46529}, + expr: &actionExpr{ + pos: position{line: 1432, col: 30, offset: 46558}, + run: (*parser).callonPassthroughMacroCharacter1, + expr: &charClassMatcher{ + pos: position{line: 1432, col: 30, offset: 46558}, + val: "[^\\]]", + chars: []rune{']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + { + name: "Link", + pos: position{line: 1439, col: 1, offset: 46814}, + expr: &choiceExpr{ + pos: position{line: 1439, col: 9, offset: 46822}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1439, col: 9, offset: 46822}, + name: "BareURL", }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteBoldTextElement202, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, + &ruleRefExpr{ + pos: position{line: 1439, col: 19, offset: 46832}, + name: "RelativeLink", }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteBoldTextElement204, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, + &ruleRefExpr{ + pos: position{line: 1439, col: 34, offset: 46847}, + name: "ExternalLink", }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteBoldTextElement206, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", + }, + }, + }, + { + name: "BareURL", + pos: position{line: 1441, col: 1, offset: 46861}, + expr: &actionExpr{ + pos: position{line: 1442, col: 5, offset: 46876}, + run: (*parser).callonBareURL1, + expr: &seqExpr{ + pos: position{line: 1442, col: 5, offset: 46876}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1442, col: 5, offset: 46876}, + val: "<", ignoreCase: false, - want: "\"<=\"", + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1443, col: 5, offset: 46885}, + label: "url", + expr: &ruleRefExpr{ + pos: position{line: 1443, col: 10, offset: 46890}, + name: "LocationWithScheme", + }, + }, + &zeroOrOneExpr{ + pos: position{line: 1444, col: 5, offset: 46952}, + expr: &litMatcher{ + pos: position{line: 1444, col: 5, offset: 46952}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + }, + &andCodeExpr{ + pos: position{line: 1445, col: 5, offset: 46961}, + run: (*parser).callonBareURL8, }, }, + }, + }, + }, + { + name: "RelativeLink", + pos: position{line: 1453, col: 1, offset: 47176}, + expr: &choiceExpr{ + pos: position{line: 1455, col: 5, offset: 47212}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonSingleQuoteBoldTextElement208, + pos: position{line: 1455, col: 5, offset: 47212}, + run: (*parser).callonRelativeLink2, expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, + pos: position{line: 1455, col: 5, offset: 47212}, exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + &litMatcher{ + pos: position{line: 1455, col: 5, offset: 47212}, + val: "\\", ignoreCase: false, - inverted: false, + want: "\"\\\\\"", }, &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", + pos: position{line: 1455, col: 9, offset: 47216}, + val: "link:", ignoreCase: false, - want: "\"\\\\'\"", + want: "\"link:\"", }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 1455, col: 17, offset: 47224}, + label: "url", + expr: &ruleRefExpr{ + pos: position{line: 1455, col: 22, offset: 47229}, + name: "Location", + }, + }, + &labeledExpr{ + pos: position{line: 1455, col: 32, offset: 47239}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 1455, col: 44, offset: 47251}, + name: "InlineAttributes", }, }, }, }, }, &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonSingleQuoteBoldTextElement214, + pos: position{line: 1460, col: 5, offset: 47383}, + run: (*parser).callonRelativeLink10, expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, + pos: position{line: 1460, col: 5, offset: 47383}, exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", + pos: position{line: 1460, col: 5, offset: 47383}, + val: "link:", ignoreCase: false, - want: "\"'\"", + want: "\"link:\"", }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 1460, col: 13, offset: 47391}, + label: "url", + expr: &ruleRefExpr{ + pos: position{line: 1460, col: 18, offset: 47396}, + name: "Location", + }, + }, + &labeledExpr{ + pos: position{line: 1460, col: 28, offset: 47406}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 1460, col: 40, offset: 47418}, + name: "InlineAttributes", }, }, }, }, }, + }, + }, + }, + { + name: "ExternalLink", + pos: position{line: 1464, col: 1, offset: 47534}, + expr: &choiceExpr{ + pos: position{line: 1466, col: 5, offset: 47570}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteBoldTextElement220, + pos: position{line: 1466, col: 5, offset: 47570}, + run: (*parser).callonExternalLink2, expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, + pos: position{line: 1466, col: 5, offset: 47570}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteBoldTextElement222, + &litMatcher{ + pos: position{line: 1466, col: 5, offset: 47570}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", }, &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonSingleQuoteBoldTextElement225, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonSingleQuoteBoldTextElement227, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteBoldTextElement231, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteBoldTextElement235, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonSingleQuoteBoldTextElement241, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteBoldTextElement246, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteBoldTextElement250, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteBoldTextElement256, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteBoldTextElement260, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonSingleQuoteBoldTextElement266, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonSingleQuoteBoldTextElement269, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteBoldTextElement273, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonSingleQuoteBoldTextElement277, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 1466, col: 9, offset: 47574}, + label: "url", + expr: &ruleRefExpr{ + pos: position{line: 1466, col: 14, offset: 47579}, + name: "LocationWithScheme", + }, + }, + &labeledExpr{ + pos: position{line: 1466, col: 34, offset: 47599}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 1466, col: 45, offset: 47610}, + expr: &ruleRefExpr{ + pos: position{line: 1466, col: 46, offset: 47611}, + name: "InlineAttributes", }, }, }, }, }, }, - &ruleRefExpr{ - pos: position{line: 2049, col: 7, offset: 66997}, - name: "QuotedTextInSingleQuoteBoldText", - }, &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonSingleQuoteBoldTextElement280, + pos: position{line: 1471, col: 5, offset: 47744}, + run: (*parser).callonExternalLink10, expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, + pos: position{line: 1471, col: 5, offset: 47744}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", + &labeledExpr{ + pos: position{line: 1471, col: 5, offset: 47744}, + label: "url", + expr: &ruleRefExpr{ + pos: position{line: 1471, col: 10, offset: 47749}, + name: "LocationWithScheme", + }, }, &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonSingleQuoteBoldTextElement284, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &charClassMatcher{ - pos: position{line: 2079, col: 5, offset: 67726}, - val: "[^\\r\\n *]", - chars: []rune{'\r', '\n', ' ', '*'}, - ignoreCase: false, - inverted: true, - }, - &actionExpr{ - pos: position{line: 2080, col: 7, offset: 67831}, - run: (*parser).callonSingleQuoteBoldTextElement289, - expr: &seqExpr{ - pos: position{line: 2080, col: 7, offset: 67831}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2080, col: 7, offset: 67831}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonSingleQuoteBoldTextElement292, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + pos: position{line: 1471, col: 30, offset: 47769}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 1471, col: 41, offset: 47780}, + expr: &ruleRefExpr{ + pos: position{line: 1471, col: 42, offset: 47781}, + name: "InlineAttributes", }, }, }, @@ -53123,108 +7858,28 @@ var g = &grammar{ }, }, { - name: "QuotedTextInSingleQuoteBoldText", - pos: position{line: 2053, col: 1, offset: 67098}, - expr: &choiceExpr{ - pos: position{line: 2055, col: 5, offset: 67161}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2055, col: 5, offset: 67161}, - run: (*parser).callonQuotedTextInSingleQuoteBoldText2, - expr: &seqExpr{ - pos: position{line: 2055, col: 5, offset: 67161}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 2055, col: 5, offset: 67161}, - expr: &litMatcher{ - pos: position{line: 2055, col: 7, offset: 67163}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &labeledExpr{ - pos: position{line: 2056, col: 5, offset: 67172}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2057, col: 9, offset: 67190}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2057, col: 9, offset: 67190}, - name: "EscapedItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2058, col: 11, offset: 67218}, - name: "EscapedMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2059, col: 11, offset: 67246}, - name: "EscapedMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2060, col: 11, offset: 67277}, - name: "EscapedSubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2061, col: 11, offset: 67308}, - name: "EscapedSuperscriptText", - }, - }, - }, - }, + name: "ListElements", + pos: position{line: 1479, col: 1, offset: 48135}, + expr: &actionExpr{ + pos: position{line: 1480, col: 5, offset: 48156}, + run: (*parser).callonListElements1, + expr: &seqExpr{ + pos: position{line: 1480, col: 5, offset: 48156}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1480, col: 5, offset: 48156}, + label: "firstElement", + expr: &ruleRefExpr{ + pos: position{line: 1480, col: 19, offset: 48170}, + name: "ListElement", }, }, - }, - &actionExpr{ - pos: position{line: 2067, col: 5, offset: 67408}, - run: (*parser).callonQuotedTextInSingleQuoteBoldText13, - expr: &seqExpr{ - pos: position{line: 2067, col: 5, offset: 67408}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2067, col: 5, offset: 67408}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 2067, col: 16, offset: 67419}, - expr: &ruleRefExpr{ - pos: position{line: 2067, col: 17, offset: 67420}, - name: "LongHandAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 2068, col: 5, offset: 67446}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 2069, col: 9, offset: 67461}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2069, col: 9, offset: 67461}, - name: "DoubleQuoteBoldText", - }, - &ruleRefExpr{ - pos: position{line: 2070, col: 11, offset: 67491}, - name: "ItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2071, col: 11, offset: 67512}, - name: "MonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2072, col: 11, offset: 67536}, - name: "MarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2073, col: 11, offset: 67557}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2074, col: 11, offset: 67581}, - name: "SuperscriptText", - }, - }, - }, - }, + &labeledExpr{ + pos: position{line: 1481, col: 5, offset: 48187}, + label: "extraElements", + expr: &ruleRefExpr{ + pos: position{line: 1481, col: 20, offset: 48202}, + name: "ExtraListElements", }, }, }, @@ -53232,1718 +7887,332 @@ var g = &grammar{ }, }, { - name: "EscapedBoldText", - pos: position{line: 2084, col: 1, offset: 68006}, + name: "ListElement", + pos: position{line: 1485, col: 1, offset: 48338}, expr: &choiceExpr{ - pos: position{line: 2086, col: 5, offset: 68067}, + pos: position{line: 1486, col: 5, offset: 48358}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2086, col: 5, offset: 68067}, - run: (*parser).callonEscapedBoldText2, - expr: &seqExpr{ - pos: position{line: 2086, col: 5, offset: 68067}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2086, col: 5, offset: 68067}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - run: (*parser).callonEscapedBoldText5, - expr: &seqExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1954, col: 25, offset: 64010}, - val: "\\\\", - ignoreCase: false, - want: "\"\\\\\\\\\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1954, col: 30, offset: 64015}, - expr: &litMatcher{ - pos: position{line: 1954, col: 30, offset: 64015}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2086, col: 40, offset: 68102}, - val: "**", - ignoreCase: false, - want: "\"**\"", - }, - &labeledExpr{ - pos: position{line: 2086, col: 45, offset: 68107}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2086, col: 55, offset: 68117}, - name: "DoubleQuoteBoldTextElements", - }, - }, - &litMatcher{ - pos: position{line: 2086, col: 84, offset: 68146}, - val: "**", - ignoreCase: false, - want: "\"**\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2090, col: 7, offset: 68310}, - run: (*parser).callonEscapedBoldText14, - expr: &seqExpr{ - pos: position{line: 2090, col: 7, offset: 68310}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2090, col: 7, offset: 68310}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedBoldText17, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2090, col: 42, offset: 68345}, - val: "**", - ignoreCase: false, - want: "\"**\"", - }, - &labeledExpr{ - pos: position{line: 2090, col: 47, offset: 68350}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2090, col: 57, offset: 68360}, - name: "SingleQuoteBoldTextElements", - }, - }, - &litMatcher{ - pos: position{line: 2090, col: 86, offset: 68389}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1486, col: 5, offset: 48358}, + name: "OrderedListElement", }, - &actionExpr{ - pos: position{line: 2095, col: 7, offset: 68591}, - run: (*parser).callonEscapedBoldText24, - expr: &seqExpr{ - pos: position{line: 2095, col: 7, offset: 68591}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2095, col: 7, offset: 68591}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedBoldText27, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2095, col: 42, offset: 68626}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - &labeledExpr{ - pos: position{line: 2095, col: 46, offset: 68630}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2095, col: 56, offset: 68640}, - name: "SingleQuoteBoldTextElements", - }, - }, - &litMatcher{ - pos: position{line: 2095, col: 85, offset: 68669}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1487, col: 7, offset: 48384}, + name: "UnorderedListElement", }, - }, - }, - }, - { - name: "ItalicText", - pos: position{line: 2103, col: 1, offset: 68923}, - expr: &choiceExpr{ - pos: position{line: 2103, col: 15, offset: 68937}, - alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2103, col: 15, offset: 68937}, - name: "DoubleQuoteItalicText", + pos: position{line: 1488, col: 7, offset: 48411}, + name: "CalloutListElement", }, &ruleRefExpr{ - pos: position{line: 2103, col: 39, offset: 68961}, - name: "SingleQuoteItalicText", + pos: position{line: 1489, col: 7, offset: 48436}, + name: "LabeledListElement", }, }, }, }, { - name: "DoubleQuoteItalicText", - pos: position{line: 2117, col: 1, offset: 69289}, + name: "ExtraListElements", + pos: position{line: 1491, col: 1, offset: 48457}, expr: &actionExpr{ - pos: position{line: 2118, col: 5, offset: 69319}, - run: (*parser).callonDoubleQuoteItalicText1, - expr: &seqExpr{ - pos: position{line: 2118, col: 5, offset: 69319}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2115, col: 35, offset: 69283}, - val: "__", - ignoreCase: false, - want: "\"__\"", - }, - &labeledExpr{ - pos: position{line: 2119, col: 5, offset: 69355}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2119, col: 15, offset: 69365}, - name: "DoubleQuoteItalicTextElements", - }, - }, - &litMatcher{ - pos: position{line: 2115, col: 35, offset: 69283}, - val: "__", - ignoreCase: false, - want: "\"__\"", + pos: position{line: 1491, col: 22, offset: 48478}, + run: (*parser).callonExtraListElements1, + expr: &labeledExpr{ + pos: position{line: 1491, col: 22, offset: 48478}, + label: "elements", + expr: &zeroOrMoreExpr{ + pos: position{line: 1491, col: 31, offset: 48487}, + expr: &ruleRefExpr{ + pos: position{line: 1491, col: 32, offset: 48488}, + name: "ExtraListElement", }, }, }, }, }, { - name: "DoubleQuoteItalicTextElements", - pos: position{line: 2124, col: 1, offset: 69573}, - expr: &oneOrMoreExpr{ - pos: position{line: 2124, col: 34, offset: 69606}, - expr: &ruleRefExpr{ - pos: position{line: 2124, col: 34, offset: 69606}, - name: "DoubleQuoteItalicTextElement", - }, - }, - }, - { - name: "DoubleQuoteItalicTextElement", - pos: position{line: 2126, col: 1, offset: 69638}, + name: "ExtraListElement", + pos: position{line: 1495, col: 1, offset: 48568}, expr: &actionExpr{ - pos: position{line: 2127, col: 5, offset: 69675}, - run: (*parser).callonDoubleQuoteItalicTextElement1, + pos: position{line: 1496, col: 5, offset: 48707}, + run: (*parser).callonExtraListElement1, expr: &seqExpr{ - pos: position{line: 2127, col: 5, offset: 69675}, + pos: position{line: 1496, col: 5, offset: 48707}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2127, col: 5, offset: 69675}, - expr: &litMatcher{ - pos: position{line: 2115, col: 35, offset: 69283}, - val: "__", - ignoreCase: false, - want: "\"__\"", + pos: position{line: 1496, col: 5, offset: 48707}, + expr: &ruleRefExpr{ + pos: position{line: 1496, col: 6, offset: 48708}, + name: "EOF", }, }, &labeledExpr{ - pos: position{line: 2128, col: 5, offset: 69711}, + pos: position{line: 1497, col: 5, offset: 48717}, label: "element", expr: &choiceExpr{ - pos: position{line: 2129, col: 9, offset: 69729}, + pos: position{line: 1498, col: 9, offset: 48735}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2108, col: 5, offset: 69035}, - run: (*parser).callonDoubleQuoteItalicTextElement7, + pos: position{line: 1498, col: 13, offset: 48739}, + run: (*parser).callonExtraListElement7, expr: &seqExpr{ - pos: position{line: 2108, col: 5, offset: 69035}, + pos: position{line: 1498, col: 13, offset: 48739}, exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2108, col: 5, offset: 69035}, - expr: &charClassMatcher{ - pos: position{line: 2108, col: 5, offset: 69035}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &zeroOrMoreExpr{ + pos: position{line: 1498, col: 13, offset: 48739}, + expr: &ruleRefExpr{ + pos: position{line: 1498, col: 13, offset: 48739}, + name: "BlankLine", }, }, - &andExpr{ - pos: position{line: 2108, col: 15, offset: 69045}, - expr: &choiceExpr{ - pos: position{line: 2108, col: 17, offset: 69047}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteItalicTextElement13, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 2105, col: 24, offset: 69007}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, + &labeledExpr{ + pos: position{line: 1499, col: 13, offset: 48763}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1499, col: 21, offset: 48771}, + name: "OrderedListElement", }, }, }, }, }, &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDoubleQuoteItalicTextElement16, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &seqExpr{ - pos: position{line: 2131, col: 11, offset: 69804}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteItalicTextElement20, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + pos: position{line: 1502, col: 13, offset: 48855}, + run: (*parser).callonExtraListElement13, + expr: &seqExpr{ + pos: position{line: 1502, col: 13, offset: 48855}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1502, col: 13, offset: 48855}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 1502, col: 24, offset: 48866}, + expr: &ruleRefExpr{ + pos: position{line: 1502, col: 25, offset: 48867}, + name: "BlockAttributes", }, }, }, - }, - ¬Expr{ - pos: position{line: 2131, col: 19, offset: 69812}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteItalicTextElement26, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + &labeledExpr{ + pos: position{line: 1503, col: 13, offset: 48898}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1503, col: 21, offset: 48906}, + name: "OrderedListElement", }, }, }, }, }, &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteItalicTextElement31, + pos: position{line: 1506, col: 13, offset: 49026}, + run: (*parser).callonExtraListElement20, expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, + pos: position{line: 1506, col: 13, offset: 49026}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteItalicTextElement33, + &zeroOrMoreExpr{ + pos: position{line: 1506, col: 13, offset: 49026}, + expr: &ruleRefExpr{ + pos: position{line: 1506, col: 13, offset: 49026}, + name: "BlankLine", + }, }, &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, + pos: position{line: 1507, col: 13, offset: 49050}, label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonDoubleQuoteItalicTextElement36, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteItalicTextElement40, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteItalicTextElement47, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteItalicTextElement52, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteItalicTextElement54, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonDoubleQuoteItalicTextElement58, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteItalicTextElement62, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteItalicTextElement69, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteItalicTextElement74, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteItalicTextElement76, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteItalicTextElement80, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteItalicTextElement84, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteItalicTextElement90, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteItalicTextElement94, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, + expr: &ruleRefExpr{ + pos: position{line: 1507, col: 21, offset: 49058}, + name: "UnorderedListElement", }, }, }, }, }, - &ruleRefExpr{ - pos: position{line: 2133, col: 11, offset: 69894}, - name: "InlineMacro", - }, &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonDoubleQuoteItalicTextElement101, + pos: position{line: 1510, col: 13, offset: 49144}, + run: (*parser).callonExtraListElement26, expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, + pos: position{line: 1510, col: 13, offset: 49144}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteItalicTextElement105, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteItalicTextElement107, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteItalicTextElement109, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteItalicTextElement111, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteItalicTextElement113, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteItalicTextElement115, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteItalicTextElement117, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteItalicTextElement119, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteItalicTextElement121, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteItalicTextElement123, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteItalicTextElement125, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteItalicTextElement128, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteItalicTextElement132, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteItalicTextElement139, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteItalicTextElement141, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteItalicTextElement146, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteItalicTextElement153, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteItalicTextElement155, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteItalicTextElement157, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, + &labeledExpr{ + pos: position{line: 1510, col: 13, offset: 49144}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 1510, col: 24, offset: 49155}, + expr: &ruleRefExpr{ + pos: position{line: 1510, col: 25, offset: 49156}, + name: "BlockAttributes", }, }, }, + &labeledExpr{ + pos: position{line: 1511, col: 13, offset: 49187}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1511, col: 21, offset: 49195}, + name: "UnorderedListElement", + }, + }, }, }, }, &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteItalicTextElement159, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteItalicTextElement161, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteItalicTextElement163, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteItalicTextElement165, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteItalicTextElement167, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", + pos: position{line: 1514, col: 13, offset: 49317}, + run: (*parser).callonExtraListElement33, + expr: &seqExpr{ + pos: position{line: 1514, col: 13, offset: 49317}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1514, col: 13, offset: 49317}, + expr: &ruleRefExpr{ + pos: position{line: 1514, col: 13, offset: 49317}, + name: "BlankLine", + }, + }, + &labeledExpr{ + pos: position{line: 1515, col: 13, offset: 49341}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1515, col: 21, offset: 49349}, + name: "CalloutListElement", + }, + }, + }, }, }, &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteItalicTextElement169, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", + pos: position{line: 1518, col: 13, offset: 49433}, + run: (*parser).callonExtraListElement39, + expr: &seqExpr{ + pos: position{line: 1518, col: 13, offset: 49433}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1518, col: 13, offset: 49433}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 1518, col: 24, offset: 49444}, + expr: &ruleRefExpr{ + pos: position{line: 1518, col: 25, offset: 49445}, + name: "BlockAttributes", + }, + }, + }, + &labeledExpr{ + pos: position{line: 1519, col: 13, offset: 49476}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1519, col: 21, offset: 49484}, + name: "CalloutListElement", + }, + }, + }, }, }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteItalicTextElement171, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, + &ruleRefExpr{ + pos: position{line: 1522, col: 11, offset: 49602}, + name: "ListElementContinuation", }, &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteItalicTextElement173, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", + pos: position{line: 1523, col: 13, offset: 49638}, + run: (*parser).callonExtraListElement47, + expr: &seqExpr{ + pos: position{line: 1523, col: 13, offset: 49638}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1523, col: 13, offset: 49638}, + expr: &ruleRefExpr{ + pos: position{line: 1523, col: 13, offset: 49638}, + name: "BlankLine", + }, + }, + &labeledExpr{ + pos: position{line: 1524, col: 13, offset: 49662}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1524, col: 21, offset: 49670}, + name: "LabeledListElement", + }, + }, + }, }, }, &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteItalicTextElement175, + pos: position{line: 1527, col: 13, offset: 49754}, + run: (*parser).callonExtraListElement53, expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, + pos: position{line: 1527, col: 13, offset: 49754}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteItalicTextElement177, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteItalicTextElement180, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteItalicTextElement184, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + &labeledExpr{ + pos: position{line: 1527, col: 13, offset: 49754}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 1527, col: 24, offset: 49765}, + expr: &ruleRefExpr{ + pos: position{line: 1527, col: 25, offset: 49766}, + name: "BlockAttributes", }, }, }, + &labeledExpr{ + pos: position{line: 1528, col: 13, offset: 49797}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1528, col: 21, offset: 49805}, + name: "LabeledListElement", + }, + }, }, }, }, + &ruleRefExpr{ + pos: position{line: 1531, col: 11, offset: 49923}, + name: "SingleLineComment", + }, &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteItalicTextElement191, + pos: position{line: 1532, col: 13, offset: 49953}, + run: (*parser).callonExtraListElement61, expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, + pos: position{line: 1532, col: 13, offset: 49953}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteItalicTextElement193, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", + &oneOrMoreExpr{ + pos: position{line: 1532, col: 13, offset: 49953}, + expr: &ruleRefExpr{ + pos: position{line: 1532, col: 13, offset: 49953}, + name: "BlankLine", + }, }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteItalicTextElement198, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, + &labeledExpr{ + pos: position{line: 1533, col: 13, offset: 49976}, + label: "attributes", + expr: &zeroOrMoreExpr{ + pos: position{line: 1533, col: 24, offset: 49987}, + expr: &ruleRefExpr{ + pos: position{line: 1533, col: 25, offset: 49988}, + name: "BlockAttributes", }, }, }, + &labeledExpr{ + pos: position{line: 1534, col: 13, offset: 50019}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1534, col: 21, offset: 50027}, + name: "LiteralParagraph", + }, + }, }, }, }, &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteItalicTextElement205, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteItalicTextElement207, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteItalicTextElement209, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteItalicTextElement211, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonDoubleQuoteItalicTextElement213, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonDoubleQuoteItalicTextElement219, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteItalicTextElement225, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteItalicTextElement227, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonDoubleQuoteItalicTextElement230, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonDoubleQuoteItalicTextElement232, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteItalicTextElement236, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteItalicTextElement240, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonDoubleQuoteItalicTextElement246, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteItalicTextElement251, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteItalicTextElement255, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteItalicTextElement261, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteItalicTextElement265, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonDoubleQuoteItalicTextElement271, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonDoubleQuoteItalicTextElement274, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteItalicTextElement278, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonDoubleQuoteItalicTextElement282, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 2136, col: 11, offset: 70010}, - name: "QuotedTextInDoubleQuoteItalicText", - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonDoubleQuoteItalicTextElement285, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonDoubleQuoteItalicTextElement289, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &charClassMatcher{ - pos: position{line: 2167, col: 5, offset: 70790}, - val: "[^\\r\\n_]", - chars: []rune{'\r', '\n', '_'}, - ignoreCase: false, - inverted: true, - }, - &actionExpr{ - pos: position{line: 2168, col: 7, offset: 70889}, - run: (*parser).callonDoubleQuoteItalicTextElement294, - expr: &seqExpr{ - pos: position{line: 2168, col: 7, offset: 70889}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2168, col: 7, offset: 70889}, - val: "__", - ignoreCase: false, - want: "\"__\"", - }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonDoubleQuoteItalicTextElement297, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + pos: position{line: 1546, col: 13, offset: 50566}, + run: (*parser).callonExtraListElement70, + expr: &labeledExpr{ + pos: position{line: 1546, col: 13, offset: 50566}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 1546, col: 21, offset: 50574}, + name: "ListElementParagraphLine", + }, }, }, }, @@ -54954,108 +8223,105 @@ var g = &grammar{ }, }, { - name: "QuotedTextInDoubleQuoteItalicText", - pos: position{line: 2142, col: 1, offset: 70168}, + name: "ListElementParagraphLine", + pos: position{line: 1553, col: 1, offset: 50734}, expr: &choiceExpr{ - pos: position{line: 2144, col: 5, offset: 70233}, + pos: position{line: 1554, col: 5, offset: 50767}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2144, col: 5, offset: 70233}, - run: (*parser).callonQuotedTextInDoubleQuoteItalicText2, + pos: position{line: 1554, col: 5, offset: 50767}, + run: (*parser).callonListElementParagraphLine2, + expr: &ruleRefExpr{ + pos: position{line: 1554, col: 5, offset: 50767}, + name: "SingleLineComment", + }, + }, + &actionExpr{ + pos: position{line: 1558, col: 9, offset: 50920}, + run: (*parser).callonListElementParagraphLine4, expr: &seqExpr{ - pos: position{line: 2144, col: 5, offset: 70233}, + pos: position{line: 1558, col: 9, offset: 50920}, exprs: []interface{}{ - &andExpr{ - pos: position{line: 2144, col: 5, offset: 70233}, - expr: &litMatcher{ - pos: position{line: 2144, col: 7, offset: 70235}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", + ¬Expr{ + pos: position{line: 1558, col: 9, offset: 50920}, + expr: &ruleRefExpr{ + pos: position{line: 1558, col: 10, offset: 50921}, + name: "BlankLine", }, }, - &labeledExpr{ - pos: position{line: 2145, col: 5, offset: 70244}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2146, col: 9, offset: 70262}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2146, col: 9, offset: 70262}, - name: "EscapedBoldText", - }, - &ruleRefExpr{ - pos: position{line: 2147, col: 11, offset: 70289}, - name: "EscapedMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2148, col: 11, offset: 70317}, - name: "EscapedMonospaceText", - }, + ¬Expr{ + pos: position{line: 1559, col: 9, offset: 50939}, + expr: &ruleRefExpr{ + pos: position{line: 1559, col: 10, offset: 50940}, + name: "ListElementContinuationMarker", + }, + }, + ¬Expr{ + pos: position{line: 1560, col: 9, offset: 50978}, + expr: &ruleRefExpr{ + pos: position{line: 1560, col: 10, offset: 50979}, + name: "OrderedListElementPrefix", + }, + }, + ¬Expr{ + pos: position{line: 1561, col: 9, offset: 51012}, + expr: &ruleRefExpr{ + pos: position{line: 1561, col: 10, offset: 51013}, + name: "UnorderedListElementPrefix", + }, + }, + ¬Expr{ + pos: position{line: 1562, col: 9, offset: 51048}, + expr: &ruleRefExpr{ + pos: position{line: 1562, col: 10, offset: 51049}, + name: "CalloutListElementPrefix", + }, + }, + ¬Expr{ + pos: position{line: 1563, col: 9, offset: 51082}, + expr: &seqExpr{ + pos: position{line: 1563, col: 11, offset: 51084}, + exprs: []interface{}{ &ruleRefExpr{ - pos: position{line: 2149, col: 11, offset: 70348}, - name: "EscapedSubscriptText", + pos: position{line: 1563, col: 11, offset: 51084}, + name: "LabeledListElementTerm", }, &ruleRefExpr{ - pos: position{line: 2150, col: 11, offset: 70379}, - name: "EscapedSuperscriptText", + pos: position{line: 1563, col: 34, offset: 51107}, + name: "LabeledListElementSeparator", }, }, }, }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2156, col: 5, offset: 70479}, - run: (*parser).callonQuotedTextInDoubleQuoteItalicText13, - expr: &seqExpr{ - pos: position{line: 2156, col: 5, offset: 70479}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2156, col: 5, offset: 70479}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 2156, col: 16, offset: 70490}, - expr: &ruleRefExpr{ - pos: position{line: 2156, col: 17, offset: 70491}, - name: "LongHandAttributes", - }, + ¬Expr{ + pos: position{line: 1564, col: 9, offset: 51144}, + expr: &ruleRefExpr{ + pos: position{line: 1564, col: 10, offset: 51145}, + name: "BlockDelimiter", }, }, &labeledExpr{ - pos: position{line: 2157, col: 5, offset: 70517}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 2157, col: 11, offset: 70523}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2157, col: 11, offset: 70523}, - name: "SingleQuoteItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2158, col: 11, offset: 70555}, - name: "BoldText", - }, - &ruleRefExpr{ - pos: position{line: 2159, col: 11, offset: 70574}, - name: "MarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2160, col: 11, offset: 70595}, - name: "MonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2161, col: 11, offset: 70619}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2162, col: 11, offset: 70643}, - name: "SuperscriptText", + pos: position{line: 1565, col: 9, offset: 51168}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1565, col: 18, offset: 51177}, + run: (*parser).callonListElementParagraphLine23, + expr: &oneOrMoreExpr{ + pos: position{line: 1565, col: 18, offset: 51177}, + expr: &charClassMatcher{ + pos: position{line: 1565, col: 18, offset: 51177}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 1568, col: 9, offset: 51265}, + name: "EOL", + }, }, }, }, @@ -55063,1563 +8329,815 @@ var g = &grammar{ }, }, { - name: "SingleQuoteItalicText", - pos: position{line: 2179, col: 1, offset: 71265}, + name: "ListElementContent", + pos: position{line: 1573, col: 1, offset: 51373}, expr: &actionExpr{ - pos: position{line: 2180, col: 5, offset: 71295}, - run: (*parser).callonSingleQuoteItalicText1, + pos: position{line: 1574, col: 5, offset: 51400}, + run: (*parser).callonListElementContent1, expr: &seqExpr{ - pos: position{line: 2180, col: 5, offset: 71295}, + pos: position{line: 1574, col: 5, offset: 51400}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2175, col: 40, offset: 71216}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, &labeledExpr{ - pos: position{line: 2181, col: 5, offset: 71335}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2181, col: 15, offset: 71345}, - name: "SingleQuoteItalicTextElements", + pos: position{line: 1574, col: 5, offset: 51400}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1574, col: 14, offset: 51409}, + run: (*parser).callonListElementContent4, + expr: &oneOrMoreExpr{ + pos: position{line: 1574, col: 14, offset: 51409}, + expr: &charClassMatcher{ + pos: position{line: 1574, col: 14, offset: 51409}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, }, }, - &litMatcher{ - pos: position{line: 2177, col: 38, offset: 71259}, - val: "_", - ignoreCase: false, - want: "\"_\"", + &ruleRefExpr{ + pos: position{line: 1577, col: 5, offset: 51479}, + name: "EOL", }, }, }, }, }, { - name: "SingleQuoteItalicTextElements", - pos: position{line: 2186, col: 1, offset: 71512}, + name: "ListElementContinuation", + pos: position{line: 1584, col: 1, offset: 51627}, expr: &actionExpr{ - pos: position{line: 2187, col: 5, offset: 71550}, - run: (*parser).callonSingleQuoteItalicTextElements1, + pos: position{line: 1585, col: 5, offset: 51659}, + run: (*parser).callonListElementContinuation1, expr: &seqExpr{ - pos: position{line: 2187, col: 5, offset: 71550}, + pos: position{line: 1585, col: 5, offset: 51659}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2187, col: 5, offset: 71550}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &labeledExpr{ + pos: position{line: 1585, col: 5, offset: 51659}, + label: "offset", + expr: &zeroOrMoreExpr{ + pos: position{line: 1585, col: 12, offset: 51666}, + expr: &seqExpr{ + pos: position{line: 1585, col: 13, offset: 51667}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1585, col: 13, offset: 51667}, + expr: &ruleRefExpr{ + pos: position{line: 1585, col: 13, offset: 51667}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 1585, col: 20, offset: 51674}, + name: "Newline", + }, + }, }, }, }, - ¬Expr{ - pos: position{line: 2187, col: 10, offset: 71555}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteItalicTextElements7, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + &ruleRefExpr{ + pos: position{line: 1586, col: 5, offset: 51689}, + name: "ListElementContinuationMarker", }, &labeledExpr{ - pos: position{line: 2188, col: 5, offset: 71594}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 2188, col: 14, offset: 71603}, + pos: position{line: 1587, col: 5, offset: 51723}, + label: "element", + expr: &zeroOrOneExpr{ + pos: position{line: 1587, col: 13, offset: 51731}, expr: &ruleRefExpr{ - pos: position{line: 2188, col: 15, offset: 71604}, - name: "SingleQuoteItalicTextElement", + pos: position{line: 1587, col: 13, offset: 51731}, + name: "ListElementContinuationElement", }, }, }, - &andCodeExpr{ - pos: position{line: 2189, col: 5, offset: 71639}, - run: (*parser).callonSingleQuoteItalicTextElements12, - }, }, }, }, }, { - name: "SingleQuoteItalicTextElement", - pos: position{line: 2195, col: 1, offset: 71780}, - expr: &choiceExpr{ - pos: position{line: 2196, col: 5, offset: 71817}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2108, col: 5, offset: 69035}, - run: (*parser).callonSingleQuoteItalicTextElement2, - expr: &seqExpr{ - pos: position{line: 2108, col: 5, offset: 69035}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2108, col: 5, offset: 69035}, - expr: &charClassMatcher{ - pos: position{line: 2108, col: 5, offset: 69035}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, + name: "ListElementContinuationMarker", + pos: position{line: 1592, col: 1, offset: 51866}, + expr: &seqExpr{ + pos: position{line: 1592, col: 34, offset: 51899}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1592, col: 34, offset: 51899}, + val: "+", + ignoreCase: false, + want: "\"+\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1592, col: 38, offset: 51903}, + expr: &ruleRefExpr{ + pos: position{line: 1592, col: 38, offset: 51903}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 1592, col: 45, offset: 51910}, + name: "Newline", + }, + }, + }, + }, + { + name: "ListElementContinuationElement", + pos: position{line: 1594, col: 1, offset: 51919}, + expr: &actionExpr{ + pos: position{line: 1595, col: 5, offset: 51997}, + run: (*parser).callonListElementContinuationElement1, + expr: &seqExpr{ + pos: position{line: 1595, col: 5, offset: 51997}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1595, col: 5, offset: 51997}, + expr: &ruleRefExpr{ + pos: position{line: 1595, col: 6, offset: 51998}, + name: "EOF", + }, + }, + ¬Expr{ + pos: position{line: 1596, col: 5, offset: 52023}, + expr: &ruleRefExpr{ + pos: position{line: 1596, col: 6, offset: 52024}, + name: "ListElement", + }, + }, + &labeledExpr{ + pos: position{line: 1597, col: 5, offset: 52040}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 1597, col: 16, offset: 52051}, + expr: &ruleRefExpr{ + pos: position{line: 1597, col: 17, offset: 52052}, + name: "BlockAttributes", }, - &andExpr{ - pos: position{line: 2108, col: 15, offset: 69045}, - expr: &choiceExpr{ - pos: position{line: 2108, col: 17, offset: 69047}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteItalicTextElement8, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 2105, col: 24, offset: 69007}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - }, + }, + }, + &labeledExpr{ + pos: position{line: 1598, col: 5, offset: 52074}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 1599, col: 9, offset: 52092}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1599, col: 9, offset: 52092}, + name: "BlankLine", + }, + &ruleRefExpr{ + pos: position{line: 1600, col: 11, offset: 52112}, + name: "AttributeDeclaration", + }, + &ruleRefExpr{ + pos: position{line: 1601, col: 11, offset: 52143}, + name: "AttributeReset", + }, + &ruleRefExpr{ + pos: position{line: 1602, col: 11, offset: 52168}, + name: "DelimitedBlock", + }, + &ruleRefExpr{ + pos: position{line: 1603, col: 11, offset: 52193}, + name: "ThematicBreak", + }, + &ruleRefExpr{ + pos: position{line: 1604, col: 11, offset: 52254}, + name: "ImageBlock", + }, + &ruleRefExpr{ + pos: position{line: 1605, col: 11, offset: 52275}, + name: "Table", + }, + &ruleRefExpr{ + pos: position{line: 1606, col: 11, offset: 52291}, + name: "SingleLineComment", + }, + &ruleRefExpr{ + pos: position{line: 1607, col: 11, offset: 52319}, + name: "AdmonitionParagraph", + }, + &ruleRefExpr{ + pos: position{line: 1608, col: 11, offset: 52349}, + name: "LiteralParagraph", + }, + &ruleRefExpr{ + pos: position{line: 1609, col: 11, offset: 52376}, + name: "ListContinuationParagraph", }, }, }, }, }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonSingleQuoteItalicTextElement11, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + }, + }, + }, + { + name: "ListContinuationParagraph", + pos: position{line: 1621, col: 1, offset: 52846}, + expr: &actionExpr{ + pos: position{line: 1622, col: 5, offset: 52880}, + run: (*parser).callonListContinuationParagraph1, + expr: &seqExpr{ + pos: position{line: 1622, col: 5, offset: 52880}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1622, col: 5, offset: 52880}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1622, col: 14, offset: 52889}, + run: (*parser).callonListContinuationParagraph4, + expr: &oneOrMoreExpr{ + pos: position{line: 1622, col: 14, offset: 52889}, + expr: &charClassMatcher{ + pos: position{line: 1622, col: 14, offset: 52889}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, }, }, + &ruleRefExpr{ + pos: position{line: 1625, col: 5, offset: 52946}, + name: "EOL", + }, }, - &seqExpr{ - pos: position{line: 2198, col: 7, offset: 71851}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteItalicTextElement15, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + }, + }, + }, + { + name: "OrderedListElement", + pos: position{line: 1632, col: 1, offset: 53138}, + expr: &actionExpr{ + pos: position{line: 1633, col: 5, offset: 53165}, + run: (*parser).callonOrderedListElement1, + expr: &seqExpr{ + pos: position{line: 1633, col: 5, offset: 53165}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1633, col: 5, offset: 53165}, + label: "prefix", + expr: &ruleRefExpr{ + pos: position{line: 1633, col: 13, offset: 53173}, + name: "OrderedListElementPrefix", }, - ¬Expr{ - pos: position{line: 2198, col: 15, offset: 71859}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteItalicTextElement21, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, + }, + &labeledExpr{ + pos: position{line: 1634, col: 5, offset: 53204}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1634, col: 14, offset: 53213}, + name: "ListElementContent", }, }, }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteItalicTextElement26, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteItalicTextElement28, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonSingleQuoteItalicTextElement31, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteItalicTextElement35, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteItalicTextElement42, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteItalicTextElement47, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteItalicTextElement49, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + { + name: "OrderedListElementPrefix", + pos: position{line: 1639, col: 1, offset: 53340}, + expr: &actionExpr{ + pos: position{line: 1640, col: 5, offset: 53373}, + run: (*parser).callonOrderedListElementPrefix1, + expr: &seqExpr{ + pos: position{line: 1640, col: 5, offset: 53373}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1640, col: 5, offset: 53373}, + expr: &ruleRefExpr{ + pos: position{line: 1640, col: 5, offset: 53373}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 1640, col: 12, offset: 53380}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1642, col: 9, offset: 53443}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1642, col: 9, offset: 53443}, + run: (*parser).callonOrderedListElementPrefix7, + expr: &seqExpr{ + pos: position{line: 1642, col: 9, offset: 53443}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1642, col: 9, offset: 53443}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1642, col: 16, offset: 53450}, + run: (*parser).callonOrderedListElementPrefix10, + expr: &oneOrMoreExpr{ + pos: position{line: 1642, col: 16, offset: 53450}, + expr: &litMatcher{ + pos: position{line: 1642, col: 17, offset: 53451}, + val: ".", + ignoreCase: false, + want: "\".\"", }, }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonSingleQuoteItalicTextElement53, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteItalicTextElement57, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteItalicTextElement64, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteItalicTextElement69, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteItalicTextElement71, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, + &andCodeExpr{ + pos: position{line: 1646, col: 9, offset: 53551}, + run: (*parser).callonOrderedListElementPrefix13, }, }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteItalicTextElement75, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteItalicTextElement79, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, + }, + }, + &actionExpr{ + pos: position{line: 1665, col: 11, offset: 54268}, + run: (*parser).callonOrderedListElementPrefix14, + expr: &seqExpr{ + pos: position{line: 1665, col: 11, offset: 54268}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1665, col: 11, offset: 54268}, + expr: &charClassMatcher{ + pos: position{line: 1665, col: 12, offset: 54269}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteItalicTextElement85, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteItalicTextElement89, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, + &litMatcher{ + pos: position{line: 1665, col: 20, offset: 54277}, + val: ".", + ignoreCase: false, + want: "\".\"", }, }, }, }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 2200, col: 7, offset: 71933}, - name: "InlineMacro", - }, - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonSingleQuoteItalicTextElement96, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteItalicTextElement100, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteItalicTextElement102, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteItalicTextElement104, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteItalicTextElement106, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteItalicTextElement108, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteItalicTextElement110, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteItalicTextElement112, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteItalicTextElement114, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", + &actionExpr{ + pos: position{line: 1667, col: 13, offset: 54394}, + run: (*parser).callonOrderedListElementPrefix19, + expr: &seqExpr{ + pos: position{line: 1667, col: 13, offset: 54394}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1667, col: 14, offset: 54395}, + val: "[a-z]", + ranges: []rune{'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1667, col: 21, offset: 54402}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, }, }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteItalicTextElement116, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", + }, + &actionExpr{ + pos: position{line: 1669, col: 13, offset: 54522}, + run: (*parser).callonOrderedListElementPrefix23, + expr: &seqExpr{ + pos: position{line: 1669, col: 13, offset: 54522}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1669, col: 14, offset: 54523}, + val: "[A-Z]", + ranges: []rune{'A', 'Z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1669, col: 21, offset: 54530}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, }, }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteItalicTextElement118, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteItalicTextElement120, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", + }, + &actionExpr{ + pos: position{line: 1671, col: 13, offset: 54650}, + run: (*parser).callonOrderedListElementPrefix27, + expr: &seqExpr{ + pos: position{line: 1671, col: 13, offset: 54650}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1671, col: 13, offset: 54650}, + expr: &charClassMatcher{ + pos: position{line: 1671, col: 14, offset: 54651}, + val: "[ivxdlcm]", + chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteItalicTextElement123, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteItalicTextElement127, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, + inverted: false, }, }, + &litMatcher{ + pos: position{line: 1671, col: 26, offset: 54663}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, }, }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteItalicTextElement134, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteItalicTextElement136, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", + }, + &actionExpr{ + pos: position{line: 1673, col: 13, offset: 54783}, + run: (*parser).callonOrderedListElementPrefix32, + expr: &seqExpr{ + pos: position{line: 1673, col: 13, offset: 54783}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1673, col: 13, offset: 54783}, + expr: &charClassMatcher{ + pos: position{line: 1673, col: 14, offset: 54784}, + val: "[IVXDLCM]", + chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteItalicTextElement141, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + inverted: false, }, }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteItalicTextElement148, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteItalicTextElement150, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteItalicTextElement152, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", + &litMatcher{ + pos: position{line: 1673, col: 26, offset: 54796}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, }, }, }, }, }, }, - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteItalicTextElement154, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteItalicTextElement156, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteItalicTextElement158, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteItalicTextElement160, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", + &ruleRefExpr{ + pos: position{line: 1675, col: 12, offset: 54915}, + name: "Spaces", }, }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteItalicTextElement162, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", + }, + }, + }, + { + name: "UnorderedListElement", + pos: position{line: 1682, col: 1, offset: 55033}, + expr: &actionExpr{ + pos: position{line: 1683, col: 5, offset: 55062}, + run: (*parser).callonUnorderedListElement1, + expr: &seqExpr{ + pos: position{line: 1683, col: 5, offset: 55062}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1683, col: 5, offset: 55062}, + label: "prefix", + expr: &ruleRefExpr{ + pos: position{line: 1683, col: 13, offset: 55070}, + name: "UnorderedListElementPrefix", + }, }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteItalicTextElement164, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", + &labeledExpr{ + pos: position{line: 1684, col: 5, offset: 55103}, + label: "checkstyle", + expr: &zeroOrOneExpr{ + pos: position{line: 1684, col: 16, offset: 55114}, + expr: &ruleRefExpr{ + pos: position{line: 1684, col: 17, offset: 55115}, + name: "UnorderedListElementCheckStyle", + }, + }, }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteItalicTextElement166, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", + &labeledExpr{ + pos: position{line: 1685, col: 5, offset: 55153}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 1685, col: 14, offset: 55162}, + name: "ListElementContent", + }, }, }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteItalicTextElement168, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", + }, + }, + }, + { + name: "UnorderedListElementPrefix", + pos: position{line: 1689, col: 1, offset: 55300}, + expr: &actionExpr{ + pos: position{line: 1690, col: 5, offset: 55335}, + run: (*parser).callonUnorderedListElementPrefix1, + expr: &seqExpr{ + pos: position{line: 1690, col: 5, offset: 55335}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1690, col: 5, offset: 55335}, + expr: &ruleRefExpr{ + pos: position{line: 1690, col: 5, offset: 55335}, + name: "Space", + }, }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteItalicTextElement170, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteItalicTextElement172, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteItalicTextElement175, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteItalicTextElement179, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + &labeledExpr{ + pos: position{line: 1690, col: 12, offset: 55342}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1690, col: 20, offset: 55350}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1692, col: 9, offset: 55407}, + run: (*parser).callonUnorderedListElementPrefix7, + expr: &seqExpr{ + pos: position{line: 1692, col: 9, offset: 55407}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1692, col: 9, offset: 55407}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1692, col: 16, offset: 55414}, + run: (*parser).callonUnorderedListElementPrefix10, + expr: &oneOrMoreExpr{ + pos: position{line: 1692, col: 16, offset: 55414}, + expr: &litMatcher{ + pos: position{line: 1692, col: 17, offset: 55415}, + val: "*", + ignoreCase: false, + want: "\"*\"", }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, }, + &andCodeExpr{ + pos: position{line: 1696, col: 9, offset: 55515}, + run: (*parser).callonUnorderedListElementPrefix13, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1713, col: 14, offset: 56222}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1713, col: 21, offset: 56229}, + run: (*parser).callonUnorderedListElementPrefix15, + expr: &litMatcher{ + pos: position{line: 1713, col: 22, offset: 56230}, + val: "-", + ignoreCase: false, + want: "\"-\"", }, }, }, }, }, }, + &ruleRefExpr{ + pos: position{line: 1715, col: 13, offset: 56316}, + name: "Spaces", + }, }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteItalicTextElement186, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteItalicTextElement188, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteItalicTextElement193, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, + }, + }, + }, + { + name: "UnorderedListElementCheckStyle", + pos: position{line: 1719, col: 1, offset: 56352}, + expr: &actionExpr{ + pos: position{line: 1720, col: 5, offset: 56391}, + run: (*parser).callonUnorderedListElementCheckStyle1, + expr: &seqExpr{ + pos: position{line: 1720, col: 5, offset: 56391}, + exprs: []interface{}{ + &andExpr{ + pos: position{line: 1720, col: 5, offset: 56391}, + expr: &litMatcher{ + pos: position{line: 1720, col: 6, offset: 56392}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + }, + &labeledExpr{ + pos: position{line: 1720, col: 10, offset: 56396}, + label: "style", + expr: &choiceExpr{ + pos: position{line: 1721, col: 7, offset: 56410}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1721, col: 7, offset: 56410}, + run: (*parser).callonUnorderedListElementCheckStyle7, + expr: &litMatcher{ + pos: position{line: 1721, col: 7, offset: 56410}, + val: "[ ]", + ignoreCase: false, + want: "\"[ ]\"", + }, + }, + &actionExpr{ + pos: position{line: 1722, col: 7, offset: 56455}, + run: (*parser).callonUnorderedListElementCheckStyle9, + expr: &litMatcher{ + pos: position{line: 1722, col: 7, offset: 56455}, + val: "[*]", + ignoreCase: false, + want: "\"[*]\"", + }, + }, + &actionExpr{ + pos: position{line: 1723, col: 7, offset: 56498}, + run: (*parser).callonUnorderedListElementCheckStyle11, + expr: &litMatcher{ + pos: position{line: 1723, col: 7, offset: 56498}, + val: "[x]", + ignoreCase: false, + want: "\"[x]\"", }, }, }, }, }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteItalicTextElement200, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", + &ruleRefExpr{ + pos: position{line: 1724, col: 7, offset: 56540}, + name: "Spaces", }, }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteItalicTextElement202, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", + }, + }, + }, + { + name: "LabeledListElement", + pos: position{line: 1731, col: 1, offset: 56664}, + expr: &actionExpr{ + pos: position{line: 1732, col: 5, offset: 56691}, + run: (*parser).callonLabeledListElement1, + expr: &seqExpr{ + pos: position{line: 1732, col: 5, offset: 56691}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1732, col: 5, offset: 56691}, + label: "term", + expr: &ruleRefExpr{ + pos: position{line: 1732, col: 11, offset: 56697}, + name: "LabeledListElementTerm", + }, }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteItalicTextElement204, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", + &labeledExpr{ + pos: position{line: 1733, col: 5, offset: 56726}, + label: "separator", + expr: &ruleRefExpr{ + pos: position{line: 1733, col: 16, offset: 56737}, + name: "LabeledListElementSeparator", + }, }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteItalicTextElement206, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", + &labeledExpr{ + pos: position{line: 1734, col: 5, offset: 56771}, + label: "description", + expr: &ruleRefExpr{ + pos: position{line: 1734, col: 18, offset: 56784}, + name: "LabeledListElementDescription", + }, }, }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonSingleQuoteItalicTextElement208, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", + }, + }, + }, + { + name: "LabeledListElementTerm", + pos: position{line: 1739, col: 1, offset: 56919}, + expr: &actionExpr{ + pos: position{line: 1740, col: 5, offset: 56950}, + run: (*parser).callonLabeledListElementTerm1, + expr: &oneOrMoreExpr{ + pos: position{line: 1740, col: 5, offset: 56950}, + expr: &seqExpr{ + pos: position{line: 1740, col: 6, offset: 56951}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1740, col: 6, offset: 56951}, + expr: &ruleRefExpr{ + pos: position{line: 1740, col: 7, offset: 56952}, + name: "LabeledListElementSeparator", }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, + }, + ¬Expr{ + pos: position{line: 1740, col: 35, offset: 56980}, + expr: &ruleRefExpr{ + pos: position{line: 1740, col: 36, offset: 56981}, + name: "EOL", }, }, + &anyMatcher{ + line: 1740, col: 40, offset: 56985, + }, }, }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonSingleQuoteItalicTextElement214, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, + }, + }, + }, + { + name: "LabeledListElementSeparator", + pos: position{line: 1744, col: 1, offset: 57065}, + expr: &actionExpr{ + pos: position{line: 1745, col: 5, offset: 57101}, + run: (*parser).callonLabeledListElementSeparator1, + expr: &seqExpr{ + pos: position{line: 1745, col: 5, offset: 57101}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1745, col: 5, offset: 57101}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1745, col: 16, offset: 57112}, + run: (*parser).callonLabeledListElementSeparator4, + expr: &oneOrMoreExpr{ + pos: position{line: 1745, col: 16, offset: 57112}, + expr: &litMatcher{ + pos: position{line: 1745, col: 17, offset: 57113}, + val: ":", ignoreCase: false, - inverted: false, + want: "\":\"", }, }, }, }, + &andCodeExpr{ + pos: position{line: 1748, col: 5, offset: 57170}, + run: (*parser).callonLabeledListElementSeparator7, + }, }, + }, + }, + }, + { + name: "LabeledListElementDescription", + pos: position{line: 1755, col: 1, offset: 57382}, + expr: &choiceExpr{ + pos: position{line: 1756, col: 5, offset: 57420}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteItalicTextElement220, + pos: position{line: 1758, col: 9, offset: 57485}, + run: (*parser).callonLabeledListElementDescription2, expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, + pos: position{line: 1758, col: 9, offset: 57485}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteItalicTextElement222, + &zeroOrMoreExpr{ + pos: position{line: 1758, col: 9, offset: 57485}, + expr: &ruleRefExpr{ + pos: position{line: 1758, col: 9, offset: 57485}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 1758, col: 16, offset: 57492}, + name: "EOL", + }, + &zeroOrMoreExpr{ + pos: position{line: 1759, col: 9, offset: 57505}, + expr: &ruleRefExpr{ + pos: position{line: 1759, col: 9, offset: 57505}, + name: "BlankLine", + }, }, &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonSingleQuoteItalicTextElement225, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonSingleQuoteItalicTextElement227, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteItalicTextElement231, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteItalicTextElement235, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonSingleQuoteItalicTextElement241, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteItalicTextElement246, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteItalicTextElement250, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteItalicTextElement256, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteItalicTextElement260, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonSingleQuoteItalicTextElement266, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonSingleQuoteItalicTextElement269, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteItalicTextElement273, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonSingleQuoteItalicTextElement277, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 1760, col: 9, offset: 57525}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 1760, col: 17, offset: 57533}, + expr: &ruleRefExpr{ + pos: position{line: 1760, col: 18, offset: 57534}, + name: "ListElementParagraphLine", }, }, }, }, }, }, - &ruleRefExpr{ - pos: position{line: 2203, col: 7, offset: 72037}, - name: "QuotedTextInSingleQuoteItalicText", - }, &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonSingleQuoteItalicTextElement280, + pos: position{line: 1768, col: 9, offset: 57768}, + run: (*parser).callonLabeledListElementDescription12, expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, + pos: position{line: 1768, col: 9, offset: 57768}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", + &ruleRefExpr{ + pos: position{line: 1768, col: 9, offset: 57768}, + name: "Spaces", }, &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", + pos: position{line: 1769, col: 9, offset: 57820}, + label: "content", expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonSingleQuoteItalicTextElement284, + pos: position{line: 1769, col: 18, offset: 57829}, + run: (*parser).callonLabeledListElementDescription16, expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, + pos: position{line: 1769, col: 18, offset: 57829}, expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, + pos: position{line: 1769, col: 18, offset: 57829}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - inverted: false, + inverted: true, }, }, }, }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &charClassMatcher{ - pos: position{line: 2232, col: 5, offset: 72763}, - val: "[^\\r\\n _]", - chars: []rune{'\r', '\n', ' ', '_'}, - ignoreCase: false, - inverted: true, - }, - &actionExpr{ - pos: position{line: 2233, col: 7, offset: 72870}, - run: (*parser).callonSingleQuoteItalicTextElement289, - expr: &seqExpr{ - pos: position{line: 2233, col: 7, offset: 72870}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2233, col: 7, offset: 72870}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonSingleQuoteItalicTextElement292, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + &ruleRefExpr{ + pos: position{line: 1772, col: 9, offset: 57911}, + name: "EOL", }, }, }, @@ -56628,266 +9146,69 @@ var g = &grammar{ }, }, { - name: "QuotedTextInSingleQuoteItalicText", - pos: position{line: 2207, col: 1, offset: 72142}, - expr: &choiceExpr{ - pos: position{line: 2209, col: 5, offset: 72206}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2209, col: 5, offset: 72206}, - run: (*parser).callonQuotedTextInSingleQuoteItalicText2, - expr: &seqExpr{ - pos: position{line: 2209, col: 5, offset: 72206}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 2209, col: 5, offset: 72206}, - expr: &litMatcher{ - pos: position{line: 2209, col: 7, offset: 72208}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &labeledExpr{ - pos: position{line: 2210, col: 5, offset: 72217}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2211, col: 9, offset: 72235}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2211, col: 9, offset: 72235}, - name: "EscapedBoldText", - }, - &ruleRefExpr{ - pos: position{line: 2212, col: 11, offset: 72262}, - name: "EscapedMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2213, col: 11, offset: 72290}, - name: "EscapedMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2214, col: 11, offset: 72321}, - name: "EscapedSubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2215, col: 11, offset: 72352}, - name: "EscapedSuperscriptText", - }, - }, - }, - }, - }, + name: "Callout", + pos: position{line: 1780, col: 1, offset: 58062}, + expr: &actionExpr{ + pos: position{line: 1782, col: 5, offset: 58140}, + run: (*parser).callonCallout1, + expr: &seqExpr{ + pos: position{line: 1782, col: 5, offset: 58140}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 1782, col: 5, offset: 58140}, + run: (*parser).callonCallout3, }, - }, - &actionExpr{ - pos: position{line: 2221, col: 5, offset: 72452}, - run: (*parser).callonQuotedTextInSingleQuoteItalicText13, - expr: &seqExpr{ - pos: position{line: 2221, col: 5, offset: 72452}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2221, col: 5, offset: 72452}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 2221, col: 16, offset: 72463}, - expr: &ruleRefExpr{ - pos: position{line: 2221, col: 17, offset: 72464}, - name: "LongHandAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 2222, col: 5, offset: 72490}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 2222, col: 11, offset: 72496}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2222, col: 11, offset: 72496}, - name: "BoldText", - }, - &ruleRefExpr{ - pos: position{line: 2223, col: 11, offset: 72515}, - name: "DoubleQuoteItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2224, col: 11, offset: 72547}, - name: "MarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2225, col: 11, offset: 72568}, - name: "MonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2226, col: 11, offset: 72592}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2227, col: 11, offset: 72616}, - name: "SuperscriptText", - }, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 1785, col: 5, offset: 58207}, + val: "<", + ignoreCase: false, + want: "\"<\"", }, - }, - }, - }, - }, - { - name: "EscapedItalicText", - pos: position{line: 2237, col: 1, offset: 73048}, - expr: &choiceExpr{ - pos: position{line: 2239, col: 5, offset: 73113}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2239, col: 5, offset: 73113}, - run: (*parser).callonEscapedItalicText2, - expr: &seqExpr{ - pos: position{line: 2239, col: 5, offset: 73113}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2239, col: 5, offset: 73113}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - run: (*parser).callonEscapedItalicText5, - expr: &seqExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1954, col: 25, offset: 64010}, - val: "\\\\", - ignoreCase: false, - want: "\"\\\\\\\\\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1954, col: 30, offset: 64015}, - expr: &litMatcher{ - pos: position{line: 1954, col: 30, offset: 64015}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2239, col: 40, offset: 73148}, - val: "__", - ignoreCase: false, - want: "\"__\"", - }, - &labeledExpr{ - pos: position{line: 2239, col: 45, offset: 73153}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2239, col: 55, offset: 73163}, - name: "DoubleQuoteItalicTextElements", + &labeledExpr{ + pos: position{line: 1785, col: 9, offset: 58211}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1785, col: 14, offset: 58216}, + run: (*parser).callonCallout6, + expr: &oneOrMoreExpr{ + pos: position{line: 1785, col: 14, offset: 58216}, + expr: &charClassMatcher{ + pos: position{line: 1785, col: 14, offset: 58216}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, - &litMatcher{ - pos: position{line: 2239, col: 86, offset: 73194}, - val: "__", - ignoreCase: false, - want: "\"__\"", - }, }, }, - }, - &actionExpr{ - pos: position{line: 2243, col: 7, offset: 73359}, - run: (*parser).callonEscapedItalicText14, - expr: &seqExpr{ - pos: position{line: 2243, col: 7, offset: 73359}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2243, col: 7, offset: 73359}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedItalicText17, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2243, col: 42, offset: 73394}, - val: "__", - ignoreCase: false, - want: "\"__\"", - }, - &labeledExpr{ - pos: position{line: 2243, col: 47, offset: 73399}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2243, col: 57, offset: 73409}, - name: "SingleQuoteItalicTextElements", - }, - }, - &litMatcher{ - pos: position{line: 2243, col: 88, offset: 73440}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, + &litMatcher{ + pos: position{line: 1785, col: 62, offset: 58264}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1785, col: 66, offset: 58268}, + expr: &ruleRefExpr{ + pos: position{line: 1785, col: 66, offset: 58268}, + name: "Space", }, }, - }, - &actionExpr{ - pos: position{line: 2248, col: 7, offset: 73681}, - run: (*parser).callonEscapedItalicText24, - expr: &seqExpr{ - pos: position{line: 2248, col: 7, offset: 73681}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2248, col: 7, offset: 73681}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedItalicText27, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, + &andExpr{ + pos: position{line: 1785, col: 73, offset: 58275}, + expr: &choiceExpr{ + pos: position{line: 1785, col: 75, offset: 58277}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1785, col: 75, offset: 58277}, + name: "EOL", }, - }, - &litMatcher{ - pos: position{line: 2248, col: 42, offset: 73716}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, - &labeledExpr{ - pos: position{line: 2248, col: 46, offset: 73720}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2248, col: 56, offset: 73730}, - name: "SingleQuoteItalicTextElements", + &ruleRefExpr{ + pos: position{line: 1785, col: 81, offset: 58283}, + name: "Callout", }, }, - &litMatcher{ - pos: position{line: 2248, col: 87, offset: 73761}, - val: "_", - ignoreCase: false, - want: "\"_\"", - }, }, }, }, @@ -56895,1565 +9216,592 @@ var g = &grammar{ }, }, { - name: "MonospaceText", - pos: position{line: 2255, col: 1, offset: 74080}, - expr: &choiceExpr{ - pos: position{line: 2255, col: 18, offset: 74097}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2255, col: 18, offset: 74097}, - name: "DoubleQuoteMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2255, col: 45, offset: 74124}, - name: "SingleQuoteMonospaceText", + name: "CalloutListElement", + pos: position{line: 1789, col: 1, offset: 58344}, + expr: &actionExpr{ + pos: position{line: 1790, col: 5, offset: 58371}, + run: (*parser).callonCalloutListElement1, + expr: &seqExpr{ + pos: position{line: 1790, col: 5, offset: 58371}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1790, col: 5, offset: 58371}, + label: "ref", + expr: &ruleRefExpr{ + pos: position{line: 1790, col: 10, offset: 58376}, + name: "CalloutListElementPrefix", + }, + }, + &labeledExpr{ + pos: position{line: 1791, col: 5, offset: 58407}, + label: "description", + expr: &ruleRefExpr{ + pos: position{line: 1791, col: 18, offset: 58420}, + name: "CalloutListElementContent", + }, + }, }, }, }, }, { - name: "DoubleQuoteMonospaceText", - pos: position{line: 2269, col: 1, offset: 74476}, + name: "CalloutListElementPrefix", + pos: position{line: 1795, col: 1, offset: 58539}, expr: &actionExpr{ - pos: position{line: 2270, col: 5, offset: 74509}, - run: (*parser).callonDoubleQuoteMonospaceText1, + pos: position{line: 1796, col: 5, offset: 58572}, + run: (*parser).callonCalloutListElementPrefix1, expr: &seqExpr{ - pos: position{line: 2270, col: 5, offset: 74509}, + pos: position{line: 1796, col: 5, offset: 58572}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2267, col: 38, offset: 74470}, - val: "``", + pos: position{line: 1796, col: 5, offset: 58572}, + val: "<", ignoreCase: false, - want: "\"``\"", + want: "\"<\"", }, &labeledExpr{ - pos: position{line: 2271, col: 5, offset: 74548}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2271, col: 15, offset: 74558}, - name: "DoubleQuoteMonospaceTextElements", + pos: position{line: 1796, col: 9, offset: 58576}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1796, col: 14, offset: 58581}, + run: (*parser).callonCalloutListElementPrefix5, + expr: &oneOrMoreExpr{ + pos: position{line: 1796, col: 14, offset: 58581}, + expr: &charClassMatcher{ + pos: position{line: 1796, col: 14, offset: 58581}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, }, }, &litMatcher{ - pos: position{line: 2267, col: 38, offset: 74470}, - val: "``", + pos: position{line: 1796, col: 62, offset: 58629}, + val: ">", ignoreCase: false, - want: "\"``\"", + want: "\">\"", + }, + &ruleRefExpr{ + pos: position{line: 1796, col: 66, offset: 58633}, + name: "Spaces", }, }, }, }, }, { - name: "DoubleQuoteMonospaceTextElements", - pos: position{line: 2276, col: 1, offset: 74730}, - expr: &oneOrMoreExpr{ - pos: position{line: 2276, col: 37, offset: 74766}, - expr: &ruleRefExpr{ - pos: position{line: 2276, col: 37, offset: 74766}, - name: "DoubleQuoteMonospaceTextElement", - }, - }, - }, - { - name: "DoubleQuoteMonospaceTextElement", - pos: position{line: 2278, col: 1, offset: 74833}, + name: "CalloutListElementContent", + pos: position{line: 1800, col: 1, offset: 58673}, expr: &actionExpr{ - pos: position{line: 2279, col: 5, offset: 74873}, - run: (*parser).callonDoubleQuoteMonospaceTextElement1, + pos: position{line: 1801, col: 5, offset: 58755}, + run: (*parser).callonCalloutListElementContent1, expr: &seqExpr{ - pos: position{line: 2279, col: 5, offset: 74873}, + pos: position{line: 1801, col: 5, offset: 58755}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2279, col: 5, offset: 74873}, - expr: &litMatcher{ - pos: position{line: 2267, col: 38, offset: 74470}, - val: "``", - ignoreCase: false, - want: "\"``\"", - }, - }, &labeledExpr{ - pos: position{line: 2280, col: 5, offset: 74912}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2281, col: 9, offset: 74930}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2260, col: 5, offset: 74207}, - run: (*parser).callonDoubleQuoteMonospaceTextElement7, - expr: &seqExpr{ - pos: position{line: 2260, col: 5, offset: 74207}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2260, col: 5, offset: 74207}, - expr: &charClassMatcher{ - pos: position{line: 2260, col: 5, offset: 74207}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 1801, col: 5, offset: 58755}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1801, col: 14, offset: 58764}, + run: (*parser).callonCalloutListElementContent4, + expr: &oneOrMoreExpr{ + pos: position{line: 1801, col: 14, offset: 58764}, + expr: &charClassMatcher{ + pos: position{line: 1801, col: 14, offset: 58764}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 1804, col: 5, offset: 58821}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "ShortcutParagraph", + pos: position{line: 1811, col: 1, offset: 59144}, + expr: &actionExpr{ + pos: position{line: 1812, col: 5, offset: 59170}, + run: (*parser).callonShortcutParagraph1, + expr: &seqExpr{ + pos: position{line: 1812, col: 5, offset: 59170}, + exprs: []interface{}{ + &andExpr{ + pos: position{line: 1812, col: 5, offset: 59170}, + expr: &ruleRefExpr{ + pos: position{line: 1812, col: 7, offset: 59172}, + name: "Alphanum", + }, + }, + &andExpr{ + pos: position{line: 1813, col: 5, offset: 59281}, + expr: ¬Expr{ + pos: position{line: 1813, col: 7, offset: 59283}, + expr: &ruleRefExpr{ + pos: position{line: 1813, col: 8, offset: 59284}, + name: "OrderedListElementPrefix", + }, + }, + }, + &andExpr{ + pos: position{line: 1814, col: 5, offset: 59314}, + expr: ¬Expr{ + pos: position{line: 1814, col: 7, offset: 59316}, + expr: &ruleRefExpr{ + pos: position{line: 1814, col: 8, offset: 59317}, + name: "UnorderedListElementPrefix", + }, + }, + }, + &andExpr{ + pos: position{line: 1815, col: 5, offset: 59349}, + expr: ¬Expr{ + pos: position{line: 1815, col: 7, offset: 59351}, + expr: &ruleRefExpr{ + pos: position{line: 1815, col: 8, offset: 59352}, + name: "AdmonitionKind", + }, + }, + }, + &labeledExpr{ + pos: position{line: 1816, col: 5, offset: 59372}, + label: "firstLine", + expr: &ruleRefExpr{ + pos: position{line: 1816, col: 16, offset: 59383}, + name: "ParagraphRawLine", + }, + }, + &andCodeExpr{ + pos: position{line: 1817, col: 5, offset: 59406}, + run: (*parser).callonShortcutParagraph16, + }, + &labeledExpr{ + pos: position{line: 1824, col: 5, offset: 59768}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 1824, col: 16, offset: 59779}, + expr: &actionExpr{ + pos: position{line: 1825, col: 9, offset: 59789}, + run: (*parser).callonShortcutParagraph19, + expr: &seqExpr{ + pos: position{line: 1825, col: 9, offset: 59789}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1825, col: 9, offset: 59789}, + expr: &ruleRefExpr{ + pos: position{line: 1825, col: 10, offset: 59790}, + name: "EOF", }, - &andExpr{ - pos: position{line: 2260, col: 15, offset: 74217}, - expr: &choiceExpr{ - pos: position{line: 2260, col: 17, offset: 74219}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMonospaceTextElement13, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 2257, col: 27, offset: 74176}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, + }, + ¬Expr{ + pos: position{line: 1826, col: 9, offset: 59803}, + expr: &ruleRefExpr{ + pos: position{line: 1826, col: 10, offset: 59804}, + name: "BlankLine", }, }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDoubleQuoteMonospaceTextElement16, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + ¬Expr{ + pos: position{line: 1827, col: 9, offset: 59822}, + expr: &ruleRefExpr{ + pos: position{line: 1827, col: 10, offset: 59823}, + name: "BlockAttributes", + }, }, - }, - }, - &seqExpr{ - pos: position{line: 2283, col: 11, offset: 75008}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMonospaceTextElement20, + ¬Expr{ + pos: position{line: 1828, col: 9, offset: 59847}, + expr: &ruleRefExpr{ + pos: position{line: 1828, col: 10, offset: 59848}, + name: "ListElementContinuationMarker", + }, + }, + &labeledExpr{ + pos: position{line: 1829, col: 9, offset: 59886}, + label: "line", expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, + pos: position{line: 1829, col: 15, offset: 59892}, alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &ruleRefExpr{ + pos: position{line: 1829, col: 15, offset: 59892}, + name: "SingleLineComment", }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &ruleRefExpr{ + pos: position{line: 1829, col: 35, offset: 59912}, + name: "ParagraphRawLine", }, }, }, }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "Paragraph", + pos: position{line: 1836, col: 1, offset: 60089}, + expr: &actionExpr{ + pos: position{line: 1837, col: 5, offset: 60107}, + run: (*parser).callonParagraph1, + expr: &seqExpr{ + pos: position{line: 1837, col: 5, offset: 60107}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1837, col: 5, offset: 60107}, + label: "firstLine", + expr: &ruleRefExpr{ + pos: position{line: 1837, col: 16, offset: 60118}, + name: "ParagraphRawLine", + }, + }, + &labeledExpr{ + pos: position{line: 1838, col: 5, offset: 60141}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 1838, col: 16, offset: 60152}, + expr: &actionExpr{ + pos: position{line: 1839, col: 9, offset: 60162}, + run: (*parser).callonParagraph7, + expr: &seqExpr{ + pos: position{line: 1839, col: 9, offset: 60162}, + exprs: []interface{}{ ¬Expr{ - pos: position{line: 2283, col: 19, offset: 75016}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMonospaceTextElement26, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + pos: position{line: 1839, col: 9, offset: 60162}, + expr: &ruleRefExpr{ + pos: position{line: 1839, col: 10, offset: 60163}, + name: "EOF", }, }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteMonospaceTextElement31, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteMonospaceTextElement33, + ¬Expr{ + pos: position{line: 1840, col: 9, offset: 60175}, + expr: &ruleRefExpr{ + pos: position{line: 1840, col: 10, offset: 60176}, + name: "BlankLine", }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonDoubleQuoteMonospaceTextElement36, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMonospaceTextElement40, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteMonospaceTextElement47, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteMonospaceTextElement52, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteMonospaceTextElement54, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonDoubleQuoteMonospaceTextElement58, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMonospaceTextElement62, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteMonospaceTextElement69, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteMonospaceTextElement74, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteMonospaceTextElement76, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteMonospaceTextElement80, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMonospaceTextElement84, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteMonospaceTextElement90, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMonospaceTextElement94, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, + }, + ¬Expr{ + pos: position{line: 1841, col: 9, offset: 60194}, + expr: &ruleRefExpr{ + pos: position{line: 1841, col: 10, offset: 60195}, + name: "BlockAttributes", }, }, - }, - }, - &ruleRefExpr{ - pos: position{line: 2285, col: 11, offset: 75098}, - name: "InlineMacro", - }, - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonDoubleQuoteMonospaceTextElement101, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", + ¬Expr{ + pos: position{line: 1842, col: 9, offset: 60219}, + expr: &ruleRefExpr{ + pos: position{line: 1842, col: 10, offset: 60220}, + name: "ListElementContinuationMarker", }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, + }, + &labeledExpr{ + pos: position{line: 1843, col: 9, offset: 60258}, + label: "line", + expr: &choiceExpr{ + pos: position{line: 1843, col: 15, offset: 60264}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteMonospaceTextElement105, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteMonospaceTextElement107, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteMonospaceTextElement109, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteMonospaceTextElement111, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteMonospaceTextElement113, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteMonospaceTextElement115, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteMonospaceTextElement117, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteMonospaceTextElement119, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteMonospaceTextElement121, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMonospaceTextElement123, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMonospaceTextElement125, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMonospaceTextElement128, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMonospaceTextElement132, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMonospaceTextElement139, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMonospaceTextElement141, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMonospaceTextElement146, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteMonospaceTextElement153, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteMonospaceTextElement155, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, + &ruleRefExpr{ + pos: position{line: 1843, col: 15, offset: 60264}, + name: "SingleLineComment", }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteMonospaceTextElement157, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, + &ruleRefExpr{ + pos: position{line: 1843, col: 35, offset: 60284}, + name: "ParagraphRawLine", }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteMonospaceTextElement159, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteMonospaceTextElement161, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteMonospaceTextElement163, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteMonospaceTextElement165, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteMonospaceTextElement167, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteMonospaceTextElement169, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteMonospaceTextElement171, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteMonospaceTextElement173, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMonospaceTextElement175, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMonospaceTextElement177, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", + }, + }, + }, + }, + }, + }, + }, + { + name: "AdmonitionParagraph", + pos: position{line: 1851, col: 1, offset: 60493}, + expr: &actionExpr{ + pos: position{line: 1852, col: 5, offset: 60521}, + run: (*parser).callonAdmonitionParagraph1, + expr: &seqExpr{ + pos: position{line: 1852, col: 5, offset: 60521}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1852, col: 5, offset: 60521}, + label: "kind", + expr: &ruleRefExpr{ + pos: position{line: 1852, col: 11, offset: 60527}, + name: "AdmonitionKind", + }, + }, + &litMatcher{ + pos: position{line: 1852, col: 27, offset: 60543}, + val: ": ", + ignoreCase: false, + want: "\": \"", + }, + &labeledExpr{ + pos: position{line: 1853, col: 5, offset: 60553}, + label: "firstLine", + expr: &ruleRefExpr{ + pos: position{line: 1853, col: 16, offset: 60564}, + name: "ParagraphRawLine", + }, + }, + &labeledExpr{ + pos: position{line: 1854, col: 5, offset: 60587}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 1854, col: 16, offset: 60598}, + expr: &actionExpr{ + pos: position{line: 1855, col: 9, offset: 60608}, + run: (*parser).callonAdmonitionParagraph10, + expr: &seqExpr{ + pos: position{line: 1855, col: 9, offset: 60608}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1855, col: 9, offset: 60608}, + expr: &ruleRefExpr{ + pos: position{line: 1855, col: 10, offset: 60609}, + name: "ListElementContinuationMarker", }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, + }, + &labeledExpr{ + pos: position{line: 1856, col: 9, offset: 60647}, + label: "line", + expr: &choiceExpr{ + pos: position{line: 1856, col: 15, offset: 60653}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMonospaceTextElement180, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &ruleRefExpr{ + pos: position{line: 1856, col: 15, offset: 60653}, + name: "SingleLineComment", }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMonospaceTextElement184, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1856, col: 35, offset: 60673}, + name: "ParagraphRawLine", }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMonospaceTextElement191, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMonospaceTextElement193, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMonospaceTextElement198, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + }, + }, + }, + { + name: "ParagraphRawLine", + pos: position{line: 1863, col: 1, offset: 60872}, + expr: &actionExpr{ + pos: position{line: 1864, col: 5, offset: 60897}, + run: (*parser).callonParagraphRawLine1, + expr: &seqExpr{ + pos: position{line: 1864, col: 5, offset: 60897}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1864, col: 5, offset: 60897}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1864, col: 14, offset: 60906}, + run: (*parser).callonParagraphRawLine4, + expr: &oneOrMoreExpr{ + pos: position{line: 1864, col: 14, offset: 60906}, + expr: &charClassMatcher{ + pos: position{line: 1864, col: 14, offset: 60906}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteMonospaceTextElement205, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1867, col: 5, offset: 61013}, + run: (*parser).callonParagraphRawLine7, + }, + &ruleRefExpr{ + pos: position{line: 1870, col: 5, offset: 61091}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "LiteralParagraph", + pos: position{line: 1874, col: 1, offset: 61154}, + expr: &actionExpr{ + pos: position{line: 1875, col: 5, offset: 61179}, + run: (*parser).callonLiteralParagraph1, + expr: &seqExpr{ + pos: position{line: 1875, col: 5, offset: 61179}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1875, col: 5, offset: 61179}, + label: "firstLine", + expr: &ruleRefExpr{ + pos: position{line: 1875, col: 16, offset: 61190}, + name: "LiteralParagraphRawLine", + }, + }, + &labeledExpr{ + pos: position{line: 1876, col: 5, offset: 61220}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 1876, col: 16, offset: 61231}, + expr: &choiceExpr{ + pos: position{line: 1876, col: 17, offset: 61232}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1876, col: 17, offset: 61232}, + name: "SingleLineComment", + }, + &ruleRefExpr{ + pos: position{line: 1876, col: 37, offset: 61252}, + name: "ParagraphRawLine", }, }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteMonospaceTextElement207, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", + }, + }, + }, + }, + }, + }, + }, + { + name: "LiteralParagraphRawLine", + pos: position{line: 1881, col: 1, offset: 61432}, + expr: &actionExpr{ + pos: position{line: 1882, col: 5, offset: 61464}, + run: (*parser).callonLiteralParagraphRawLine1, + expr: &seqExpr{ + pos: position{line: 1882, col: 5, offset: 61464}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1882, col: 5, offset: 61464}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1882, col: 14, offset: 61473}, + run: (*parser).callonLiteralParagraphRawLine4, + expr: &seqExpr{ + pos: position{line: 1882, col: 14, offset: 61473}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1882, col: 14, offset: 61473}, + name: "Spaces", + }, + &oneOrMoreExpr{ + pos: position{line: 1882, col: 21, offset: 61480}, + expr: &charClassMatcher{ + pos: position{line: 1882, col: 21, offset: 61480}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, }, }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteMonospaceTextElement209, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1885, col: 5, offset: 61537}, + run: (*parser).callonLiteralParagraphRawLine9, + }, + &ruleRefExpr{ + pos: position{line: 1888, col: 5, offset: 61613}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "QuotedText", + pos: position{line: 1895, col: 1, offset: 61999}, + expr: &choiceExpr{ + pos: position{line: 1899, col: 5, offset: 62220}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1899, col: 5, offset: 62220}, + run: (*parser).callonQuotedText2, + expr: &seqExpr{ + pos: position{line: 1899, col: 5, offset: 62220}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1899, col: 5, offset: 62220}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 1899, col: 16, offset: 62231}, + expr: &actionExpr{ + pos: position{line: 1899, col: 17, offset: 62232}, + run: (*parser).callonQuotedText6, + expr: &ruleRefExpr{ + pos: position{line: 1899, col: 17, offset: 62232}, + name: "LongHandAttributes", + }, }, }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteMonospaceTextElement211, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", + }, + &labeledExpr{ + pos: position{line: 1902, col: 5, offset: 62320}, + label: "text", + expr: &ruleRefExpr{ + pos: position{line: 1902, col: 10, offset: 62325}, + name: "EscapedQuotedText", + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1908, col: 5, offset: 62509}, + run: (*parser).callonQuotedText10, + expr: &seqExpr{ + pos: position{line: 1908, col: 5, offset: 62509}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1908, col: 5, offset: 62509}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 1908, col: 16, offset: 62520}, + expr: &ruleRefExpr{ + pos: position{line: 1908, col: 17, offset: 62521}, + name: "LongHandAttributes", }, }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonDoubleQuoteMonospaceTextElement213, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonDoubleQuoteMonospaceTextElement219, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteMonospaceTextElement225, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteMonospaceTextElement227, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonDoubleQuoteMonospaceTextElement230, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonDoubleQuoteMonospaceTextElement232, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteMonospaceTextElement236, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMonospaceTextElement240, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonDoubleQuoteMonospaceTextElement246, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteMonospaceTextElement251, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMonospaceTextElement255, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteMonospaceTextElement261, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMonospaceTextElement265, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonDoubleQuoteMonospaceTextElement271, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonDoubleQuoteMonospaceTextElement274, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteMonospaceTextElement278, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonDoubleQuoteMonospaceTextElement282, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2808, col: 18, offset: 92087}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - &ruleRefExpr{ - pos: position{line: 2289, col: 11, offset: 75281}, - name: "QuotedTextInDoubleQuoteMonospaceText", - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonDoubleQuoteMonospaceTextElement286, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonDoubleQuoteMonospaceTextElement290, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &charClassMatcher{ - pos: position{line: 2321, col: 5, offset: 76079}, - val: "[^\\r\\n`]", - chars: []rune{'\r', '\n', '`'}, - ignoreCase: false, - inverted: true, - }, - &actionExpr{ - pos: position{line: 2322, col: 7, offset: 76181}, - run: (*parser).callonDoubleQuoteMonospaceTextElement295, - expr: &seqExpr{ - pos: position{line: 2322, col: 7, offset: 76181}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2322, col: 7, offset: 76181}, - val: "``", - ignoreCase: false, - want: "\"``\"", - }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonDoubleQuoteMonospaceTextElement298, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + }, + &labeledExpr{ + pos: position{line: 1909, col: 5, offset: 62547}, + label: "text", + expr: &choiceExpr{ + pos: position{line: 1909, col: 11, offset: 62553}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1909, col: 11, offset: 62553}, + name: "UnconstrainedQuotedText", + }, + &ruleRefExpr{ + pos: position{line: 1909, col: 37, offset: 62579}, + name: "ConstrainedQuotedText", }, }, }, @@ -58465,1158 +9813,807 @@ var g = &grammar{ }, }, { - name: "QuotedTextInDoubleQuoteMonospaceText", - pos: position{line: 2295, col: 1, offset: 75445}, + name: "ConstrainedQuotedTextMarker", + pos: position{line: 1913, col: 1, offset: 62678}, expr: &choiceExpr{ - pos: position{line: 2297, col: 5, offset: 75512}, + pos: position{line: 1913, col: 32, offset: 62709}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2297, col: 5, offset: 75512}, - run: (*parser).callonQuotedTextInDoubleQuoteMonospaceText2, - expr: &seqExpr{ - pos: position{line: 2297, col: 5, offset: 75512}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 2297, col: 5, offset: 75512}, - expr: &litMatcher{ - pos: position{line: 2297, col: 7, offset: 75514}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &labeledExpr{ - pos: position{line: 2298, col: 5, offset: 75523}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2299, col: 9, offset: 75541}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2299, col: 9, offset: 75541}, - name: "EscapedBoldText", - }, - &ruleRefExpr{ - pos: position{line: 2300, col: 11, offset: 75568}, - name: "EscapedItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2301, col: 11, offset: 75596}, - name: "EscapedMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2302, col: 11, offset: 75624}, - name: "EscapedSubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2303, col: 11, offset: 75655}, - name: "EscapedSuperscriptText", - }, - }, - }, - }, + &seqExpr{ + pos: position{line: 1913, col: 32, offset: 62709}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1913, col: 32, offset: 62709}, + val: "*", + ignoreCase: false, + want: "\"*\"", }, - }, - }, - &actionExpr{ - pos: position{line: 2309, col: 5, offset: 75755}, - run: (*parser).callonQuotedTextInDoubleQuoteMonospaceText13, - expr: &seqExpr{ - pos: position{line: 2309, col: 5, offset: 75755}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2309, col: 5, offset: 75755}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 2309, col: 16, offset: 75766}, - expr: &ruleRefExpr{ - pos: position{line: 2309, col: 17, offset: 75767}, - name: "LongHandAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 2310, col: 5, offset: 75793}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 2311, col: 9, offset: 75808}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2311, col: 9, offset: 75808}, - name: "SingleQuoteMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2312, col: 11, offset: 75843}, - name: "BoldText", - }, - &ruleRefExpr{ - pos: position{line: 2313, col: 11, offset: 75862}, - name: "ItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2314, col: 11, offset: 75883}, - name: "MarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2315, col: 11, offset: 75904}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2316, col: 11, offset: 75928}, - name: "SuperscriptText", - }, - }, - }, + ¬Expr{ + pos: position{line: 1913, col: 36, offset: 62713}, + expr: &litMatcher{ + pos: position{line: 1913, col: 37, offset: 62714}, + val: "*", + ignoreCase: false, + want: "\"*\"", }, }, }, }, - }, - }, - }, - { - name: "SingleQuoteMonospaceText", - pos: position{line: 2335, col: 1, offset: 76667}, - expr: &actionExpr{ - pos: position{line: 2336, col: 5, offset: 76700}, - run: (*parser).callonSingleQuoteMonospaceText1, - expr: &seqExpr{ - pos: position{line: 2336, col: 5, offset: 76700}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2331, col: 43, offset: 76615}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - &labeledExpr{ - pos: position{line: 2337, col: 5, offset: 76744}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2337, col: 15, offset: 76754}, - name: "SingleQuoteMonospaceTextElements", + &seqExpr{ + pos: position{line: 1913, col: 43, offset: 62720}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1913, col: 43, offset: 62720}, + val: "_", + ignoreCase: false, + want: "\"_\"", }, - }, - &litMatcher{ - pos: position{line: 2333, col: 41, offset: 76661}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - }, - }, - }, - { - name: "SingleQuoteMonospaceTextElements", - pos: position{line: 2342, col: 1, offset: 76930}, - expr: &actionExpr{ - pos: position{line: 2343, col: 5, offset: 76971}, - run: (*parser).callonSingleQuoteMonospaceTextElements1, - expr: &seqExpr{ - pos: position{line: 2343, col: 5, offset: 76971}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2343, col: 5, offset: 76971}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + ¬Expr{ + pos: position{line: 1913, col: 47, offset: 62724}, + expr: &litMatcher{ + pos: position{line: 1913, col: 48, offset: 62725}, + val: "_", + ignoreCase: false, + want: "\"_\"", }, }, }, - ¬Expr{ - pos: position{line: 2343, col: 10, offset: 76976}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMonospaceTextElements7, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + }, + &seqExpr{ + pos: position{line: 1913, col: 54, offset: 62731}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1913, col: 54, offset: 62731}, + val: "#", + ignoreCase: false, + want: "\"#\"", + }, + ¬Expr{ + pos: position{line: 1913, col: 58, offset: 62735}, + expr: &litMatcher{ + pos: position{line: 1913, col: 59, offset: 62736}, + val: "#", ignoreCase: false, - inverted: false, + want: "\"#\"", }, }, }, - &labeledExpr{ - pos: position{line: 2344, col: 5, offset: 77015}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 2344, col: 14, offset: 77024}, - expr: &ruleRefExpr{ - pos: position{line: 2344, col: 15, offset: 77025}, - name: "SingleQuoteMonospaceTextElement", + }, + &seqExpr{ + pos: position{line: 1913, col: 65, offset: 62742}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1913, col: 65, offset: 62742}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + ¬Expr{ + pos: position{line: 1913, col: 69, offset: 62746}, + expr: &litMatcher{ + pos: position{line: 1913, col: 70, offset: 62747}, + val: "`", + ignoreCase: false, + want: "\"`\"", }, }, }, - &andCodeExpr{ - pos: position{line: 2345, col: 5, offset: 77063}, - run: (*parser).callonSingleQuoteMonospaceTextElements12, - }, }, }, }, }, { - name: "SingleQuoteMonospaceTextElement", - pos: position{line: 2351, col: 1, offset: 77204}, + name: "UnconstrainedQuotedTextPrefix", + pos: position{line: 1915, col: 1, offset: 62752}, expr: &choiceExpr{ - pos: position{line: 2352, col: 5, offset: 77245}, + pos: position{line: 1915, col: 34, offset: 62785}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - run: (*parser).callonSingleQuoteMonospaceTextElement2, - expr: &seqExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - expr: &charClassMatcher{ - pos: position{line: 3041, col: 5, offset: 98782}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3041, col: 15, offset: 98792}, - expr: &choiceExpr{ - pos: position{line: 3041, col: 17, offset: 98794}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3041, col: 17, offset: 98794}, - val: "[\\r\\n ,]]", - chars: []rune{'\r', '\n', ' ', ',', ']'}, - ignoreCase: false, - inverted: false, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 1915, col: 34, offset: 62785}, + val: "**", + ignoreCase: false, + want: "\"**\"", + }, + &litMatcher{ + pos: position{line: 1915, col: 41, offset: 62792}, + val: "__", + ignoreCase: false, + want: "\"__\"", + }, + &litMatcher{ + pos: position{line: 1915, col: 48, offset: 62799}, + val: "``", + ignoreCase: false, + want: "\"``\"", + }, + &ruleRefExpr{ + pos: position{line: 1915, col: 55, offset: 62806}, + name: "DoubleQuoteMarkedTextDelimiter", + }, + &litMatcher{ + pos: position{line: 1915, col: 88, offset: 62839}, + val: "^", + ignoreCase: false, + want: "\"^\"", + }, + &litMatcher{ + pos: position{line: 1915, col: 94, offset: 62845}, + val: "~", + ignoreCase: false, + want: "\"~\"", + }, + }, + }, + }, + { + name: "ConstrainedQuotedText", + pos: position{line: 1917, col: 1, offset: 62850}, + expr: &choiceExpr{ + pos: position{line: 1918, col: 5, offset: 62880}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1918, col: 5, offset: 62880}, + name: "SingleQuoteBoldText", + }, + &ruleRefExpr{ + pos: position{line: 1919, col: 7, offset: 62907}, + name: "SingleQuoteItalicText", + }, + &ruleRefExpr{ + pos: position{line: 1920, col: 7, offset: 62935}, + name: "SingleQuoteMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 1921, col: 7, offset: 62963}, + name: "SingleQuoteMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 1922, col: 7, offset: 62995}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 1923, col: 7, offset: 63016}, + name: "SuperscriptText", + }, + }, + }, + }, + { + name: "UnconstrainedQuotedText", + pos: position{line: 1925, col: 1, offset: 63034}, + expr: &choiceExpr{ + pos: position{line: 1926, col: 5, offset: 63066}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1926, col: 5, offset: 63066}, + name: "DoubleQuoteBoldText", + }, + &ruleRefExpr{ + pos: position{line: 1927, col: 7, offset: 63092}, + name: "DoubleQuoteItalicText", + }, + &ruleRefExpr{ + pos: position{line: 1928, col: 7, offset: 63120}, + name: "DoubleQuoteMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 1929, col: 7, offset: 63148}, + name: "DoubleQuoteMonospaceText", + }, + }, + }, + }, + { + name: "EscapedQuotedText", + pos: position{line: 1931, col: 1, offset: 63174}, + expr: &actionExpr{ + pos: position{line: 1932, col: 5, offset: 63255}, + run: (*parser).callonEscapedQuotedText1, + expr: &seqExpr{ + pos: position{line: 1932, col: 5, offset: 63255}, + exprs: []interface{}{ + &andExpr{ + pos: position{line: 1932, col: 5, offset: 63255}, + expr: &litMatcher{ + pos: position{line: 1932, col: 7, offset: 63257}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", }, }, - }, - &actionExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - run: (*parser).callonSingleQuoteMonospaceTextElement11, - expr: &seqExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - expr: &charClassMatcher{ - pos: position{line: 3043, col: 9, offset: 98876}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 1933, col: 5, offset: 63266}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 1934, col: 9, offset: 63284}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1934, col: 9, offset: 63284}, + name: "EscapedBoldText", }, - }, - &oneOrMoreExpr{ - pos: position{line: 3043, col: 19, offset: 98886}, - expr: &seqExpr{ - pos: position{line: 3043, col: 20, offset: 98887}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3043, col: 20, offset: 98887}, - val: "[=*_`]", - chars: []rune{'=', '*', '_', '`'}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 3043, col: 27, offset: 98894}, - expr: &charClassMatcher{ - pos: position{line: 3043, col: 27, offset: 98894}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 1935, col: 11, offset: 63311}, + name: "EscapedItalicText", + }, + &ruleRefExpr{ + pos: position{line: 1936, col: 11, offset: 63339}, + name: "EscapedMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 1937, col: 11, offset: 63367}, + name: "EscapedMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 1938, col: 11, offset: 63398}, + name: "EscapedSubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 1939, col: 11, offset: 63429}, + name: "EscapedSuperscriptText", }, }, }, }, }, + }, + }, + }, + { + name: "SubscriptOrSuperscriptPrefix", + pos: position{line: 1944, col: 1, offset: 63495}, + expr: &choiceExpr{ + pos: position{line: 1944, col: 33, offset: 63527}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 1944, col: 33, offset: 63527}, + val: "^", + ignoreCase: false, + want: "\"^\"", + }, &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonSingleQuoteMonospaceTextElement20, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, + pos: position{line: 1944, col: 39, offset: 63533}, + run: (*parser).callonSubscriptOrSuperscriptPrefix3, + expr: &litMatcher{ + pos: position{line: 1944, col: 39, offset: 63533}, + val: "~", + ignoreCase: false, + want: "\"~\"", + }, + }, + }, + }, + }, + { + name: "OneOrMoreBackslashes", + pos: position{line: 1948, col: 1, offset: 63675}, + expr: &actionExpr{ + pos: position{line: 1948, col: 25, offset: 63699}, + run: (*parser).callonOneOrMoreBackslashes1, + expr: &oneOrMoreExpr{ + pos: position{line: 1948, col: 25, offset: 63699}, + expr: &litMatcher{ + pos: position{line: 1948, col: 25, offset: 63699}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + }, + }, + { + name: "TwoOrMoreBackslashes", + pos: position{line: 1952, col: 1, offset: 63748}, + expr: &actionExpr{ + pos: position{line: 1952, col: 25, offset: 63772}, + run: (*parser).callonTwoOrMoreBackslashes1, + expr: &seqExpr{ + pos: position{line: 1952, col: 25, offset: 63772}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1952, col: 25, offset: 63772}, + val: "\\\\", + ignoreCase: false, + want: "\"\\\\\\\\\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1952, col: 30, offset: 63777}, + expr: &litMatcher{ + pos: position{line: 1952, col: 30, offset: 63777}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + }, + }, + }, + }, + { + name: "BoldText", + pos: position{line: 1959, col: 1, offset: 63956}, + expr: &choiceExpr{ + pos: position{line: 1959, col: 13, offset: 63968}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1959, col: 13, offset: 63968}, + name: "DoubleQuoteBoldText", + }, + &ruleRefExpr{ + pos: position{line: 1959, col: 35, offset: 63990}, + name: "SingleQuoteBoldText", + }, + }, + }, + }, + { + name: "BoldTextDelimiter", + pos: position{line: 1961, col: 1, offset: 64057}, + expr: &litMatcher{ + pos: position{line: 1961, col: 22, offset: 64078}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + { + name: "BoldTextWord", + pos: position{line: 1963, col: 1, offset: 64083}, + expr: &actionExpr{ + pos: position{line: 1964, col: 5, offset: 64104}, + run: (*parser).callonBoldTextWord1, + expr: &seqExpr{ + pos: position{line: 1964, col: 5, offset: 64104}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1964, col: 5, offset: 64104}, expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + pos: position{line: 1964, col: 5, offset: 64104}, + val: "[\\pL0-9,?!;]", + chars: []rune{',', '?', '!', ';'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, inverted: false, }, }, - }, - &seqExpr{ - pos: position{line: 2354, col: 7, offset: 77270}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMonospaceTextElement24, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + &andExpr{ + pos: position{line: 1964, col: 19, offset: 64118}, + expr: &choiceExpr{ + pos: position{line: 1964, col: 21, offset: 64120}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1964, col: 21, offset: 64120}, + name: "Space", }, - }, - }, - ¬Expr{ - pos: position{line: 2354, col: 15, offset: 77278}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMonospaceTextElement30, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + &ruleRefExpr{ + pos: position{line: 1964, col: 29, offset: 64128}, + name: "BoldTextDelimiter", }, }, }, }, }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteMonospaceTextElement35, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteMonospaceTextElement37, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonSingleQuoteMonospaceTextElement40, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMonospaceTextElement44, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteMonospaceTextElement51, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteMonospaceTextElement56, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteMonospaceTextElement58, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonSingleQuoteMonospaceTextElement62, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMonospaceTextElement66, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteMonospaceTextElement73, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteMonospaceTextElement78, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteMonospaceTextElement80, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteMonospaceTextElement84, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMonospaceTextElement88, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + }, + }, + }, + { + name: "DoubleQuoteBoldTextDelimiter", + pos: position{line: 1971, col: 1, offset: 64314}, + expr: &litMatcher{ + pos: position{line: 1971, col: 33, offset: 64346}, + val: "**", + ignoreCase: false, + want: "\"**\"", + }, + }, + { + name: "DoubleQuoteBoldText", + pos: position{line: 1973, col: 1, offset: 64352}, + expr: &actionExpr{ + pos: position{line: 1974, col: 5, offset: 64380}, + run: (*parser).callonDoubleQuoteBoldText1, + expr: &seqExpr{ + pos: position{line: 1974, col: 5, offset: 64380}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1974, col: 5, offset: 64380}, + name: "DoubleQuoteBoldTextDelimiter", + }, + &labeledExpr{ + pos: position{line: 1975, col: 5, offset: 64414}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 1975, col: 15, offset: 64424}, + name: "DoubleQuoteBoldTextElements", + }, + }, + &ruleRefExpr{ + pos: position{line: 1976, col: 5, offset: 64458}, + name: "DoubleQuoteBoldTextDelimiter", + }, + }, + }, + }, + }, + { + name: "DoubleQuoteBoldTextElements", + pos: position{line: 1980, col: 1, offset: 64581}, + expr: &oneOrMoreExpr{ + pos: position{line: 1980, col: 32, offset: 64612}, + expr: &ruleRefExpr{ + pos: position{line: 1980, col: 32, offset: 64612}, + name: "DoubleQuoteBoldTextElement", + }, + }, + }, + { + name: "DoubleQuoteBoldTextElement", + pos: position{line: 1982, col: 1, offset: 64643}, + expr: &actionExpr{ + pos: position{line: 1983, col: 5, offset: 64678}, + run: (*parser).callonDoubleQuoteBoldTextElement1, + expr: &seqExpr{ + pos: position{line: 1983, col: 5, offset: 64678}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1983, col: 5, offset: 64678}, + expr: &ruleRefExpr{ + pos: position{line: 1983, col: 6, offset: 64679}, + name: "DoubleQuoteBoldTextDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 1984, col: 5, offset: 64712}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 1985, col: 9, offset: 64730}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1985, col: 9, offset: 64730}, + name: "BoldTextWord", + }, + &ruleRefExpr{ + pos: position{line: 1986, col: 11, offset: 64753}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 1987, col: 11, offset: 64803}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 1987, col: 11, offset: 64803}, + name: "Newline", }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteMonospaceTextElement94, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMonospaceTextElement98, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, + ¬Expr{ + pos: position{line: 1987, col: 19, offset: 64811}, + expr: &ruleRefExpr{ + pos: position{line: 1987, col: 20, offset: 64812}, + name: "Newline", }, }, }, }, + &ruleRefExpr{ + pos: position{line: 1988, col: 11, offset: 64864}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 1989, col: 11, offset: 64893}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 1990, col: 11, offset: 64915}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 1991, col: 11, offset: 64932}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 1992, col: 11, offset: 65009}, + name: "QuotedTextInDoubleQuoteBoldText", + }, + &ruleRefExpr{ + pos: position{line: 1993, col: 11, offset: 65051}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 1994, col: 11, offset: 65080}, + name: "DoubleQuoteBoldTextFallbackCharacter", + }, }, }, }, }, - &ruleRefExpr{ - pos: position{line: 2356, col: 7, offset: 77352}, - name: "InlineMacro", - }, - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonSingleQuoteMonospaceTextElement105, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", + }, + }, + }, + { + name: "QuotedTextInDoubleQuoteBoldText", + pos: position{line: 1998, col: 1, offset: 65163}, + expr: &actionExpr{ + pos: position{line: 1999, col: 5, offset: 65203}, + run: (*parser).callonQuotedTextInDoubleQuoteBoldText1, + expr: &seqExpr{ + pos: position{line: 1999, col: 5, offset: 65203}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1999, col: 5, offset: 65203}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 1999, col: 16, offset: 65214}, + expr: &ruleRefExpr{ + pos: position{line: 1999, col: 17, offset: 65215}, + name: "LongHandAttributes", }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteMonospaceTextElement109, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteMonospaceTextElement111, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteMonospaceTextElement113, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteMonospaceTextElement115, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteMonospaceTextElement117, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteMonospaceTextElement119, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteMonospaceTextElement121, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteMonospaceTextElement123, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteMonospaceTextElement125, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMonospaceTextElement127, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMonospaceTextElement129, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMonospaceTextElement132, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMonospaceTextElement136, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMonospaceTextElement143, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMonospaceTextElement145, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMonospaceTextElement150, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteMonospaceTextElement157, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteMonospaceTextElement159, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteMonospaceTextElement161, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, + }, + }, + &labeledExpr{ + pos: position{line: 2000, col: 5, offset: 65241}, + label: "text", + expr: &choiceExpr{ + pos: position{line: 2001, col: 9, offset: 65256}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2001, col: 9, offset: 65256}, + name: "SingleQuoteBoldText", + }, + &ruleRefExpr{ + pos: position{line: 2002, col: 11, offset: 65286}, + name: "ItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2003, col: 11, offset: 65307}, + name: "MarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2004, col: 11, offset: 65328}, + name: "MonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2005, col: 11, offset: 65352}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2006, col: 11, offset: 65376}, + name: "SuperscriptText", }, }, }, }, }, + }, + }, + }, + { + name: "DoubleQuoteBoldTextFallbackCharacter", + pos: position{line: 2010, col: 1, offset: 65477}, + expr: &choiceExpr{ + pos: position{line: 2011, col: 5, offset: 65521}, + alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 2011, col: 5, offset: 65521}, + val: "[^\\r\\n*]", + chars: []rune{'\r', '\n', '*'}, + ignoreCase: false, + inverted: true, + }, &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteMonospaceTextElement163, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", + pos: position{line: 2012, col: 7, offset: 65618}, + run: (*parser).callonDoubleQuoteBoldTextFallbackCharacter3, + expr: &seqExpr{ + pos: position{line: 2012, col: 7, offset: 65618}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2012, col: 7, offset: 65618}, + name: "DoubleQuoteBoldTextDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 2012, col: 36, offset: 65647}, + name: "Alphanums", + }, + }, }, }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteMonospaceTextElement165, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", + }, + }, + }, + { + name: "SingleQuoteBoldTextStartDelimiter", + pos: position{line: 2019, col: 1, offset: 65922}, + expr: &litMatcher{ + pos: position{line: 2019, col: 38, offset: 65959}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + { + name: "SingleQuoteBoldTextEndDelimiter", + pos: position{line: 2021, col: 1, offset: 65964}, + expr: &litMatcher{ + pos: position{line: 2021, col: 36, offset: 65999}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + { + name: "SingleQuoteBoldText", + pos: position{line: 2023, col: 1, offset: 66005}, + expr: &actionExpr{ + pos: position{line: 2024, col: 4, offset: 66032}, + run: (*parser).callonSingleQuoteBoldText1, + expr: &seqExpr{ + pos: position{line: 2024, col: 4, offset: 66032}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2024, col: 4, offset: 66032}, + name: "SingleQuoteBoldTextStartDelimiter", }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteMonospaceTextElement167, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", + &labeledExpr{ + pos: position{line: 2025, col: 5, offset: 66070}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2025, col: 15, offset: 66080}, + name: "SingleQuoteBoldTextElements", + }, }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteMonospaceTextElement169, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", + &ruleRefExpr{ + pos: position{line: 2026, col: 5, offset: 66114}, + name: "SingleQuoteBoldTextEndDelimiter", }, }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteMonospaceTextElement171, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", + }, + }, + }, + { + name: "SingleQuoteBoldTextElements", + pos: position{line: 2030, col: 1, offset: 66240}, + expr: &actionExpr{ + pos: position{line: 2031, col: 5, offset: 66277}, + run: (*parser).callonSingleQuoteBoldTextElements1, + expr: &seqExpr{ + pos: position{line: 2031, col: 5, offset: 66277}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2031, col: 5, offset: 66277}, + expr: &ruleRefExpr{ + pos: position{line: 2031, col: 6, offset: 66278}, + name: "EOF", + }, }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteMonospaceTextElement173, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", + ¬Expr{ + pos: position{line: 2031, col: 10, offset: 66282}, + expr: &ruleRefExpr{ + pos: position{line: 2031, col: 11, offset: 66283}, + name: "Space", + }, }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteMonospaceTextElement175, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", + &labeledExpr{ + pos: position{line: 2032, col: 5, offset: 66321}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 2032, col: 14, offset: 66330}, + expr: &ruleRefExpr{ + pos: position{line: 2032, col: 15, offset: 66331}, + name: "SingleQuoteBoldTextElement", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 2033, col: 5, offset: 66365}, + run: (*parser).callonSingleQuoteBoldTextElements10, }, }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteMonospaceTextElement177, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", + }, + }, + }, + { + name: "SingleQuoteBoldTextElement", + pos: position{line: 2039, col: 1, offset: 66506}, + expr: &choiceExpr{ + pos: position{line: 2040, col: 5, offset: 66541}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2040, col: 5, offset: 66541}, + name: "BoldTextWord", + }, + &ruleRefExpr{ + pos: position{line: 2041, col: 7, offset: 66560}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 2042, col: 7, offset: 66573}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2042, col: 7, offset: 66573}, + name: "Newline", + }, + ¬Expr{ + pos: position{line: 2042, col: 15, offset: 66581}, + expr: &ruleRefExpr{ + pos: position{line: 2042, col: 16, offset: 66582}, + name: "Newline", + }, + }, }, }, + &ruleRefExpr{ + pos: position{line: 2043, col: 7, offset: 66630}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 2044, col: 7, offset: 66655}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2045, col: 7, offset: 66673}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2046, col: 7, offset: 66686}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2047, col: 7, offset: 66759}, + name: "QuotedTextInSingleQuoteBoldText", + }, + &ruleRefExpr{ + pos: position{line: 2048, col: 7, offset: 66797}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2049, col: 7, offset: 66822}, + name: "SingleQuoteBoldTextFallbackCharacter", + }, + }, + }, + }, + { + name: "QuotedTextInSingleQuoteBoldText", + pos: position{line: 2051, col: 1, offset: 66860}, + expr: &choiceExpr{ + pos: position{line: 2053, col: 5, offset: 66923}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMonospaceTextElement179, + pos: position{line: 2053, col: 5, offset: 66923}, + run: (*parser).callonQuotedTextInSingleQuoteBoldText2, expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, + pos: position{line: 2053, col: 5, offset: 66923}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMonospaceTextElement181, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", + &andExpr{ + pos: position{line: 2053, col: 5, offset: 66923}, + expr: &litMatcher{ + pos: position{line: 2053, col: 7, offset: 66925}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMonospaceTextElement184, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2054, col: 5, offset: 66934}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2055, col: 9, offset: 66952}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2055, col: 9, offset: 66952}, + name: "EscapedItalicText", }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMonospaceTextElement188, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2056, col: 11, offset: 66980}, + name: "EscapedMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2057, col: 11, offset: 67008}, + name: "EscapedMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2058, col: 11, offset: 67039}, + name: "EscapedSubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2059, col: 11, offset: 67070}, + name: "EscapedSuperscriptText", }, }, }, @@ -59625,66 +10622,51 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMonospaceTextElement195, + pos: position{line: 2065, col: 5, offset: 67170}, + run: (*parser).callonQuotedTextInSingleQuoteBoldText13, expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, + pos: position{line: 2065, col: 5, offset: 67170}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMonospaceTextElement197, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", + &labeledExpr{ + pos: position{line: 2065, col: 5, offset: 67170}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 2065, col: 16, offset: 67181}, + expr: &ruleRefExpr{ + pos: position{line: 2065, col: 17, offset: 67182}, + name: "LongHandAttributes", + }, + }, }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, + &labeledExpr{ + pos: position{line: 2066, col: 5, offset: 67208}, + label: "text", expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, + pos: position{line: 2067, col: 9, offset: 67223}, alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &ruleRefExpr{ + pos: position{line: 2067, col: 9, offset: 67223}, + name: "DoubleQuoteBoldText", }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMonospaceTextElement202, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2068, col: 11, offset: 67253}, + name: "ItalicText", }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + &ruleRefExpr{ + pos: position{line: 2069, col: 11, offset: 67274}, + name: "MonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2070, col: 11, offset: 67298}, + name: "MarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2071, col: 11, offset: 67319}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2072, col: 11, offset: 67343}, + name: "SuperscriptText", }, }, }, @@ -59692,498 +10674,157 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteMonospaceTextElement209, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, + }, + }, + }, + { + name: "SingleQuoteBoldTextFallbackCharacter", + pos: position{line: 2076, col: 1, offset: 67444}, + expr: &choiceExpr{ + pos: position{line: 2077, col: 5, offset: 67488}, + alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 2077, col: 5, offset: 67488}, + val: "[^\\r\\n *]", + chars: []rune{'\r', '\n', ' ', '*'}, + ignoreCase: false, + inverted: true, }, &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteMonospaceTextElement211, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteMonospaceTextElement213, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteMonospaceTextElement215, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", + pos: position{line: 2078, col: 7, offset: 67593}, + run: (*parser).callonSingleQuoteBoldTextFallbackCharacter3, + expr: &seqExpr{ + pos: position{line: 2078, col: 7, offset: 67593}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2078, col: 7, offset: 67593}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + &ruleRefExpr{ + pos: position{line: 2078, col: 11, offset: 67597}, + name: "Alphanums", + }, + }, }, }, + }, + }, + }, + { + name: "EscapedBoldText", + pos: position{line: 2082, col: 1, offset: 67768}, + expr: &choiceExpr{ + pos: position{line: 2084, col: 5, offset: 67829}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonSingleQuoteMonospaceTextElement217, + pos: position{line: 2084, col: 5, offset: 67829}, + run: (*parser).callonEscapedBoldText2, expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, + pos: position{line: 2084, col: 5, offset: 67829}, exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2084, col: 5, offset: 67829}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2084, col: 18, offset: 67842}, + name: "TwoOrMoreBackslashes", + }, }, &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", + pos: position{line: 2084, col: 40, offset: 67864}, + val: "**", ignoreCase: false, - want: "\"\\\\'\"", + want: "\"**\"", }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2084, col: 45, offset: 67869}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2084, col: 55, offset: 67879}, + name: "DoubleQuoteBoldTextElements", }, }, + &litMatcher{ + pos: position{line: 2084, col: 84, offset: 67908}, + val: "**", + ignoreCase: false, + want: "\"**\"", + }, }, }, }, &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonSingleQuoteMonospaceTextElement223, + pos: position{line: 2088, col: 7, offset: 68072}, + run: (*parser).callonEscapedBoldText10, expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, + pos: position{line: 2088, col: 7, offset: 68072}, exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2088, col: 7, offset: 68072}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2088, col: 20, offset: 68085}, + name: "OneOrMoreBackslashes", + }, }, &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", + pos: position{line: 2088, col: 42, offset: 68107}, + val: "**", ignoreCase: false, - want: "\"'\"", + want: "\"**\"", }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2088, col: 47, offset: 68112}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2088, col: 57, offset: 68122}, + name: "SingleQuoteBoldTextElements", }, }, + &litMatcher{ + pos: position{line: 2088, col: 86, offset: 68151}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, }, }, }, &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteMonospaceTextElement229, + pos: position{line: 2093, col: 7, offset: 68353}, + run: (*parser).callonEscapedBoldText18, expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, + pos: position{line: 2093, col: 7, offset: 68353}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteMonospaceTextElement231, - }, &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonSingleQuoteMonospaceTextElement234, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonSingleQuoteMonospaceTextElement236, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteMonospaceTextElement240, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMonospaceTextElement244, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonSingleQuoteMonospaceTextElement250, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteMonospaceTextElement255, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMonospaceTextElement259, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteMonospaceTextElement265, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMonospaceTextElement269, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonSingleQuoteMonospaceTextElement275, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonSingleQuoteMonospaceTextElement278, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteMonospaceTextElement282, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonSingleQuoteMonospaceTextElement286, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, + pos: position{line: 2093, col: 7, offset: 68353}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2093, col: 20, offset: 68366}, + name: "OneOrMoreBackslashes", }, }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 2359, col: 7, offset: 77457}, - name: "QuotedTextInSingleQuoteMonospaceText", - }, - &litMatcher{ - pos: position{line: 2808, col: 18, offset: 92087}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonSingleQuoteMonospaceTextElement290, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", + pos: position{line: 2093, col: 42, offset: 68388}, + val: "*", ignoreCase: false, - want: "\"�\"", + want: "\"*\"", }, &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonSingleQuoteMonospaceTextElement294, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 2093, col: 46, offset: 68392}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2093, col: 56, offset: 68402}, + name: "SingleQuoteBoldTextElements", }, }, &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2390, col: 5, offset: 78222}, - run: (*parser).callonSingleQuoteMonospaceTextElement298, - expr: &choiceExpr{ - pos: position{line: 2390, col: 6, offset: 78223}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 2390, col: 6, offset: 78223}, - val: "[^\\r\\n` ]", - chars: []rune{'\r', '\n', '`', ' '}, + pos: position{line: 2093, col: 85, offset: 68431}, + val: "*", ignoreCase: false, - inverted: true, - }, - &seqExpr{ - pos: position{line: 2391, col: 7, offset: 78335}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2257, col: 27, offset: 74176}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonSingleQuoteMonospaceTextElement303, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + want: "\"*\"", }, }, }, @@ -60192,106 +10833,64 @@ var g = &grammar{ }, }, { - name: "QuotedTextInSingleQuoteMonospaceText", - pos: position{line: 2364, col: 1, offset: 77588}, + name: "ItalicText", + pos: position{line: 2101, col: 1, offset: 68685}, expr: &choiceExpr{ - pos: position{line: 2366, col: 5, offset: 77655}, + pos: position{line: 2101, col: 15, offset: 68699}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2366, col: 5, offset: 77655}, - run: (*parser).callonQuotedTextInSingleQuoteMonospaceText2, - expr: &seqExpr{ - pos: position{line: 2366, col: 5, offset: 77655}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 2366, col: 5, offset: 77655}, - expr: &litMatcher{ - pos: position{line: 2366, col: 7, offset: 77657}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &labeledExpr{ - pos: position{line: 2367, col: 5, offset: 77666}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2368, col: 9, offset: 77684}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2368, col: 9, offset: 77684}, - name: "EscapedBoldText", - }, - &ruleRefExpr{ - pos: position{line: 2369, col: 11, offset: 77711}, - name: "EscapedItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2370, col: 11, offset: 77739}, - name: "EscapedMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2371, col: 11, offset: 77767}, - name: "EscapedSubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2372, col: 11, offset: 77798}, - name: "EscapedSuperscriptText", - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2101, col: 15, offset: 68699}, + name: "DoubleQuoteItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2101, col: 39, offset: 68723}, + name: "SingleQuoteItalicText", + }, + }, + }, + }, + { + name: "ItalicTextDelimiter", + pos: position{line: 2103, col: 1, offset: 68746}, + expr: &litMatcher{ + pos: position{line: 2103, col: 24, offset: 68769}, + val: "_", + ignoreCase: false, + want: "\"_\"", + }, + }, + { + name: "ItalicTextWord", + pos: position{line: 2105, col: 1, offset: 68774}, + expr: &actionExpr{ + pos: position{line: 2106, col: 5, offset: 68797}, + run: (*parser).callonItalicTextWord1, + expr: &seqExpr{ + pos: position{line: 2106, col: 5, offset: 68797}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 2106, col: 5, offset: 68797}, + expr: &charClassMatcher{ + pos: position{line: 2106, col: 5, offset: 68797}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, - }, - &actionExpr{ - pos: position{line: 2378, col: 5, offset: 77898}, - run: (*parser).callonQuotedTextInSingleQuoteMonospaceText13, - expr: &seqExpr{ - pos: position{line: 2378, col: 5, offset: 77898}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2378, col: 5, offset: 77898}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 2378, col: 16, offset: 77909}, - expr: &ruleRefExpr{ - pos: position{line: 2378, col: 17, offset: 77910}, - name: "LongHandAttributes", - }, + &andExpr{ + pos: position{line: 2106, col: 15, offset: 68807}, + expr: &choiceExpr{ + pos: position{line: 2106, col: 17, offset: 68809}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2106, col: 17, offset: 68809}, + name: "Space", }, - }, - &labeledExpr{ - pos: position{line: 2379, col: 5, offset: 77936}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 2380, col: 9, offset: 77951}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2380, col: 9, offset: 77951}, - name: "DoubleQuoteMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2381, col: 11, offset: 77986}, - name: "BoldText", - }, - &ruleRefExpr{ - pos: position{line: 2382, col: 11, offset: 78005}, - name: "ItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2383, col: 11, offset: 78026}, - name: "MarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2384, col: 11, offset: 78047}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2385, col: 11, offset: 78071}, - name: "SuperscriptText", - }, - }, + &ruleRefExpr{ + pos: position{line: 2106, col: 25, offset: 68817}, + name: "ItalicTextDelimiter", }, }, }, @@ -60301,157 +10900,239 @@ var g = &grammar{ }, }, { - name: "EscapedMonospaceText", - pos: position{line: 2395, col: 1, offset: 78536}, - expr: &choiceExpr{ - pos: position{line: 2397, col: 5, offset: 78607}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2397, col: 5, offset: 78607}, - run: (*parser).callonEscapedMonospaceText2, - expr: &seqExpr{ - pos: position{line: 2397, col: 5, offset: 78607}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2397, col: 5, offset: 78607}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - run: (*parser).callonEscapedMonospaceText5, - expr: &seqExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1954, col: 25, offset: 64010}, - val: "\\\\", - ignoreCase: false, - want: "\"\\\\\\\\\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1954, col: 30, offset: 64015}, - expr: &litMatcher{ - pos: position{line: 1954, col: 30, offset: 64015}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, + name: "DoubleQuoteItalicTextDelimiter", + pos: position{line: 2113, col: 1, offset: 69011}, + expr: &litMatcher{ + pos: position{line: 2113, col: 35, offset: 69045}, + val: "__", + ignoreCase: false, + want: "\"__\"", + }, + }, + { + name: "DoubleQuoteItalicText", + pos: position{line: 2115, col: 1, offset: 69051}, + expr: &actionExpr{ + pos: position{line: 2116, col: 5, offset: 69081}, + run: (*parser).callonDoubleQuoteItalicText1, + expr: &seqExpr{ + pos: position{line: 2116, col: 5, offset: 69081}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2116, col: 5, offset: 69081}, + name: "DoubleQuoteItalicTextDelimiter", + }, + &labeledExpr{ + pos: position{line: 2117, col: 5, offset: 69117}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2117, col: 15, offset: 69127}, + name: "DoubleQuoteItalicTextElements", + }, + }, + &ruleRefExpr{ + pos: position{line: 2118, col: 5, offset: 69163}, + name: "DoubleQuoteItalicTextDelimiter", + }, + }, + }, + }, + }, + { + name: "DoubleQuoteItalicTextElements", + pos: position{line: 2122, col: 1, offset: 69335}, + expr: &oneOrMoreExpr{ + pos: position{line: 2122, col: 34, offset: 69368}, + expr: &ruleRefExpr{ + pos: position{line: 2122, col: 34, offset: 69368}, + name: "DoubleQuoteItalicTextElement", + }, + }, + }, + { + name: "DoubleQuoteItalicTextElement", + pos: position{line: 2124, col: 1, offset: 69400}, + expr: &actionExpr{ + pos: position{line: 2125, col: 5, offset: 69437}, + run: (*parser).callonDoubleQuoteItalicTextElement1, + expr: &seqExpr{ + pos: position{line: 2125, col: 5, offset: 69437}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2125, col: 5, offset: 69437}, + expr: &ruleRefExpr{ + pos: position{line: 2125, col: 6, offset: 69438}, + name: "DoubleQuoteItalicTextDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 2126, col: 5, offset: 69473}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2127, col: 9, offset: 69491}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2127, col: 9, offset: 69491}, + name: "ItalicTextWord", + }, + &ruleRefExpr{ + pos: position{line: 2128, col: 11, offset: 69516}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 2129, col: 11, offset: 69566}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2129, col: 11, offset: 69566}, + name: "Newline", + }, + ¬Expr{ + pos: position{line: 2129, col: 19, offset: 69574}, + expr: &ruleRefExpr{ + pos: position{line: 2129, col: 20, offset: 69575}, + name: "Newline", }, }, }, }, - }, - &litMatcher{ - pos: position{line: 2397, col: 40, offset: 78642}, - val: "``", - ignoreCase: false, - want: "\"``\"", - }, - &labeledExpr{ - pos: position{line: 2397, col: 45, offset: 78647}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2397, col: 55, offset: 78657}, - name: "DoubleQuoteMonospaceTextElements", + &ruleRefExpr{ + pos: position{line: 2130, col: 11, offset: 69627}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 2131, col: 11, offset: 69656}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2132, col: 11, offset: 69678}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2133, col: 11, offset: 69695}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2134, col: 11, offset: 69772}, + name: "QuotedTextInDoubleQuoteItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2135, col: 11, offset: 69816}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2136, col: 11, offset: 69845}, + name: "DoubleQuoteItalicTextFallbackCharacter", }, - }, - &litMatcher{ - pos: position{line: 2397, col: 89, offset: 78691}, - val: "``", - ignoreCase: false, - want: "\"``\"", }, }, }, }, + }, + }, + }, + { + name: "QuotedTextInDoubleQuoteItalicText", + pos: position{line: 2140, col: 1, offset: 69930}, + expr: &choiceExpr{ + pos: position{line: 2142, col: 5, offset: 69995}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2401, col: 7, offset: 78860}, - run: (*parser).callonEscapedMonospaceText14, + pos: position{line: 2142, col: 5, offset: 69995}, + run: (*parser).callonQuotedTextInDoubleQuoteItalicText2, expr: &seqExpr{ - pos: position{line: 2401, col: 7, offset: 78860}, + pos: position{line: 2142, col: 5, offset: 69995}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2401, col: 7, offset: 78860}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedMonospaceText17, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, + &andExpr{ + pos: position{line: 2142, col: 5, offset: 69995}, + expr: &litMatcher{ + pos: position{line: 2142, col: 7, offset: 69997}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", }, }, - &litMatcher{ - pos: position{line: 2401, col: 42, offset: 78895}, - val: "``", - ignoreCase: false, - want: "\"``\"", - }, &labeledExpr{ - pos: position{line: 2401, col: 47, offset: 78900}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2401, col: 57, offset: 78910}, - name: "SingleQuoteMonospaceTextElements", + pos: position{line: 2143, col: 5, offset: 70006}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2144, col: 9, offset: 70024}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2144, col: 9, offset: 70024}, + name: "EscapedBoldText", + }, + &ruleRefExpr{ + pos: position{line: 2145, col: 11, offset: 70051}, + name: "EscapedMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2146, col: 11, offset: 70079}, + name: "EscapedMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2147, col: 11, offset: 70110}, + name: "EscapedSubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2148, col: 11, offset: 70141}, + name: "EscapedSuperscriptText", + }, + }, }, }, - &litMatcher{ - pos: position{line: 2401, col: 91, offset: 78944}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, }, }, }, &actionExpr{ - pos: position{line: 2406, col: 7, offset: 79150}, - run: (*parser).callonEscapedMonospaceText24, + pos: position{line: 2154, col: 5, offset: 70241}, + run: (*parser).callonQuotedTextInDoubleQuoteItalicText13, expr: &seqExpr{ - pos: position{line: 2406, col: 7, offset: 79150}, + pos: position{line: 2154, col: 5, offset: 70241}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2406, col: 7, offset: 79150}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedMonospaceText27, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, + pos: position{line: 2154, col: 5, offset: 70241}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 2154, col: 16, offset: 70252}, + expr: &ruleRefExpr{ + pos: position{line: 2154, col: 17, offset: 70253}, + name: "LongHandAttributes", }, }, }, - &litMatcher{ - pos: position{line: 2406, col: 42, offset: 79185}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, &labeledExpr{ - pos: position{line: 2406, col: 46, offset: 79189}, - label: "elements", - expr: &ruleRefExpr{ - pos: position{line: 2406, col: 56, offset: 79199}, - name: "SingleQuoteMonospaceTextElements", + pos: position{line: 2155, col: 5, offset: 70279}, + label: "text", + expr: &choiceExpr{ + pos: position{line: 2155, col: 11, offset: 70285}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2155, col: 11, offset: 70285}, + name: "SingleQuoteItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2156, col: 11, offset: 70317}, + name: "BoldText", + }, + &ruleRefExpr{ + pos: position{line: 2157, col: 11, offset: 70336}, + name: "MarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2158, col: 11, offset: 70357}, + name: "MonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2159, col: 11, offset: 70381}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2160, col: 11, offset: 70405}, + name: "SuperscriptText", + }, + }, }, }, - &litMatcher{ - pos: position{line: 2406, col: 90, offset: 79233}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, }, }, }, @@ -60459,1560 +11140,291 @@ var g = &grammar{ }, }, { - name: "MarkedText", - pos: position{line: 2413, col: 1, offset: 79485}, + name: "DoubleQuoteItalicTextFallbackCharacter", + pos: position{line: 2164, col: 1, offset: 70506}, expr: &choiceExpr{ - pos: position{line: 2413, col: 15, offset: 79499}, + pos: position{line: 2165, col: 5, offset: 70552}, alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2413, col: 15, offset: 79499}, - name: "DoubleQuoteMarkedText", + &charClassMatcher{ + pos: position{line: 2165, col: 5, offset: 70552}, + val: "[^\\r\\n_]", + chars: []rune{'\r', '\n', '_'}, + ignoreCase: false, + inverted: true, }, - &ruleRefExpr{ - pos: position{line: 2413, col: 39, offset: 79523}, - name: "SingleQuoteMarkedText", + &actionExpr{ + pos: position{line: 2166, col: 7, offset: 70651}, + run: (*parser).callonDoubleQuoteItalicTextFallbackCharacter3, + expr: &seqExpr{ + pos: position{line: 2166, col: 7, offset: 70651}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2166, col: 7, offset: 70651}, + val: "__", + ignoreCase: false, + want: "\"__\"", + }, + &ruleRefExpr{ + pos: position{line: 2166, col: 12, offset: 70656}, + name: "Alphanums", + }, + }, + }, }, }, }, }, { - name: "DoubleQuoteMarkedText", - pos: position{line: 2427, col: 1, offset: 79861}, + name: "SingleQuoteItalicTextStartDelimiter", + pos: position{line: 2173, col: 1, offset: 70939}, + expr: &litMatcher{ + pos: position{line: 2173, col: 40, offset: 70978}, + val: "_", + ignoreCase: false, + want: "\"_\"", + }, + }, + { + name: "SingleQuoteItalicTextEndDelimiter", + pos: position{line: 2175, col: 1, offset: 70984}, + expr: &litMatcher{ + pos: position{line: 2175, col: 38, offset: 71021}, + val: "_", + ignoreCase: false, + want: "\"_\"", + }, + }, + { + name: "SingleQuoteItalicText", + pos: position{line: 2177, col: 1, offset: 71027}, expr: &actionExpr{ - pos: position{line: 2428, col: 5, offset: 79891}, - run: (*parser).callonDoubleQuoteMarkedText1, + pos: position{line: 2178, col: 5, offset: 71057}, + run: (*parser).callonSingleQuoteItalicText1, expr: &seqExpr{ - pos: position{line: 2428, col: 5, offset: 79891}, + pos: position{line: 2178, col: 5, offset: 71057}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2425, col: 35, offset: 79855}, - val: "##", - ignoreCase: false, - want: "\"##\"", + &ruleRefExpr{ + pos: position{line: 2178, col: 5, offset: 71057}, + name: "SingleQuoteItalicTextStartDelimiter", }, &labeledExpr{ - pos: position{line: 2429, col: 5, offset: 79927}, + pos: position{line: 2179, col: 5, offset: 71097}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2429, col: 15, offset: 79937}, - name: "DoubleQuoteMarkedTextElements", + pos: position{line: 2179, col: 15, offset: 71107}, + name: "SingleQuoteItalicTextElements", }, }, - &litMatcher{ - pos: position{line: 2425, col: 35, offset: 79855}, - val: "##", - ignoreCase: false, - want: "\"##\"", + &ruleRefExpr{ + pos: position{line: 2180, col: 5, offset: 71143}, + name: "SingleQuoteItalicTextEndDelimiter", }, }, }, }, }, { - name: "DoubleQuoteMarkedTextElements", - pos: position{line: 2434, col: 1, offset: 80100}, - expr: &zeroOrMoreExpr{ - pos: position{line: 2434, col: 34, offset: 80133}, - expr: &ruleRefExpr{ - pos: position{line: 2434, col: 34, offset: 80133}, - name: "DoubleQuoteMarkedTextElement", - }, - }, - }, - { - name: "DoubleQuoteMarkedTextElement", - pos: position{line: 2436, col: 1, offset: 80164}, + name: "SingleQuoteItalicTextElements", + pos: position{line: 2184, col: 1, offset: 71274}, expr: &actionExpr{ - pos: position{line: 2437, col: 5, offset: 80233}, - run: (*parser).callonDoubleQuoteMarkedTextElement1, + pos: position{line: 2185, col: 5, offset: 71312}, + run: (*parser).callonSingleQuoteItalicTextElements1, expr: &seqExpr{ - pos: position{line: 2437, col: 5, offset: 80233}, + pos: position{line: 2185, col: 5, offset: 71312}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2437, col: 5, offset: 80233}, - expr: &litMatcher{ - pos: position{line: 2425, col: 35, offset: 79855}, - val: "##", - ignoreCase: false, - want: "\"##\"", + pos: position{line: 2185, col: 5, offset: 71312}, + expr: &ruleRefExpr{ + pos: position{line: 2185, col: 6, offset: 71313}, + name: "EOF", + }, + }, + ¬Expr{ + pos: position{line: 2185, col: 10, offset: 71317}, + expr: &ruleRefExpr{ + pos: position{line: 2185, col: 11, offset: 71318}, + name: "Space", }, }, &labeledExpr{ - pos: position{line: 2438, col: 5, offset: 80269}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2439, col: 9, offset: 80287}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2418, col: 5, offset: 79597}, - run: (*parser).callonDoubleQuoteMarkedTextElement7, - expr: &seqExpr{ - pos: position{line: 2418, col: 5, offset: 79597}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2418, col: 5, offset: 79597}, - expr: &charClassMatcher{ - pos: position{line: 2418, col: 5, offset: 79597}, - val: "[,?!;0-9\\pL]", - chars: []rune{',', '?', '!', ';'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2418, col: 19, offset: 79611}, - expr: &choiceExpr{ - pos: position{line: 2418, col: 21, offset: 79613}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMarkedTextElement13, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 2415, col: 24, offset: 79569}, - val: "#", - ignoreCase: false, - want: "\"#\"", - }, - }, - }, - }, - }, - }, + pos: position{line: 2186, col: 5, offset: 71356}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 2186, col: 14, offset: 71365}, + expr: &ruleRefExpr{ + pos: position{line: 2186, col: 15, offset: 71366}, + name: "SingleQuoteItalicTextElement", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 2187, col: 5, offset: 71401}, + run: (*parser).callonSingleQuoteItalicTextElements10, + }, + }, + }, + }, + }, + { + name: "SingleQuoteItalicTextElement", + pos: position{line: 2193, col: 1, offset: 71542}, + expr: &choiceExpr{ + pos: position{line: 2194, col: 5, offset: 71579}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2194, col: 5, offset: 71579}, + name: "ItalicTextWord", + }, + &ruleRefExpr{ + pos: position{line: 2195, col: 7, offset: 71600}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 2196, col: 7, offset: 71613}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2196, col: 7, offset: 71613}, + name: "Newline", + }, + ¬Expr{ + pos: position{line: 2196, col: 15, offset: 71621}, + expr: &ruleRefExpr{ + pos: position{line: 2196, col: 16, offset: 71622}, + name: "Newline", + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2197, col: 7, offset: 71670}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 2198, col: 7, offset: 71695}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2199, col: 7, offset: 71763}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2200, col: 7, offset: 71776}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2201, col: 7, offset: 71799}, + name: "QuotedTextInSingleQuoteItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2202, col: 7, offset: 71839}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2203, col: 7, offset: 71864}, + name: "SingleQuoteItalicTextFallbackCharacter", + }, + }, + }, + }, + { + name: "QuotedTextInSingleQuoteItalicText", + pos: position{line: 2205, col: 1, offset: 71904}, + expr: &choiceExpr{ + pos: position{line: 2207, col: 5, offset: 71968}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2207, col: 5, offset: 71968}, + run: (*parser).callonQuotedTextInSingleQuoteItalicText2, + expr: &seqExpr{ + pos: position{line: 2207, col: 5, offset: 71968}, + exprs: []interface{}{ + &andExpr{ + pos: position{line: 2207, col: 5, offset: 71968}, + expr: &litMatcher{ + pos: position{line: 2207, col: 7, offset: 71970}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonDoubleQuoteMarkedTextElement16, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + }, + &labeledExpr{ + pos: position{line: 2208, col: 5, offset: 71979}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2209, col: 9, offset: 71997}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2209, col: 9, offset: 71997}, + name: "EscapedBoldText", }, - }, - }, - &seqExpr{ - pos: position{line: 2441, col: 11, offset: 80362}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMarkedTextElement20, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2210, col: 11, offset: 72024}, + name: "EscapedMarkedText", }, - ¬Expr{ - pos: position{line: 2441, col: 19, offset: 80370}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMarkedTextElement26, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2211, col: 11, offset: 72052}, + name: "EscapedMonospaceText", }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteMarkedTextElement31, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonDoubleQuoteMarkedTextElement33, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonDoubleQuoteMarkedTextElement36, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMarkedTextElement40, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteMarkedTextElement47, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteMarkedTextElement52, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteMarkedTextElement54, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonDoubleQuoteMarkedTextElement58, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMarkedTextElement62, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonDoubleQuoteMarkedTextElement69, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonDoubleQuoteMarkedTextElement74, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonDoubleQuoteMarkedTextElement76, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteMarkedTextElement80, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMarkedTextElement84, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteMarkedTextElement90, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMarkedTextElement94, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2212, col: 11, offset: 72083}, + name: "EscapedSubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2213, col: 11, offset: 72114}, + name: "EscapedSuperscriptText", }, }, }, - &ruleRefExpr{ - pos: position{line: 2443, col: 11, offset: 80452}, - name: "InlineMacro", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2219, col: 5, offset: 72214}, + run: (*parser).callonQuotedTextInSingleQuoteItalicText13, + expr: &seqExpr{ + pos: position{line: 2219, col: 5, offset: 72214}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2219, col: 5, offset: 72214}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 2219, col: 16, offset: 72225}, + expr: &ruleRefExpr{ + pos: position{line: 2219, col: 17, offset: 72226}, + name: "LongHandAttributes", + }, }, - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonDoubleQuoteMarkedTextElement101, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteMarkedTextElement105, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteMarkedTextElement107, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteMarkedTextElement109, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteMarkedTextElement111, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteMarkedTextElement113, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteMarkedTextElement115, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteMarkedTextElement117, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteMarkedTextElement119, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteMarkedTextElement121, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMarkedTextElement123, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMarkedTextElement125, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMarkedTextElement128, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMarkedTextElement132, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMarkedTextElement139, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMarkedTextElement141, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMarkedTextElement146, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteMarkedTextElement153, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteMarkedTextElement155, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteMarkedTextElement157, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonDoubleQuoteMarkedTextElement159, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonDoubleQuoteMarkedTextElement161, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonDoubleQuoteMarkedTextElement163, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonDoubleQuoteMarkedTextElement165, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonDoubleQuoteMarkedTextElement167, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonDoubleQuoteMarkedTextElement169, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonDoubleQuoteMarkedTextElement171, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonDoubleQuoteMarkedTextElement173, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMarkedTextElement175, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonDoubleQuoteMarkedTextElement177, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMarkedTextElement180, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMarkedTextElement184, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMarkedTextElement191, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonDoubleQuoteMarkedTextElement193, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonDoubleQuoteMarkedTextElement198, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonDoubleQuoteMarkedTextElement205, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonDoubleQuoteMarkedTextElement207, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonDoubleQuoteMarkedTextElement209, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonDoubleQuoteMarkedTextElement211, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonDoubleQuoteMarkedTextElement213, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonDoubleQuoteMarkedTextElement219, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteMarkedTextElement225, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonDoubleQuoteMarkedTextElement227, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonDoubleQuoteMarkedTextElement230, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonDoubleQuoteMarkedTextElement232, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteMarkedTextElement236, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonDoubleQuoteMarkedTextElement240, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonDoubleQuoteMarkedTextElement246, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonDoubleQuoteMarkedTextElement251, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMarkedTextElement255, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonDoubleQuoteMarkedTextElement261, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonDoubleQuoteMarkedTextElement265, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonDoubleQuoteMarkedTextElement271, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonDoubleQuoteMarkedTextElement274, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonDoubleQuoteMarkedTextElement278, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonDoubleQuoteMarkedTextElement282, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 2446, col: 11, offset: 80568}, - name: "QuotedTextInDoubleMarkedBoldText", - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonDoubleQuoteMarkedTextElement285, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonDoubleQuoteMarkedTextElement289, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &charClassMatcher{ - pos: position{line: 2479, col: 5, offset: 81352}, - val: "[^\\r\\n#]", - chars: []rune{'\r', '\n', '#'}, - ignoreCase: false, - inverted: true, - }, - &actionExpr{ - pos: position{line: 2480, col: 7, offset: 81451}, - run: (*parser).callonDoubleQuoteMarkedTextElement294, - expr: &seqExpr{ - pos: position{line: 2480, col: 7, offset: 81451}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2425, col: 35, offset: 79855}, - val: "##", - ignoreCase: false, - want: "\"##\"", - }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonDoubleQuoteMarkedTextElement297, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + }, + &labeledExpr{ + pos: position{line: 2220, col: 5, offset: 72252}, + label: "text", + expr: &choiceExpr{ + pos: position{line: 2220, col: 11, offset: 72258}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2220, col: 11, offset: 72258}, + name: "BoldText", + }, + &ruleRefExpr{ + pos: position{line: 2221, col: 11, offset: 72277}, + name: "DoubleQuoteItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2222, col: 11, offset: 72309}, + name: "MarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2223, col: 11, offset: 72330}, + name: "MonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2224, col: 11, offset: 72354}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2225, col: 11, offset: 72378}, + name: "SuperscriptText", }, }, }, @@ -62024,108 +11436,154 @@ var g = &grammar{ }, }, { - name: "QuotedTextInDoubleMarkedBoldText", - pos: position{line: 2453, col: 1, offset: 80722}, + name: "SingleQuoteItalicTextFallbackCharacter", + pos: position{line: 2229, col: 1, offset: 72479}, expr: &choiceExpr{ - pos: position{line: 2455, col: 5, offset: 80785}, + pos: position{line: 2230, col: 5, offset: 72525}, alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 2230, col: 5, offset: 72525}, + val: "[^\\r\\n _]", + chars: []rune{'\r', '\n', ' ', '_'}, + ignoreCase: false, + inverted: true, + }, &actionExpr{ - pos: position{line: 2455, col: 5, offset: 80785}, - run: (*parser).callonQuotedTextInDoubleMarkedBoldText2, + pos: position{line: 2231, col: 7, offset: 72632}, + run: (*parser).callonSingleQuoteItalicTextFallbackCharacter3, expr: &seqExpr{ - pos: position{line: 2455, col: 5, offset: 80785}, + pos: position{line: 2231, col: 7, offset: 72632}, exprs: []interface{}{ - &andExpr{ - pos: position{line: 2455, col: 5, offset: 80785}, - expr: &litMatcher{ - pos: position{line: 2455, col: 7, offset: 80787}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, + &litMatcher{ + pos: position{line: 2231, col: 7, offset: 72632}, + val: "_", + ignoreCase: false, + want: "\"_\"", }, - &labeledExpr{ - pos: position{line: 2456, col: 5, offset: 80796}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2457, col: 9, offset: 80814}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2457, col: 9, offset: 80814}, - name: "EscapedBoldText", - }, - &ruleRefExpr{ - pos: position{line: 2458, col: 11, offset: 80841}, - name: "EscapedItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2459, col: 11, offset: 80869}, - name: "EscapedMonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2460, col: 11, offset: 80900}, - name: "EscapedSubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2461, col: 11, offset: 80931}, - name: "EscapedSuperscriptText", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2231, col: 11, offset: 72636}, + name: "Alphanums", }, }, }, }, - &actionExpr{ - pos: position{line: 2467, col: 5, offset: 81031}, - run: (*parser).callonQuotedTextInDoubleMarkedBoldText13, - expr: &seqExpr{ - pos: position{line: 2467, col: 5, offset: 81031}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2467, col: 5, offset: 81031}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 2467, col: 16, offset: 81042}, - expr: &ruleRefExpr{ - pos: position{line: 2467, col: 17, offset: 81043}, - name: "LongHandAttributes", - }, + }, + }, + }, + { + name: "EscapedItalicText", + pos: position{line: 2235, col: 1, offset: 72810}, + expr: &choiceExpr{ + pos: position{line: 2237, col: 5, offset: 72875}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2237, col: 5, offset: 72875}, + run: (*parser).callonEscapedItalicText2, + expr: &seqExpr{ + pos: position{line: 2237, col: 5, offset: 72875}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2237, col: 5, offset: 72875}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2237, col: 18, offset: 72888}, + name: "TwoOrMoreBackslashes", }, }, + &litMatcher{ + pos: position{line: 2237, col: 40, offset: 72910}, + val: "__", + ignoreCase: false, + want: "\"__\"", + }, &labeledExpr{ - pos: position{line: 2468, col: 5, offset: 81069}, - label: "text", - expr: &choiceExpr{ - pos: position{line: 2469, col: 9, offset: 81084}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 2469, col: 9, offset: 81084}, - name: "SingleQuoteMarkedText", - }, - &ruleRefExpr{ - pos: position{line: 2470, col: 11, offset: 81116}, - name: "BoldText", - }, - &ruleRefExpr{ - pos: position{line: 2471, col: 11, offset: 81135}, - name: "ItalicText", - }, - &ruleRefExpr{ - pos: position{line: 2472, col: 11, offset: 81156}, - name: "MonospaceText", - }, - &ruleRefExpr{ - pos: position{line: 2473, col: 11, offset: 81180}, - name: "SubscriptText", - }, - &ruleRefExpr{ - pos: position{line: 2474, col: 11, offset: 81204}, - name: "SuperscriptText", - }, - }, + pos: position{line: 2237, col: 45, offset: 72915}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2237, col: 55, offset: 72925}, + name: "DoubleQuoteItalicTextElements", + }, + }, + &litMatcher{ + pos: position{line: 2237, col: 86, offset: 72956}, + val: "__", + ignoreCase: false, + want: "\"__\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2241, col: 7, offset: 73121}, + run: (*parser).callonEscapedItalicText10, + expr: &seqExpr{ + pos: position{line: 2241, col: 7, offset: 73121}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2241, col: 7, offset: 73121}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2241, col: 20, offset: 73134}, + name: "OneOrMoreBackslashes", }, }, + &litMatcher{ + pos: position{line: 2241, col: 42, offset: 73156}, + val: "__", + ignoreCase: false, + want: "\"__\"", + }, + &labeledExpr{ + pos: position{line: 2241, col: 47, offset: 73161}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2241, col: 57, offset: 73171}, + name: "SingleQuoteItalicTextElements", + }, + }, + &litMatcher{ + pos: position{line: 2241, col: 88, offset: 73202}, + val: "_", + ignoreCase: false, + want: "\"_\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2246, col: 7, offset: 73443}, + run: (*parser).callonEscapedItalicText18, + expr: &seqExpr{ + pos: position{line: 2246, col: 7, offset: 73443}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2246, col: 7, offset: 73443}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2246, col: 20, offset: 73456}, + name: "OneOrMoreBackslashes", + }, + }, + &litMatcher{ + pos: position{line: 2246, col: 42, offset: 73478}, + val: "_", + ignoreCase: false, + want: "\"_\"", + }, + &labeledExpr{ + pos: position{line: 2246, col: 46, offset: 73482}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2246, col: 56, offset: 73492}, + name: "SingleQuoteItalicTextElements", + }, + }, + &litMatcher{ + pos: position{line: 2246, col: 87, offset: 73523}, + val: "_", + ignoreCase: false, + want: "\"_\"", + }, }, }, }, @@ -62133,210 +11591,253 @@ var g = &grammar{ }, }, { - name: "SingleQuoteMarkedText", - pos: position{line: 2491, col: 1, offset: 81858}, + name: "MonospaceText", + pos: position{line: 2253, col: 1, offset: 73842}, + expr: &choiceExpr{ + pos: position{line: 2253, col: 18, offset: 73859}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2253, col: 18, offset: 73859}, + name: "DoubleQuoteMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2253, col: 45, offset: 73886}, + name: "SingleQuoteMonospaceText", + }, + }, + }, + }, + { + name: "MonospaceTextDelimiter", + pos: position{line: 2255, col: 1, offset: 73912}, + expr: &litMatcher{ + pos: position{line: 2255, col: 27, offset: 73938}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + { + name: "MonospaceTextWord", + pos: position{line: 2257, col: 1, offset: 73943}, expr: &actionExpr{ - pos: position{line: 2492, col: 5, offset: 81888}, - run: (*parser).callonSingleQuoteMarkedText1, + pos: position{line: 2258, col: 5, offset: 73969}, + run: (*parser).callonMonospaceTextWord1, expr: &seqExpr{ - pos: position{line: 2492, col: 5, offset: 81888}, + pos: position{line: 2258, col: 5, offset: 73969}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2487, col: 40, offset: 81810}, - val: "#", - ignoreCase: false, - want: "\"#\"", + &oneOrMoreExpr{ + pos: position{line: 2258, col: 5, offset: 73969}, + expr: &charClassMatcher{ + pos: position{line: 2258, col: 5, offset: 73969}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + &andExpr{ + pos: position{line: 2258, col: 15, offset: 73979}, + expr: &choiceExpr{ + pos: position{line: 2258, col: 17, offset: 73981}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2258, col: 17, offset: 73981}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 2258, col: 25, offset: 73989}, + name: "MonospaceTextDelimiter", + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "DoubleQuoteMonospaceTextDelimiter", + pos: position{line: 2265, col: 1, offset: 74195}, + expr: &litMatcher{ + pos: position{line: 2265, col: 38, offset: 74232}, + val: "``", + ignoreCase: false, + want: "\"``\"", + }, + }, + { + name: "DoubleQuoteMonospaceText", + pos: position{line: 2267, col: 1, offset: 74238}, + expr: &actionExpr{ + pos: position{line: 2268, col: 5, offset: 74271}, + run: (*parser).callonDoubleQuoteMonospaceText1, + expr: &seqExpr{ + pos: position{line: 2268, col: 5, offset: 74271}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2268, col: 5, offset: 74271}, + name: "DoubleQuoteMonospaceTextDelimiter", }, &labeledExpr{ - pos: position{line: 2493, col: 5, offset: 81928}, + pos: position{line: 2269, col: 5, offset: 74310}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2493, col: 15, offset: 81938}, - name: "SingleQuoteMarkedTextElements", + pos: position{line: 2269, col: 15, offset: 74320}, + name: "DoubleQuoteMonospaceTextElements", }, }, - &litMatcher{ - pos: position{line: 2489, col: 38, offset: 81852}, - val: "#", - ignoreCase: false, - want: "\"#\"", + &ruleRefExpr{ + pos: position{line: 2270, col: 5, offset: 74359}, + name: "DoubleQuoteMonospaceTextDelimiter", }, }, }, }, }, { - name: "SingleQuoteMarkedTextElements", - pos: position{line: 2498, col: 1, offset: 82105}, + name: "DoubleQuoteMonospaceTextElements", + pos: position{line: 2274, col: 1, offset: 74492}, + expr: &oneOrMoreExpr{ + pos: position{line: 2274, col: 37, offset: 74528}, + expr: &ruleRefExpr{ + pos: position{line: 2274, col: 37, offset: 74528}, + name: "DoubleQuoteMonospaceTextElement", + }, + }, + }, + { + name: "DoubleQuoteMonospaceTextElement", + pos: position{line: 2276, col: 1, offset: 74595}, expr: &actionExpr{ - pos: position{line: 2499, col: 5, offset: 82143}, - run: (*parser).callonSingleQuoteMarkedTextElements1, + pos: position{line: 2277, col: 5, offset: 74635}, + run: (*parser).callonDoubleQuoteMonospaceTextElement1, expr: &seqExpr{ - pos: position{line: 2499, col: 5, offset: 82143}, + pos: position{line: 2277, col: 5, offset: 74635}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2499, col: 5, offset: 82143}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - ¬Expr{ - pos: position{line: 2499, col: 10, offset: 82148}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMarkedTextElements7, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 2277, col: 5, offset: 74635}, + expr: &ruleRefExpr{ + pos: position{line: 2277, col: 6, offset: 74636}, + name: "DoubleQuoteMonospaceTextDelimiter", }, }, &labeledExpr{ - pos: position{line: 2500, col: 5, offset: 82187}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 2500, col: 14, offset: 82196}, - expr: &ruleRefExpr{ - pos: position{line: 2500, col: 15, offset: 82197}, - name: "SingleQuoteMarkedTextElement", + pos: position{line: 2278, col: 5, offset: 74674}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2279, col: 9, offset: 74692}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2279, col: 9, offset: 74692}, + name: "MonospaceTextWord", + }, + &ruleRefExpr{ + pos: position{line: 2280, col: 11, offset: 74720}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 2281, col: 11, offset: 74770}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2281, col: 11, offset: 74770}, + name: "Newline", + }, + ¬Expr{ + pos: position{line: 2281, col: 19, offset: 74778}, + expr: &ruleRefExpr{ + pos: position{line: 2281, col: 20, offset: 74779}, + name: "Newline", + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2282, col: 11, offset: 74831}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 2283, col: 11, offset: 74860}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2284, col: 11, offset: 74882}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2285, col: 11, offset: 74899}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2286, col: 11, offset: 74976}, + name: "RawApostrophe", + }, + &ruleRefExpr{ + pos: position{line: 2287, col: 11, offset: 75043}, + name: "QuotedTextInDoubleQuoteMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2288, col: 11, offset: 75090}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2289, col: 11, offset: 75119}, + name: "DoubleQuoteMonospaceTextFallbackCharacter", + }, }, }, }, - &andCodeExpr{ - pos: position{line: 2501, col: 5, offset: 82233}, - run: (*parser).callonSingleQuoteMarkedTextElements12, - }, }, }, }, }, { - name: "SingleQuoteMarkedTextElement", - pos: position{line: 2507, col: 1, offset: 82374}, + name: "QuotedTextInDoubleQuoteMonospaceText", + pos: position{line: 2293, col: 1, offset: 75207}, expr: &choiceExpr{ - pos: position{line: 2508, col: 5, offset: 82411}, + pos: position{line: 2295, col: 5, offset: 75274}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2418, col: 5, offset: 79597}, - run: (*parser).callonSingleQuoteMarkedTextElement2, + pos: position{line: 2295, col: 5, offset: 75274}, + run: (*parser).callonQuotedTextInDoubleQuoteMonospaceText2, expr: &seqExpr{ - pos: position{line: 2418, col: 5, offset: 79597}, + pos: position{line: 2295, col: 5, offset: 75274}, exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2418, col: 5, offset: 79597}, - expr: &charClassMatcher{ - pos: position{line: 2418, col: 5, offset: 79597}, - val: "[,?!;0-9\\pL]", - chars: []rune{',', '?', '!', ';'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + &andExpr{ + pos: position{line: 2295, col: 5, offset: 75274}, + expr: &litMatcher{ + pos: position{line: 2295, col: 7, offset: 75276}, + val: "\\", ignoreCase: false, - inverted: false, + want: "\"\\\\\"", }, }, - &andExpr{ - pos: position{line: 2418, col: 19, offset: 79611}, + &labeledExpr{ + pos: position{line: 2296, col: 5, offset: 75285}, + label: "element", expr: &choiceExpr{ - pos: position{line: 2418, col: 21, offset: 79613}, + pos: position{line: 2297, col: 9, offset: 75303}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMarkedTextElement8, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &ruleRefExpr{ + pos: position{line: 2297, col: 9, offset: 75303}, + name: "EscapedBoldText", }, - &litMatcher{ - pos: position{line: 2415, col: 24, offset: 79569}, - val: "#", - ignoreCase: false, - want: "\"#\"", + &ruleRefExpr{ + pos: position{line: 2298, col: 11, offset: 75330}, + name: "EscapedItalicText", }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonSingleQuoteMarkedTextElement11, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &seqExpr{ - pos: position{line: 2510, col: 7, offset: 82445}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMarkedTextElement15, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2510, col: 15, offset: 82453}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMarkedTextElement21, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", + &ruleRefExpr{ + pos: position{line: 2299, col: 11, offset: 75358}, + name: "EscapedMarkedText", }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &ruleRefExpr{ + pos: position{line: 2300, col: 11, offset: 75386}, + name: "EscapedSubscriptText", }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &ruleRefExpr{ + pos: position{line: 2301, col: 11, offset: 75417}, + name: "EscapedSuperscriptText", }, }, }, @@ -62345,352 +11846,51 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteMarkedTextElement26, + pos: position{line: 2307, col: 5, offset: 75517}, + run: (*parser).callonQuotedTextInDoubleQuoteMonospaceText13, expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, + pos: position{line: 2307, col: 5, offset: 75517}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSingleQuoteMarkedTextElement28, + &labeledExpr{ + pos: position{line: 2307, col: 5, offset: 75517}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 2307, col: 16, offset: 75528}, + expr: &ruleRefExpr{ + pos: position{line: 2307, col: 17, offset: 75529}, + name: "LongHandAttributes", + }, + }, }, &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", + pos: position{line: 2308, col: 5, offset: 75555}, + label: "text", expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, + pos: position{line: 2309, col: 9, offset: 75570}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonSingleQuoteMarkedTextElement31, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMarkedTextElement35, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteMarkedTextElement42, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteMarkedTextElement47, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteMarkedTextElement49, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2309, col: 9, offset: 75570}, + name: "SingleQuoteMonospaceText", }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonSingleQuoteMarkedTextElement53, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMarkedTextElement57, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSingleQuoteMarkedTextElement64, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSingleQuoteMarkedTextElement69, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSingleQuoteMarkedTextElement71, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2310, col: 11, offset: 75605}, + name: "BoldText", }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteMarkedTextElement75, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMarkedTextElement79, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2311, col: 11, offset: 75624}, + name: "ItalicText", }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteMarkedTextElement85, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMarkedTextElement89, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2312, col: 11, offset: 75645}, + name: "MarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2313, col: 11, offset: 75666}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2314, col: 11, offset: 75690}, + name: "SuperscriptText", }, }, }, @@ -62698,443 +11898,246 @@ var g = &grammar{ }, }, }, - &ruleRefExpr{ - pos: position{line: 2512, col: 7, offset: 82527}, - name: "InlineMacro", + }, + }, + }, + { + name: "DoubleQuoteMonospaceTextFallbackCharacter", + pos: position{line: 2318, col: 1, offset: 75792}, + expr: &choiceExpr{ + pos: position{line: 2319, col: 5, offset: 75841}, + alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 2319, col: 5, offset: 75841}, + val: "[^\\r\\n`]", + chars: []rune{'\r', '\n', '`'}, + ignoreCase: false, + inverted: true, }, &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonSingleQuoteMarkedTextElement96, + pos: position{line: 2320, col: 7, offset: 75943}, + run: (*parser).callonDoubleQuoteMonospaceTextFallbackCharacter3, expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, + pos: position{line: 2320, col: 7, offset: 75943}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", + pos: position{line: 2320, col: 7, offset: 75943}, + val: "``", ignoreCase: false, - want: "\"\\\\\"", + want: "\"``\"", }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteMarkedTextElement100, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteMarkedTextElement102, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteMarkedTextElement104, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteMarkedTextElement106, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteMarkedTextElement108, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteMarkedTextElement110, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteMarkedTextElement112, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteMarkedTextElement114, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteMarkedTextElement116, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMarkedTextElement118, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMarkedTextElement120, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMarkedTextElement123, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMarkedTextElement127, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMarkedTextElement134, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMarkedTextElement136, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMarkedTextElement141, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteMarkedTextElement148, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteMarkedTextElement150, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteMarkedTextElement152, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2320, col: 12, offset: 75948}, + name: "Alphanums", }, }, }, }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSingleQuoteMarkedTextElement154, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", + }, + }, + }, + { + name: "SingleQuoteMonospaceTextStartDelimiter", + pos: position{line: 2329, col: 1, offset: 76335}, + expr: &litMatcher{ + pos: position{line: 2329, col: 43, offset: 76377}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + { + name: "SingleQuoteMonospaceTextEndDelimiter", + pos: position{line: 2331, col: 1, offset: 76383}, + expr: &litMatcher{ + pos: position{line: 2331, col: 41, offset: 76423}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + { + name: "SingleQuoteMonospaceText", + pos: position{line: 2333, col: 1, offset: 76429}, + expr: &actionExpr{ + pos: position{line: 2334, col: 5, offset: 76462}, + run: (*parser).callonSingleQuoteMonospaceText1, + expr: &seqExpr{ + pos: position{line: 2334, col: 5, offset: 76462}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2334, col: 5, offset: 76462}, + name: "SingleQuoteMonospaceTextStartDelimiter", }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSingleQuoteMarkedTextElement156, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", + &labeledExpr{ + pos: position{line: 2335, col: 5, offset: 76506}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2335, col: 15, offset: 76516}, + name: "SingleQuoteMonospaceTextElements", + }, }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSingleQuoteMarkedTextElement158, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", + &ruleRefExpr{ + pos: position{line: 2336, col: 5, offset: 76555}, + name: "SingleQuoteMonospaceTextEndDelimiter", }, }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSingleQuoteMarkedTextElement160, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", + }, + }, + }, + { + name: "SingleQuoteMonospaceTextElements", + pos: position{line: 2340, col: 1, offset: 76692}, + expr: &actionExpr{ + pos: position{line: 2341, col: 5, offset: 76733}, + run: (*parser).callonSingleQuoteMonospaceTextElements1, + expr: &seqExpr{ + pos: position{line: 2341, col: 5, offset: 76733}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2341, col: 5, offset: 76733}, + expr: &ruleRefExpr{ + pos: position{line: 2341, col: 6, offset: 76734}, + name: "EOF", + }, }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSingleQuoteMarkedTextElement162, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", + ¬Expr{ + pos: position{line: 2341, col: 10, offset: 76738}, + expr: &ruleRefExpr{ + pos: position{line: 2341, col: 11, offset: 76739}, + name: "Space", + }, }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSingleQuoteMarkedTextElement164, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", + &labeledExpr{ + pos: position{line: 2342, col: 5, offset: 76777}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 2342, col: 14, offset: 76786}, + expr: &ruleRefExpr{ + pos: position{line: 2342, col: 15, offset: 76787}, + name: "SingleQuoteMonospaceTextElement", + }, + }, }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSingleQuoteMarkedTextElement166, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", + &andCodeExpr{ + pos: position{line: 2343, col: 5, offset: 76825}, + run: (*parser).callonSingleQuoteMonospaceTextElements10, }, }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSingleQuoteMarkedTextElement168, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", + }, + }, + }, + { + name: "SingleQuoteMonospaceTextElement", + pos: position{line: 2349, col: 1, offset: 76966}, + expr: &choiceExpr{ + pos: position{line: 2350, col: 5, offset: 77007}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2350, col: 5, offset: 77007}, + name: "Word", + }, + &ruleRefExpr{ + pos: position{line: 2351, col: 7, offset: 77018}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 2352, col: 7, offset: 77032}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2352, col: 7, offset: 77032}, + name: "Newline", + }, + ¬Expr{ + pos: position{line: 2352, col: 15, offset: 77040}, + expr: &ruleRefExpr{ + pos: position{line: 2352, col: 16, offset: 77041}, + name: "Newline", + }, + }, }, }, + &ruleRefExpr{ + pos: position{line: 2353, col: 7, offset: 77089}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 2354, col: 7, offset: 77114}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2355, col: 7, offset: 77133}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2356, col: 7, offset: 77146}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2357, col: 7, offset: 77219}, + name: "QuotedTextInSingleQuoteMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2358, col: 7, offset: 77262}, + name: "RawApostrophe", + }, + &ruleRefExpr{ + pos: position{line: 2359, col: 7, offset: 77282}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2360, col: 7, offset: 77307}, + name: "SingleQuoteMonospaceTextFallbackCharacter", + }, + }, + }, + }, + { + name: "QuotedTextInSingleQuoteMonospaceText", + pos: position{line: 2362, col: 1, offset: 77350}, + expr: &choiceExpr{ + pos: position{line: 2364, col: 5, offset: 77417}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMarkedTextElement170, + pos: position{line: 2364, col: 5, offset: 77417}, + run: (*parser).callonQuotedTextInSingleQuoteMonospaceText2, expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, + pos: position{line: 2364, col: 5, offset: 77417}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSingleQuoteMarkedTextElement172, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", + &andExpr{ + pos: position{line: 2364, col: 5, offset: 77417}, + expr: &litMatcher{ + pos: position{line: 2364, col: 7, offset: 77419}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMarkedTextElement175, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2365, col: 5, offset: 77428}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2366, col: 9, offset: 77446}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2366, col: 9, offset: 77446}, + name: "EscapedBoldText", }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMarkedTextElement179, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2367, col: 11, offset: 77473}, + name: "EscapedItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2368, col: 11, offset: 77501}, + name: "EscapedMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2369, col: 11, offset: 77529}, + name: "EscapedSubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2370, col: 11, offset: 77560}, + name: "EscapedSuperscriptText", }, }, }, @@ -63143,66 +12146,51 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMarkedTextElement186, + pos: position{line: 2376, col: 5, offset: 77660}, + run: (*parser).callonQuotedTextInSingleQuoteMonospaceText13, expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, + pos: position{line: 2376, col: 5, offset: 77660}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSingleQuoteMarkedTextElement188, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", + &labeledExpr{ + pos: position{line: 2376, col: 5, offset: 77660}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 2376, col: 16, offset: 77671}, + expr: &ruleRefExpr{ + pos: position{line: 2376, col: 17, offset: 77672}, + name: "LongHandAttributes", + }, + }, }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, + &labeledExpr{ + pos: position{line: 2377, col: 5, offset: 77698}, + label: "text", expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, + pos: position{line: 2378, col: 9, offset: 77713}, alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &ruleRefExpr{ + pos: position{line: 2378, col: 9, offset: 77713}, + name: "DoubleQuoteMonospaceText", }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSingleQuoteMarkedTextElement193, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2379, col: 11, offset: 77748}, + name: "BoldText", }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + &ruleRefExpr{ + pos: position{line: 2380, col: 11, offset: 77767}, + name: "ItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2381, col: 11, offset: 77788}, + name: "MarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2382, col: 11, offset: 77809}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2383, col: 11, offset: 77833}, + name: "SuperscriptText", }, }, }, @@ -63210,487 +12198,354 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSingleQuoteMarkedTextElement200, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSingleQuoteMarkedTextElement202, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSingleQuoteMarkedTextElement204, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", + }, + }, + }, + { + name: "SingleQuoteMonospaceTextFallbackCharacter", + pos: position{line: 2387, col: 1, offset: 77935}, + expr: &actionExpr{ + pos: position{line: 2388, col: 5, offset: 77984}, + run: (*parser).callonSingleQuoteMonospaceTextFallbackCharacter1, + expr: &choiceExpr{ + pos: position{line: 2388, col: 6, offset: 77985}, + alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 2388, col: 6, offset: 77985}, + val: "[^\\r\\n` ]", + chars: []rune{'\r', '\n', '`', ' '}, ignoreCase: false, - want: "\"=>\"", + inverted: true, }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSingleQuoteMarkedTextElement206, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", + &seqExpr{ + pos: position{line: 2389, col: 7, offset: 78097}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2389, col: 7, offset: 78097}, + name: "MonospaceTextDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 2389, col: 30, offset: 78120}, + name: "Alphanums", + }, + }, }, }, + }, + }, + }, + { + name: "EscapedMonospaceText", + pos: position{line: 2393, col: 1, offset: 78298}, + expr: &choiceExpr{ + pos: position{line: 2395, col: 5, offset: 78369}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonSingleQuoteMarkedTextElement208, + pos: position{line: 2395, col: 5, offset: 78369}, + run: (*parser).callonEscapedMonospaceText2, expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, + pos: position{line: 2395, col: 5, offset: 78369}, exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2395, col: 5, offset: 78369}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2395, col: 18, offset: 78382}, + name: "TwoOrMoreBackslashes", + }, }, &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", + pos: position{line: 2395, col: 40, offset: 78404}, + val: "``", ignoreCase: false, - want: "\"\\\\'\"", + want: "\"``\"", }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2395, col: 45, offset: 78409}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2395, col: 55, offset: 78419}, + name: "DoubleQuoteMonospaceTextElements", }, }, + &litMatcher{ + pos: position{line: 2395, col: 89, offset: 78453}, + val: "``", + ignoreCase: false, + want: "\"``\"", + }, }, }, }, &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonSingleQuoteMarkedTextElement214, + pos: position{line: 2399, col: 7, offset: 78622}, + run: (*parser).callonEscapedMonospaceText10, expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, + pos: position{line: 2399, col: 7, offset: 78622}, exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2399, col: 7, offset: 78622}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2399, col: 20, offset: 78635}, + name: "OneOrMoreBackslashes", + }, }, &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", + pos: position{line: 2399, col: 42, offset: 78657}, + val: "``", ignoreCase: false, - want: "\"'\"", + want: "\"``\"", }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 2399, col: 47, offset: 78662}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2399, col: 57, offset: 78672}, + name: "SingleQuoteMonospaceTextElements", }, }, + &litMatcher{ + pos: position{line: 2399, col: 91, offset: 78706}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, }, }, }, &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteMarkedTextElement220, + pos: position{line: 2404, col: 7, offset: 78912}, + run: (*parser).callonEscapedMonospaceText18, expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, + pos: position{line: 2404, col: 7, offset: 78912}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSingleQuoteMarkedTextElement222, - }, &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonSingleQuoteMarkedTextElement225, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonSingleQuoteMarkedTextElement227, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteMarkedTextElement231, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSingleQuoteMarkedTextElement235, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonSingleQuoteMarkedTextElement241, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSingleQuoteMarkedTextElement246, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMarkedTextElement250, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSingleQuoteMarkedTextElement256, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSingleQuoteMarkedTextElement260, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonSingleQuoteMarkedTextElement266, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonSingleQuoteMarkedTextElement269, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSingleQuoteMarkedTextElement273, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonSingleQuoteMarkedTextElement277, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, + pos: position{line: 2404, col: 7, offset: 78912}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2404, col: 20, offset: 78925}, + name: "OneOrMoreBackslashes", }, }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 2515, col: 7, offset: 82631}, - name: "QuotedTextInSingleQuoteMarkedText", - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonSingleQuoteMarkedTextElement280, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", + pos: position{line: 2404, col: 42, offset: 78947}, + val: "`", ignoreCase: false, - want: "\"�\"", + want: "\"`\"", }, &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonSingleQuoteMarkedTextElement284, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 2404, col: 46, offset: 78951}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2404, col: 56, offset: 78961}, + name: "SingleQuoteMonospaceTextElements", }, }, &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", + pos: position{line: 2404, col: 90, offset: 78995}, + val: "`", ignoreCase: false, - want: "\"�\"", + want: "\"`\"", }, }, }, }, - &charClassMatcher{ - pos: position{line: 2545, col: 5, offset: 83367}, - val: "[^\\r\\n #]", - chars: []rune{'\r', '\n', ' ', '#'}, - ignoreCase: false, - inverted: true, + }, + }, + }, + { + name: "MarkedText", + pos: position{line: 2411, col: 1, offset: 79247}, + expr: &choiceExpr{ + pos: position{line: 2411, col: 15, offset: 79261}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2411, col: 15, offset: 79261}, + name: "DoubleQuoteMarkedText", }, - &actionExpr{ - pos: position{line: 2546, col: 7, offset: 83472}, - run: (*parser).callonSingleQuoteMarkedTextElement289, - expr: &seqExpr{ - pos: position{line: 2546, col: 7, offset: 83472}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2546, col: 7, offset: 83472}, - val: "#", - ignoreCase: false, - want: "\"#\"", + &ruleRefExpr{ + pos: position{line: 2411, col: 39, offset: 79285}, + name: "SingleQuoteMarkedText", + }, + }, + }, + }, + { + name: "MarkedTextDelimiter", + pos: position{line: 2413, col: 1, offset: 79308}, + expr: &litMatcher{ + pos: position{line: 2413, col: 24, offset: 79331}, + val: "#", + ignoreCase: false, + want: "\"#\"", + }, + }, + { + name: "MarkedTextWord", + pos: position{line: 2415, col: 1, offset: 79336}, + expr: &actionExpr{ + pos: position{line: 2416, col: 5, offset: 79359}, + run: (*parser).callonMarkedTextWord1, + expr: &seqExpr{ + pos: position{line: 2416, col: 5, offset: 79359}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 2416, col: 5, offset: 79359}, + expr: &charClassMatcher{ + pos: position{line: 2416, col: 5, offset: 79359}, + val: "[\\pL0-9,?!;]", + chars: []rune{',', '?', '!', ';'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + &andExpr{ + pos: position{line: 2416, col: 19, offset: 79373}, + expr: &choiceExpr{ + pos: position{line: 2416, col: 21, offset: 79375}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2416, col: 21, offset: 79375}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 2416, col: 29, offset: 79383}, + name: "MarkedTextDelimiter", + }, }, - &actionExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - run: (*parser).callonSingleQuoteMarkedTextElement292, - expr: &oneOrMoreExpr{ - pos: position{line: 3033, col: 14, offset: 98401}, - expr: &charClassMatcher{ - pos: position{line: 3033, col: 14, offset: 98401}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + }, + }, + }, + }, + }, + }, + { + name: "DoubleQuoteMarkedTextDelimiter", + pos: position{line: 2423, col: 1, offset: 79583}, + expr: &litMatcher{ + pos: position{line: 2423, col: 35, offset: 79617}, + val: "##", + ignoreCase: false, + want: "\"##\"", + }, + }, + { + name: "DoubleQuoteMarkedText", + pos: position{line: 2425, col: 1, offset: 79623}, + expr: &actionExpr{ + pos: position{line: 2426, col: 5, offset: 79653}, + run: (*parser).callonDoubleQuoteMarkedText1, + expr: &seqExpr{ + pos: position{line: 2426, col: 5, offset: 79653}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2426, col: 5, offset: 79653}, + name: "DoubleQuoteMarkedTextDelimiter", + }, + &labeledExpr{ + pos: position{line: 2427, col: 5, offset: 79689}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2427, col: 15, offset: 79699}, + name: "DoubleQuoteMarkedTextElements", + }, + }, + &ruleRefExpr{ + pos: position{line: 2428, col: 5, offset: 79735}, + name: "DoubleQuoteMarkedTextDelimiter", + }, + }, + }, + }, + }, + { + name: "DoubleQuoteMarkedTextElements", + pos: position{line: 2432, col: 1, offset: 79862}, + expr: &zeroOrMoreExpr{ + pos: position{line: 2432, col: 34, offset: 79895}, + expr: &ruleRefExpr{ + pos: position{line: 2432, col: 34, offset: 79895}, + name: "DoubleQuoteMarkedTextElement", + }, + }, + }, + { + name: "DoubleQuoteMarkedTextElement", + pos: position{line: 2434, col: 1, offset: 79926}, + expr: &actionExpr{ + pos: position{line: 2435, col: 5, offset: 79995}, + run: (*parser).callonDoubleQuoteMarkedTextElement1, + expr: &seqExpr{ + pos: position{line: 2435, col: 5, offset: 79995}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2435, col: 5, offset: 79995}, + expr: &ruleRefExpr{ + pos: position{line: 2435, col: 6, offset: 79996}, + name: "DoubleQuoteMarkedTextDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 2436, col: 5, offset: 80031}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2437, col: 9, offset: 80049}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2437, col: 9, offset: 80049}, + name: "MarkedTextWord", + }, + &ruleRefExpr{ + pos: position{line: 2438, col: 11, offset: 80074}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 2439, col: 11, offset: 80124}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2439, col: 11, offset: 80124}, + name: "Newline", + }, + ¬Expr{ + pos: position{line: 2439, col: 19, offset: 80132}, + expr: &ruleRefExpr{ + pos: position{line: 2439, col: 20, offset: 80133}, + name: "Newline", + }, + }, }, }, + &ruleRefExpr{ + pos: position{line: 2440, col: 11, offset: 80185}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 2441, col: 11, offset: 80214}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2442, col: 11, offset: 80236}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2443, col: 11, offset: 80253}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2444, col: 11, offset: 80330}, + name: "QuotedTextInDoubleMarkedBoldText", + }, + &ruleRefExpr{ + pos: position{line: 2445, col: 11, offset: 80373}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2446, col: 11, offset: 80402}, + name: "DoubleQuoteMarkedTextFallbackCharacter", + }, }, }, }, @@ -63699,50 +12554,50 @@ var g = &grammar{ }, }, { - name: "QuotedTextInSingleQuoteMarkedText", - pos: position{line: 2519, col: 1, offset: 82736}, + name: "QuotedTextInDoubleMarkedBoldText", + pos: position{line: 2451, col: 1, offset: 80484}, expr: &choiceExpr{ - pos: position{line: 2521, col: 5, offset: 82800}, + pos: position{line: 2453, col: 5, offset: 80547}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2521, col: 5, offset: 82800}, - run: (*parser).callonQuotedTextInSingleQuoteMarkedText2, + pos: position{line: 2453, col: 5, offset: 80547}, + run: (*parser).callonQuotedTextInDoubleMarkedBoldText2, expr: &seqExpr{ - pos: position{line: 2521, col: 5, offset: 82800}, + pos: position{line: 2453, col: 5, offset: 80547}, exprs: []interface{}{ &andExpr{ - pos: position{line: 2521, col: 5, offset: 82800}, + pos: position{line: 2453, col: 5, offset: 80547}, expr: &litMatcher{ - pos: position{line: 2521, col: 7, offset: 82802}, + pos: position{line: 2453, col: 7, offset: 80549}, val: "\\", ignoreCase: false, want: "\"\\\\\"", }, }, &labeledExpr{ - pos: position{line: 2522, col: 5, offset: 82811}, + pos: position{line: 2454, col: 5, offset: 80558}, label: "element", expr: &choiceExpr{ - pos: position{line: 2523, col: 9, offset: 82829}, + pos: position{line: 2455, col: 9, offset: 80576}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2523, col: 9, offset: 82829}, + pos: position{line: 2455, col: 9, offset: 80576}, name: "EscapedBoldText", }, &ruleRefExpr{ - pos: position{line: 2524, col: 11, offset: 82856}, + pos: position{line: 2456, col: 11, offset: 80603}, name: "EscapedItalicText", }, &ruleRefExpr{ - pos: position{line: 2525, col: 11, offset: 82884}, + pos: position{line: 2457, col: 11, offset: 80631}, name: "EscapedMonospaceText", }, &ruleRefExpr{ - pos: position{line: 2526, col: 11, offset: 82915}, + pos: position{line: 2458, col: 11, offset: 80662}, name: "EscapedSubscriptText", }, &ruleRefExpr{ - pos: position{line: 2527, col: 11, offset: 82946}, + pos: position{line: 2459, col: 11, offset: 80693}, name: "EscapedSuperscriptText", }, }, @@ -63752,50 +12607,50 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2533, col: 5, offset: 83046}, - run: (*parser).callonQuotedTextInSingleQuoteMarkedText13, + pos: position{line: 2465, col: 5, offset: 80793}, + run: (*parser).callonQuotedTextInDoubleMarkedBoldText13, expr: &seqExpr{ - pos: position{line: 2533, col: 5, offset: 83046}, + pos: position{line: 2465, col: 5, offset: 80793}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2533, col: 5, offset: 83046}, + pos: position{line: 2465, col: 5, offset: 80793}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 2533, col: 16, offset: 83057}, + pos: position{line: 2465, col: 16, offset: 80804}, expr: &ruleRefExpr{ - pos: position{line: 2533, col: 17, offset: 83058}, + pos: position{line: 2465, col: 17, offset: 80805}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 2534, col: 5, offset: 83084}, + pos: position{line: 2466, col: 5, offset: 80831}, label: "text", expr: &choiceExpr{ - pos: position{line: 2535, col: 9, offset: 83099}, + pos: position{line: 2467, col: 9, offset: 80846}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2535, col: 9, offset: 83099}, - name: "DoubleQuoteMarkedText", + pos: position{line: 2467, col: 9, offset: 80846}, + name: "SingleQuoteMarkedText", }, &ruleRefExpr{ - pos: position{line: 2536, col: 11, offset: 83131}, + pos: position{line: 2468, col: 11, offset: 80878}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 2537, col: 11, offset: 83150}, + pos: position{line: 2469, col: 11, offset: 80897}, name: "ItalicText", }, &ruleRefExpr{ - pos: position{line: 2538, col: 11, offset: 83171}, + pos: position{line: 2470, col: 11, offset: 80918}, name: "MonospaceText", }, &ruleRefExpr{ - pos: position{line: 2539, col: 11, offset: 83195}, + pos: position{line: 2471, col: 11, offset: 80942}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 2540, col: 11, offset: 83219}, + pos: position{line: 2472, col: 11, offset: 80966}, name: "SuperscriptText", }, }, @@ -63808,61 +12663,370 @@ var g = &grammar{ }, }, { - name: "EscapedMarkedText", - pos: position{line: 2550, col: 1, offset: 83647}, + name: "DoubleQuoteMarkedTextFallbackCharacter", + pos: position{line: 2476, col: 1, offset: 81068}, expr: &choiceExpr{ - pos: position{line: 2552, col: 5, offset: 83711}, + pos: position{line: 2477, col: 5, offset: 81114}, alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 2477, col: 5, offset: 81114}, + val: "[^\\r\\n#]", + chars: []rune{'\r', '\n', '#'}, + ignoreCase: false, + inverted: true, + }, &actionExpr{ - pos: position{line: 2552, col: 5, offset: 83711}, - run: (*parser).callonEscapedMarkedText2, + pos: position{line: 2478, col: 7, offset: 81213}, + run: (*parser).callonDoubleQuoteMarkedTextFallbackCharacter3, expr: &seqExpr{ - pos: position{line: 2552, col: 5, offset: 83711}, + pos: position{line: 2478, col: 7, offset: 81213}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2552, col: 5, offset: 83711}, - label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - run: (*parser).callonEscapedMarkedText5, - expr: &seqExpr{ - pos: position{line: 1954, col: 25, offset: 64010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1954, col: 25, offset: 64010}, - val: "\\\\", - ignoreCase: false, - want: "\"\\\\\\\\\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1954, col: 30, offset: 64015}, - expr: &litMatcher{ - pos: position{line: 1954, col: 30, offset: 64015}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2478, col: 7, offset: 81213}, + name: "DoubleQuoteMarkedTextDelimiter", }, - &litMatcher{ - pos: position{line: 2552, col: 40, offset: 83746}, - val: "##", - ignoreCase: false, + &ruleRefExpr{ + pos: position{line: 2478, col: 38, offset: 81244}, + name: "Alphanums", + }, + }, + }, + }, + }, + }, + }, + { + name: "SingleQuoteMarkedTextStartDelimiter", + pos: position{line: 2485, col: 1, offset: 81533}, + expr: &litMatcher{ + pos: position{line: 2485, col: 40, offset: 81572}, + val: "#", + ignoreCase: false, + want: "\"#\"", + }, + }, + { + name: "SingleQuoteMarkedTextEndDelimiter", + pos: position{line: 2487, col: 1, offset: 81577}, + expr: &litMatcher{ + pos: position{line: 2487, col: 38, offset: 81614}, + val: "#", + ignoreCase: false, + want: "\"#\"", + }, + }, + { + name: "SingleQuoteMarkedText", + pos: position{line: 2489, col: 1, offset: 81620}, + expr: &actionExpr{ + pos: position{line: 2490, col: 5, offset: 81650}, + run: (*parser).callonSingleQuoteMarkedText1, + expr: &seqExpr{ + pos: position{line: 2490, col: 5, offset: 81650}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2490, col: 5, offset: 81650}, + name: "SingleQuoteMarkedTextStartDelimiter", + }, + &labeledExpr{ + pos: position{line: 2491, col: 5, offset: 81690}, + label: "elements", + expr: &ruleRefExpr{ + pos: position{line: 2491, col: 15, offset: 81700}, + name: "SingleQuoteMarkedTextElements", + }, + }, + &ruleRefExpr{ + pos: position{line: 2492, col: 5, offset: 81736}, + name: "SingleQuoteMarkedTextEndDelimiter", + }, + }, + }, + }, + }, + { + name: "SingleQuoteMarkedTextElements", + pos: position{line: 2496, col: 1, offset: 81867}, + expr: &actionExpr{ + pos: position{line: 2497, col: 5, offset: 81905}, + run: (*parser).callonSingleQuoteMarkedTextElements1, + expr: &seqExpr{ + pos: position{line: 2497, col: 5, offset: 81905}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2497, col: 5, offset: 81905}, + expr: &ruleRefExpr{ + pos: position{line: 2497, col: 6, offset: 81906}, + name: "EOF", + }, + }, + ¬Expr{ + pos: position{line: 2497, col: 10, offset: 81910}, + expr: &ruleRefExpr{ + pos: position{line: 2497, col: 11, offset: 81911}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 2498, col: 5, offset: 81949}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 2498, col: 14, offset: 81958}, + expr: &ruleRefExpr{ + pos: position{line: 2498, col: 15, offset: 81959}, + name: "SingleQuoteMarkedTextElement", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 2499, col: 5, offset: 81995}, + run: (*parser).callonSingleQuoteMarkedTextElements10, + }, + }, + }, + }, + }, + { + name: "SingleQuoteMarkedTextElement", + pos: position{line: 2505, col: 1, offset: 82136}, + expr: &choiceExpr{ + pos: position{line: 2506, col: 5, offset: 82173}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2506, col: 5, offset: 82173}, + name: "MarkedTextWord", + }, + &ruleRefExpr{ + pos: position{line: 2507, col: 7, offset: 82194}, + name: "Spaces", + }, + &seqExpr{ + pos: position{line: 2508, col: 7, offset: 82207}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2508, col: 7, offset: 82207}, + name: "Newline", + }, + ¬Expr{ + pos: position{line: 2508, col: 15, offset: 82215}, + expr: &ruleRefExpr{ + pos: position{line: 2508, col: 16, offset: 82216}, + name: "Newline", + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2509, col: 7, offset: 82264}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 2510, col: 7, offset: 82289}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2511, col: 7, offset: 82307}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2512, col: 7, offset: 82320}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2513, col: 7, offset: 82393}, + name: "QuotedTextInSingleQuoteMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2514, col: 7, offset: 82433}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2515, col: 7, offset: 82458}, + name: "SingleQuoteMarkedTextFallbackCharacter", + }, + }, + }, + }, + { + name: "QuotedTextInSingleQuoteMarkedText", + pos: position{line: 2517, col: 1, offset: 82498}, + expr: &choiceExpr{ + pos: position{line: 2519, col: 5, offset: 82562}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2519, col: 5, offset: 82562}, + run: (*parser).callonQuotedTextInSingleQuoteMarkedText2, + expr: &seqExpr{ + pos: position{line: 2519, col: 5, offset: 82562}, + exprs: []interface{}{ + &andExpr{ + pos: position{line: 2519, col: 5, offset: 82562}, + expr: &litMatcher{ + pos: position{line: 2519, col: 7, offset: 82564}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + &labeledExpr{ + pos: position{line: 2520, col: 5, offset: 82573}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2521, col: 9, offset: 82591}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2521, col: 9, offset: 82591}, + name: "EscapedBoldText", + }, + &ruleRefExpr{ + pos: position{line: 2522, col: 11, offset: 82618}, + name: "EscapedItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2523, col: 11, offset: 82646}, + name: "EscapedMonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2524, col: 11, offset: 82677}, + name: "EscapedSubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2525, col: 11, offset: 82708}, + name: "EscapedSuperscriptText", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2531, col: 5, offset: 82808}, + run: (*parser).callonQuotedTextInSingleQuoteMarkedText13, + expr: &seqExpr{ + pos: position{line: 2531, col: 5, offset: 82808}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2531, col: 5, offset: 82808}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 2531, col: 16, offset: 82819}, + expr: &ruleRefExpr{ + pos: position{line: 2531, col: 17, offset: 82820}, + name: "LongHandAttributes", + }, + }, + }, + &labeledExpr{ + pos: position{line: 2532, col: 5, offset: 82846}, + label: "text", + expr: &choiceExpr{ + pos: position{line: 2533, col: 9, offset: 82861}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2533, col: 9, offset: 82861}, + name: "DoubleQuoteMarkedText", + }, + &ruleRefExpr{ + pos: position{line: 2534, col: 11, offset: 82893}, + name: "BoldText", + }, + &ruleRefExpr{ + pos: position{line: 2535, col: 11, offset: 82912}, + name: "ItalicText", + }, + &ruleRefExpr{ + pos: position{line: 2536, col: 11, offset: 82933}, + name: "MonospaceText", + }, + &ruleRefExpr{ + pos: position{line: 2537, col: 11, offset: 82957}, + name: "SubscriptText", + }, + &ruleRefExpr{ + pos: position{line: 2538, col: 11, offset: 82981}, + name: "SuperscriptText", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "SingleQuoteMarkedTextFallbackCharacter", + pos: position{line: 2542, col: 1, offset: 83083}, + expr: &choiceExpr{ + pos: position{line: 2543, col: 5, offset: 83129}, + alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 2543, col: 5, offset: 83129}, + val: "[^\\r\\n #]", + chars: []rune{'\r', '\n', ' ', '#'}, + ignoreCase: false, + inverted: true, + }, + &actionExpr{ + pos: position{line: 2544, col: 7, offset: 83234}, + run: (*parser).callonSingleQuoteMarkedTextFallbackCharacter3, + expr: &seqExpr{ + pos: position{line: 2544, col: 7, offset: 83234}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2544, col: 7, offset: 83234}, + val: "#", + ignoreCase: false, + want: "\"#\"", + }, + &ruleRefExpr{ + pos: position{line: 2544, col: 11, offset: 83238}, + name: "Alphanums", + }, + }, + }, + }, + }, + }, + }, + { + name: "EscapedMarkedText", + pos: position{line: 2548, col: 1, offset: 83409}, + expr: &choiceExpr{ + pos: position{line: 2550, col: 5, offset: 83473}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2550, col: 5, offset: 83473}, + run: (*parser).callonEscapedMarkedText2, + expr: &seqExpr{ + pos: position{line: 2550, col: 5, offset: 83473}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2550, col: 5, offset: 83473}, + label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2550, col: 18, offset: 83486}, + name: "TwoOrMoreBackslashes", + }, + }, + &litMatcher{ + pos: position{line: 2550, col: 40, offset: 83508}, + val: "##", + ignoreCase: false, want: "\"##\"", }, &labeledExpr{ - pos: position{line: 2552, col: 45, offset: 83751}, + pos: position{line: 2550, col: 45, offset: 83513}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2552, col: 55, offset: 83761}, + pos: position{line: 2550, col: 55, offset: 83523}, name: "DoubleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2552, col: 86, offset: 83792}, + pos: position{line: 2550, col: 86, offset: 83554}, val: "##", ignoreCase: false, want: "\"##\"", @@ -63871,44 +13035,35 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2556, col: 7, offset: 83957}, - run: (*parser).callonEscapedMarkedText14, + pos: position{line: 2554, col: 7, offset: 83719}, + run: (*parser).callonEscapedMarkedText10, expr: &seqExpr{ - pos: position{line: 2556, col: 7, offset: 83957}, + pos: position{line: 2554, col: 7, offset: 83719}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2556, col: 7, offset: 83957}, + pos: position{line: 2554, col: 7, offset: 83719}, label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedMarkedText17, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, + expr: &ruleRefExpr{ + pos: position{line: 2554, col: 20, offset: 83732}, + name: "OneOrMoreBackslashes", }, }, &litMatcher{ - pos: position{line: 2556, col: 42, offset: 83992}, + pos: position{line: 2554, col: 42, offset: 83754}, val: "##", ignoreCase: false, want: "\"##\"", }, &labeledExpr{ - pos: position{line: 2556, col: 47, offset: 83997}, + pos: position{line: 2554, col: 47, offset: 83759}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2556, col: 57, offset: 84007}, + pos: position{line: 2554, col: 57, offset: 83769}, name: "SingleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2556, col: 88, offset: 84038}, + pos: position{line: 2554, col: 88, offset: 83800}, val: "#", ignoreCase: false, want: "\"#\"", @@ -63917,44 +13072,35 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2561, col: 7, offset: 84241}, - run: (*parser).callonEscapedMarkedText24, + pos: position{line: 2559, col: 7, offset: 84003}, + run: (*parser).callonEscapedMarkedText18, expr: &seqExpr{ - pos: position{line: 2561, col: 7, offset: 84241}, + pos: position{line: 2559, col: 7, offset: 84003}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2561, col: 7, offset: 84241}, + pos: position{line: 2559, col: 7, offset: 84003}, label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedMarkedText27, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, + expr: &ruleRefExpr{ + pos: position{line: 2559, col: 20, offset: 84016}, + name: "OneOrMoreBackslashes", }, }, &litMatcher{ - pos: position{line: 2561, col: 42, offset: 84276}, + pos: position{line: 2559, col: 42, offset: 84038}, val: "#", ignoreCase: false, want: "\"#\"", }, &labeledExpr{ - pos: position{line: 2561, col: 46, offset: 84280}, + pos: position{line: 2559, col: 46, offset: 84042}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2561, col: 56, offset: 84290}, + pos: position{line: 2559, col: 56, offset: 84052}, name: "SingleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2561, col: 87, offset: 84321}, + pos: position{line: 2559, col: 87, offset: 84083}, val: "#", ignoreCase: false, want: "\"#\"", @@ -63967,109 +13113,110 @@ var g = &grammar{ }, { name: "SubscriptText", - pos: position{line: 2568, col: 1, offset: 84588}, + pos: position{line: 2566, col: 1, offset: 84350}, expr: &actionExpr{ - pos: position{line: 2569, col: 5, offset: 84610}, + pos: position{line: 2567, col: 5, offset: 84372}, run: (*parser).callonSubscriptText1, expr: &seqExpr{ - pos: position{line: 2569, col: 5, offset: 84610}, + pos: position{line: 2567, col: 5, offset: 84372}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2575, col: 27, offset: 84825}, - val: "~", - ignoreCase: false, - want: "\"~\"", + &ruleRefExpr{ + pos: position{line: 2567, col: 5, offset: 84372}, + name: "SubscriptTextDelimiter", }, &labeledExpr{ - pos: position{line: 2570, col: 5, offset: 84637}, + pos: position{line: 2568, col: 5, offset: 84399}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2570, col: 14, offset: 84646}, + pos: position{line: 2568, col: 14, offset: 84408}, name: "SubscriptTextElement", }, }, - &litMatcher{ - pos: position{line: 2575, col: 27, offset: 84825}, - val: "~", - ignoreCase: false, - want: "\"~\"", + &ruleRefExpr{ + pos: position{line: 2569, col: 5, offset: 84434}, + name: "SubscriptTextDelimiter", }, }, }, }, }, + { + name: "SubscriptTextDelimiter", + pos: position{line: 2573, col: 1, offset: 84561}, + expr: &litMatcher{ + pos: position{line: 2573, col: 27, offset: 84587}, + val: "~", + ignoreCase: false, + want: "\"~\"", + }, + }, { name: "SubscriptTextElement", - pos: position{line: 2577, col: 1, offset: 84830}, + pos: position{line: 2575, col: 1, offset: 84592}, expr: &choiceExpr{ - pos: position{line: 2577, col: 25, offset: 84854}, + pos: position{line: 2575, col: 25, offset: 84616}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2577, col: 25, offset: 84854}, + pos: position{line: 2575, col: 25, offset: 84616}, name: "QuotedText", }, - &actionExpr{ - pos: position{line: 2579, col: 21, offset: 84906}, - run: (*parser).callonSubscriptTextElement3, - expr: &oneOrMoreExpr{ - pos: position{line: 2579, col: 21, offset: 84906}, - expr: &charClassMatcher{ - pos: position{line: 2579, col: 21, offset: 84906}, - val: "[^\\r\\n ~]", - chars: []rune{'\r', '\n', ' ', '~'}, - ignoreCase: false, - inverted: true, - }, - }, + &ruleRefExpr{ + pos: position{line: 2575, col: 38, offset: 84629}, + name: "NonSubscriptText", + }, + }, + }, + }, + { + name: "NonSubscriptText", + pos: position{line: 2577, col: 1, offset: 84648}, + expr: &actionExpr{ + pos: position{line: 2577, col: 21, offset: 84668}, + run: (*parser).callonNonSubscriptText1, + expr: &oneOrMoreExpr{ + pos: position{line: 2577, col: 21, offset: 84668}, + expr: &charClassMatcher{ + pos: position{line: 2577, col: 21, offset: 84668}, + val: "[^\\r\\n ~]", + chars: []rune{'\r', '\n', ' ', '~'}, + ignoreCase: false, + inverted: true, }, }, }, }, { name: "EscapedSubscriptText", - pos: position{line: 2583, col: 1, offset: 84991}, + pos: position{line: 2581, col: 1, offset: 84753}, expr: &actionExpr{ - pos: position{line: 2585, col: 5, offset: 85058}, + pos: position{line: 2583, col: 5, offset: 84820}, run: (*parser).callonEscapedSubscriptText1, expr: &seqExpr{ - pos: position{line: 2585, col: 5, offset: 85058}, + pos: position{line: 2583, col: 5, offset: 84820}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2585, col: 5, offset: 85058}, + pos: position{line: 2583, col: 5, offset: 84820}, label: "backslashes", - expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedSubscriptText4, - expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, + expr: &ruleRefExpr{ + pos: position{line: 2583, col: 18, offset: 84833}, + name: "OneOrMoreBackslashes", }, }, - &litMatcher{ - pos: position{line: 2575, col: 27, offset: 84825}, - val: "~", - ignoreCase: false, - want: "\"~\"", + &ruleRefExpr{ + pos: position{line: 2584, col: 5, offset: 84860}, + name: "SubscriptTextDelimiter", }, &labeledExpr{ - pos: position{line: 2587, col: 5, offset: 85126}, + pos: position{line: 2585, col: 5, offset: 84888}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2587, col: 14, offset: 85135}, + pos: position{line: 2585, col: 14, offset: 84897}, name: "SubscriptTextElement", }, }, - &litMatcher{ - pos: position{line: 2575, col: 27, offset: 84825}, - val: "~", - ignoreCase: false, - want: "\"~\"", + &ruleRefExpr{ + pos: position{line: 2586, col: 5, offset: 84923}, + name: "SubscriptTextDelimiter", }, }, }, @@ -64077,1772 +13224,275 @@ var g = &grammar{ }, { name: "SuperscriptText", - pos: position{line: 2595, col: 1, offset: 85398}, + pos: position{line: 2593, col: 1, offset: 85160}, expr: &actionExpr{ - pos: position{line: 2596, col: 5, offset: 85422}, + pos: position{line: 2594, col: 5, offset: 85184}, run: (*parser).callonSuperscriptText1, expr: &seqExpr{ - pos: position{line: 2596, col: 5, offset: 85422}, + pos: position{line: 2594, col: 5, offset: 85184}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2602, col: 29, offset: 85649}, - val: "^", - ignoreCase: false, - want: "\"^\"", + &ruleRefExpr{ + pos: position{line: 2594, col: 5, offset: 85184}, + name: "SuperscriptTextDelimiter", }, &labeledExpr{ - pos: position{line: 2597, col: 5, offset: 85452}, + pos: position{line: 2595, col: 5, offset: 85214}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2597, col: 14, offset: 85461}, + pos: position{line: 2595, col: 14, offset: 85223}, name: "SuperscriptTextElement", }, }, - &litMatcher{ - pos: position{line: 2602, col: 29, offset: 85649}, - val: "^", - ignoreCase: false, - want: "\"^\"", + &ruleRefExpr{ + pos: position{line: 2596, col: 5, offset: 85252}, + name: "SuperscriptTextDelimiter", }, }, }, }, }, + { + name: "SuperscriptTextDelimiter", + pos: position{line: 2600, col: 1, offset: 85383}, + expr: &litMatcher{ + pos: position{line: 2600, col: 29, offset: 85411}, + val: "^", + ignoreCase: false, + want: "\"^\"", + }, + }, { name: "SuperscriptTextElement", - pos: position{line: 2604, col: 1, offset: 85654}, + pos: position{line: 2602, col: 1, offset: 85416}, expr: &choiceExpr{ - pos: position{line: 2604, col: 27, offset: 85680}, + pos: position{line: 2602, col: 27, offset: 85442}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2604, col: 27, offset: 85680}, + pos: position{line: 2602, col: 27, offset: 85442}, name: "QuotedText", }, - &actionExpr{ - pos: position{line: 2606, col: 23, offset: 85736}, - run: (*parser).callonSuperscriptTextElement3, - expr: &oneOrMoreExpr{ - pos: position{line: 2606, col: 23, offset: 85736}, - expr: &charClassMatcher{ - pos: position{line: 2606, col: 23, offset: 85736}, - val: "[^\\r\\n ^]", - chars: []rune{'\r', '\n', ' ', '^'}, - ignoreCase: false, - inverted: true, - }, - }, + &ruleRefExpr{ + pos: position{line: 2602, col: 40, offset: 85455}, + name: "NonSuperscriptText", + }, + }, + }, + }, + { + name: "NonSuperscriptText", + pos: position{line: 2604, col: 1, offset: 85476}, + expr: &actionExpr{ + pos: position{line: 2604, col: 23, offset: 85498}, + run: (*parser).callonNonSuperscriptText1, + expr: &oneOrMoreExpr{ + pos: position{line: 2604, col: 23, offset: 85498}, + expr: &charClassMatcher{ + pos: position{line: 2604, col: 23, offset: 85498}, + val: "[^\\r\\n ^]", + chars: []rune{'\r', '\n', ' ', '^'}, + ignoreCase: false, + inverted: true, }, }, }, }, { name: "EscapedSuperscriptText", - pos: position{line: 2610, col: 1, offset: 85821}, + pos: position{line: 2608, col: 1, offset: 85583}, expr: &actionExpr{ - pos: position{line: 2612, col: 5, offset: 85893}, + pos: position{line: 2610, col: 5, offset: 85655}, run: (*parser).callonEscapedSuperscriptText1, expr: &seqExpr{ - pos: position{line: 2612, col: 5, offset: 85893}, + pos: position{line: 2610, col: 5, offset: 85655}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2612, col: 5, offset: 85893}, + pos: position{line: 2610, col: 5, offset: 85655}, label: "backslashes", + expr: &ruleRefExpr{ + pos: position{line: 2610, col: 18, offset: 85668}, + name: "OneOrMoreBackslashes", + }, + }, + &ruleRefExpr{ + pos: position{line: 2611, col: 5, offset: 85695}, + name: "SuperscriptTextDelimiter", + }, + &labeledExpr{ + pos: position{line: 2612, col: 5, offset: 85725}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 2612, col: 14, offset: 85734}, + name: "SuperscriptTextElement", + }, + }, + &ruleRefExpr{ + pos: position{line: 2613, col: 5, offset: 85763}, + name: "SuperscriptTextDelimiter", + }, + }, + }, + }, + }, + { + name: "Section", + pos: position{line: 2621, col: 1, offset: 86203}, + expr: &actionExpr{ + pos: position{line: 2622, col: 5, offset: 86219}, + run: (*parser).callonSection1, + expr: &seqExpr{ + pos: position{line: 2622, col: 5, offset: 86219}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 2622, col: 5, offset: 86219}, + run: (*parser).callonSection3, + }, + &labeledExpr{ + pos: position{line: 2625, col: 5, offset: 86282}, + label: "level", expr: &actionExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, - run: (*parser).callonEscapedSuperscriptText4, + pos: position{line: 2625, col: 12, offset: 86289}, + run: (*parser).callonSection5, expr: &oneOrMoreExpr{ - pos: position{line: 1950, col: 25, offset: 63937}, + pos: position{line: 2625, col: 12, offset: 86289}, expr: &litMatcher{ - pos: position{line: 1950, col: 25, offset: 63937}, - val: "\\", + pos: position{line: 2625, col: 13, offset: 86290}, + val: "=", ignoreCase: false, - want: "\"\\\\\"", + want: "\"=\"", }, }, }, }, - &litMatcher{ - pos: position{line: 2602, col: 29, offset: 85649}, - val: "^", - ignoreCase: false, - want: "\"^\"", + &andCodeExpr{ + pos: position{line: 2629, col: 5, offset: 86398}, + run: (*parser).callonSection8, + }, + &ruleRefExpr{ + pos: position{line: 2633, col: 5, offset: 86550}, + name: "Spaces", }, &labeledExpr{ - pos: position{line: 2614, col: 5, offset: 85963}, - label: "element", + pos: position{line: 2633, col: 12, offset: 86557}, + label: "title", expr: &ruleRefExpr{ - pos: position{line: 2614, col: 14, offset: 85972}, - name: "SuperscriptTextElement", + pos: position{line: 2633, col: 19, offset: 86564}, + name: "SectionTitle", }, }, - &litMatcher{ - pos: position{line: 2602, col: 29, offset: 85649}, - val: "^", - ignoreCase: false, - want: "\"^\"", + &ruleRefExpr{ + pos: position{line: 2633, col: 33, offset: 86578}, + name: "EOL", }, }, }, }, }, + { + name: "SectionTitle", + pos: position{line: 2637, col: 1, offset: 86660}, + expr: &actionExpr{ + pos: position{line: 2637, col: 17, offset: 86676}, + run: (*parser).callonSectionTitle1, + expr: &oneOrMoreExpr{ + pos: position{line: 2637, col: 17, offset: 86676}, + expr: &charClassMatcher{ + pos: position{line: 2637, col: 17, offset: 86676}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, { name: "Substitutions", - pos: position{line: 2649, col: 1, offset: 87291}, + pos: position{line: 2647, col: 1, offset: 87053}, expr: &actionExpr{ - pos: position{line: 2650, col: 5, offset: 87345}, + pos: position{line: 2648, col: 5, offset: 87107}, run: (*parser).callonSubstitutions1, expr: &seqExpr{ - pos: position{line: 2650, col: 5, offset: 87345}, + pos: position{line: 2648, col: 5, offset: 87107}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2650, col: 5, offset: 87345}, + pos: position{line: 2648, col: 5, offset: 87107}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2650, col: 14, offset: 87354}, + pos: position{line: 2648, col: 14, offset: 87116}, expr: &actionExpr{ - pos: position{line: 2651, col: 9, offset: 87364}, + pos: position{line: 2649, col: 9, offset: 87126}, run: (*parser).callonSubstitutions5, expr: &seqExpr{ - pos: position{line: 2651, col: 9, offset: 87364}, + pos: position{line: 2649, col: 9, offset: 87126}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2651, col: 9, offset: 87364}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + pos: position{line: 2649, col: 9, offset: 87126}, + expr: &ruleRefExpr{ + pos: position{line: 2649, col: 10, offset: 87127}, + name: "EOF", }, }, &labeledExpr{ - pos: position{line: 2652, col: 9, offset: 87377}, + pos: position{line: 2650, col: 9, offset: 87139}, label: "element", expr: &choiceExpr{ - pos: position{line: 2653, col: 13, offset: 87399}, + pos: position{line: 2651, col: 13, offset: 87161}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3048, col: 5, offset: 99000}, - run: (*parser).callonSubstitutions12, - expr: &seqExpr{ - pos: position{line: 3048, col: 5, offset: 99000}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3048, col: 5, offset: 99000}, - expr: &charClassMatcher{ - pos: position{line: 3048, col: 5, offset: 99000}, - val: "[,;!?0-9\\pL]", - chars: []rune{',', ';', '!', '?'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &choiceExpr{ - pos: position{line: 3049, col: 6, offset: 99050}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSubstitutions17, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3049, col: 14, offset: 99058}, - expr: &choiceExpr{ - pos: position{line: 3049, col: 16, offset: 99060}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3049, col: 16, offset: 99060}, - val: "[.�]", - chars: []rune{'.', '�'}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions22, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2651, col: 13, offset: 87161}, + name: "InlineWord", }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSubstitutions29, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &ruleRefExpr{ + pos: position{line: 2652, col: 15, offset: 87186}, + name: "Space", }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions31, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2653, col: 15, offset: 87206}, + name: "Newline", }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonSubstitutions36, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonSubstitutions40, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2654, col: 15, offset: 87228}, + name: "ElementPlaceHolder", }, - &actionExpr{ - pos: position{line: 1227, col: 5, offset: 38587}, - run: (*parser).callonSubstitutions44, - expr: &seqExpr{ - pos: position{line: 1227, col: 5, offset: 38587}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1227, col: 5, offset: 38587}, - run: (*parser).callonSubstitutions46, - }, - &litMatcher{ - pos: position{line: 1230, col: 5, offset: 38689}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1230, col: 9, offset: 38693}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSubstitutions49, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andExpr{ - pos: position{line: 1230, col: 16, offset: 38700}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions53, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2655, col: 15, offset: 87349}, + name: "LineBreak", }, - &actionExpr{ - pos: position{line: 3054, col: 16, offset: 99234}, - run: (*parser).callonSubstitutions60, - expr: &seqExpr{ - pos: position{line: 3054, col: 16, offset: 99234}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 3054, col: 16, offset: 99234}, - label: "char", - expr: &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonSubstitutions63, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andExpr{ - pos: position{line: 3054, col: 44, offset: 99262}, - expr: &choiceExpr{ - pos: position{line: 3054, col: 46, offset: 99264}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSubstitutions67, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions69, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2656, col: 15, offset: 87374}, + name: "Punctuation", }, &ruleRefExpr{ - pos: position{line: 2659, col: 15, offset: 87638}, + pos: position{line: 2657, col: 15, offset: 87400}, name: "Quote", }, &ruleRefExpr{ - pos: position{line: 2660, col: 15, offset: 87658}, + pos: position{line: 2658, col: 15, offset: 87420}, name: "InlinePassthrough", }, &ruleRefExpr{ - pos: position{line: 2661, col: 15, offset: 87690}, + pos: position{line: 2659, col: 15, offset: 87452}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 2662, col: 15, offset: 87779}, + pos: position{line: 2660, col: 15, offset: 87541}, name: "Callout", }, - &actionExpr{ - pos: position{line: 2742, col: 5, offset: 89990}, - run: (*parser).callonSubstitutions80, - expr: &seqExpr{ - pos: position{line: 2742, col: 5, offset: 89990}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2742, col: 5, offset: 89990}, - run: (*parser).callonSubstitutions82, - }, - &labeledExpr{ - pos: position{line: 2745, col: 5, offset: 90061}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonSubstitutions85, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSubstitutions89, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSubstitutions91, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSubstitutions93, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSubstitutions95, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSubstitutions97, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSubstitutions99, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSubstitutions101, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSubstitutions103, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSubstitutions105, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSubstitutions107, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSubstitutions109, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSubstitutions112, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions116, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSubstitutions123, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSubstitutions125, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions130, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSubstitutions137, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSubstitutions139, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSubstitutions141, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonSubstitutions143, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonSubstitutions145, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonSubstitutions147, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonSubstitutions149, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonSubstitutions151, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonSubstitutions153, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonSubstitutions155, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonSubstitutions157, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSubstitutions159, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonSubstitutions161, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSubstitutions164, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions168, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSubstitutions175, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonSubstitutions177, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonSubstitutions182, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonSubstitutions189, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonSubstitutions191, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonSubstitutions193, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonSubstitutions195, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonSubstitutions197, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonSubstitutions203, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2661, col: 15, offset: 87605}, + name: "Replacement", }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSubstitutions209, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonSubstitutions211, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonSubstitutions214, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonSubstitutions216, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSubstitutions220, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonSubstitutions224, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonSubstitutions230, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSubstitutions235, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSubstitutions239, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSubstitutions245, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSubstitutions249, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonSubstitutions255, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonSubstitutions258, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonSubstitutions262, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonSubstitutions266, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2662, col: 15, offset: 87631}, + name: "SpecialCharacter", }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSubstitutions268, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonSubstitutions270, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonSubstitutions273, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSubstitutions277, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSubstitutions284, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSubstitutions289, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSubstitutions291, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonSubstitutions295, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSubstitutions299, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonSubstitutions306, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonSubstitutions311, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonSubstitutions313, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonSubstitutions317, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSubstitutions321, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonSubstitutions327, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonSubstitutions331, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2663, col: 15, offset: 87712}, + name: "AttributeReference", }, - &actionExpr{ - pos: position{line: 3067, col: 12, offset: 99599}, - run: (*parser).callonSubstitutions337, - expr: &anyMatcher{ - line: 3067, col: 12, offset: 99599, - }, + &ruleRefExpr{ + pos: position{line: 2664, col: 15, offset: 87745}, + name: "AnyChar", }, }, }, @@ -65852,41 +13502,98 @@ var g = &grammar{ }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &ruleRefExpr{ + pos: position{line: 2668, col: 12, offset: 87856}, + name: "EOF", + }, + }, + }, + }, + }, + { + name: "AttributeStructuredValue", + pos: position{line: 2673, col: 1, offset: 88023}, + expr: &actionExpr{ + pos: position{line: 2674, col: 5, offset: 88056}, + run: (*parser).callonAttributeStructuredValue1, + expr: &seqExpr{ + pos: position{line: 2674, col: 5, offset: 88056}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2674, col: 5, offset: 88056}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 2674, col: 14, offset: 88065}, + expr: &choiceExpr{ + pos: position{line: 2675, col: 9, offset: 88075}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2675, col: 9, offset: 88075}, + name: "InlineMacro", + }, + &ruleRefExpr{ + pos: position{line: 2676, col: 11, offset: 88097}, + name: "Quote", + }, + &ruleRefExpr{ + pos: position{line: 2677, col: 11, offset: 88113}, + name: "Word", + }, + &ruleRefExpr{ + pos: position{line: 2678, col: 11, offset: 88128}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 2679, col: 11, offset: 88144}, + name: "SpecialCharacter", + }, + &ruleRefExpr{ + pos: position{line: 2680, col: 11, offset: 88171}, + name: "Symbol", + }, + &ruleRefExpr{ + pos: position{line: 2681, col: 11, offset: 88188}, + name: "ElementPlaceHolder", + }, + &ruleRefExpr{ + pos: position{line: 2682, col: 11, offset: 88217}, + name: "AnyChar", + }, + }, + }, }, }, + &ruleRefExpr{ + pos: position{line: 2683, col: 8, offset: 88232}, + name: "EOF", + }, }, }, }, }, { name: "HeaderGroup", - pos: position{line: 2675, col: 1, offset: 88208}, + pos: position{line: 2689, col: 1, offset: 88340}, expr: &actionExpr{ - pos: position{line: 2676, col: 5, offset: 88228}, + pos: position{line: 2690, col: 5, offset: 88360}, run: (*parser).callonHeaderGroup1, expr: &seqExpr{ - pos: position{line: 2676, col: 5, offset: 88228}, + pos: position{line: 2690, col: 5, offset: 88360}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2676, col: 5, offset: 88228}, + pos: position{line: 2690, col: 5, offset: 88360}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2676, col: 14, offset: 88237}, + pos: position{line: 2690, col: 14, offset: 88369}, expr: &ruleRefExpr{ - pos: position{line: 2676, col: 15, offset: 88238}, + pos: position{line: 2690, col: 15, offset: 88370}, name: "HeaderGroupElement", }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + &ruleRefExpr{ + pos: position{line: 2690, col: 36, offset: 88391}, + name: "EOF", }, }, }, @@ -65894,2066 +13601,115 @@ var g = &grammar{ }, { name: "HeaderGroupElement", - pos: position{line: 2680, col: 1, offset: 88322}, + pos: position{line: 2694, col: 1, offset: 88454}, expr: &actionExpr{ - pos: position{line: 2681, col: 5, offset: 88348}, + pos: position{line: 2695, col: 5, offset: 88480}, run: (*parser).callonHeaderGroupElement1, expr: &seqExpr{ - pos: position{line: 2681, col: 5, offset: 88348}, + pos: position{line: 2695, col: 5, offset: 88480}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2681, col: 5, offset: 88348}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + pos: position{line: 2695, col: 5, offset: 88480}, + expr: &ruleRefExpr{ + pos: position{line: 2695, col: 6, offset: 88481}, + name: "EOF", }, }, &labeledExpr{ - pos: position{line: 2682, col: 5, offset: 88357}, + pos: position{line: 2696, col: 5, offset: 88489}, label: "element", expr: &choiceExpr{ - pos: position{line: 2683, col: 9, offset: 88375}, + pos: position{line: 2697, col: 9, offset: 88507}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - run: (*parser).callonHeaderGroupElement8, - expr: &seqExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3041, col: 5, offset: 98782}, - expr: &charClassMatcher{ - pos: position{line: 3041, col: 5, offset: 98782}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3041, col: 15, offset: 98792}, - expr: &choiceExpr{ - pos: position{line: 3041, col: 17, offset: 98794}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3041, col: 17, offset: 98794}, - val: "[\\r\\n ,]]", - chars: []rune{'\r', '\n', ' ', ',', ']'}, - ignoreCase: false, - inverted: false, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - run: (*parser).callonHeaderGroupElement17, - expr: &seqExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 3043, col: 9, offset: 98876}, - expr: &charClassMatcher{ - pos: position{line: 3043, col: 9, offset: 98876}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3043, col: 19, offset: 98886}, - expr: &seqExpr{ - pos: position{line: 3043, col: 20, offset: 98887}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3043, col: 20, offset: 98887}, - val: "[=*_`]", - chars: []rune{'=', '*', '_', '`'}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 3043, col: 27, offset: 98894}, - expr: &charClassMatcher{ - pos: position{line: 3043, col: 27, offset: 98894}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2697, col: 9, offset: 88507}, + name: "Word", }, &actionExpr{ - pos: position{line: 2684, col: 12, offset: 88391}, - run: (*parser).callonHeaderGroupElement26, + pos: position{line: 2698, col: 12, offset: 88523}, + run: (*parser).callonHeaderGroupElement8, expr: &seqExpr{ - pos: position{line: 2684, col: 12, offset: 88391}, + pos: position{line: 2698, col: 12, offset: 88523}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2684, col: 12, offset: 88391}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonHeaderGroupElement29, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 2698, col: 12, offset: 88523}, + expr: &ruleRefExpr{ + pos: position{line: 2698, col: 12, offset: 88523}, + name: "Space", }, }, &labeledExpr{ - pos: position{line: 2684, col: 19, offset: 88398}, + pos: position{line: 2698, col: 19, offset: 88530}, label: "id", - expr: &actionExpr{ - pos: position{line: 408, col: 5, offset: 12598}, - run: (*parser).callonHeaderGroupElement32, - expr: &seqExpr{ - pos: position{line: 408, col: 5, offset: 12598}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 408, col: 5, offset: 12598}, - val: "[[", - ignoreCase: false, - want: "\"[[\"", - }, - &labeledExpr{ - pos: position{line: 409, col: 5, offset: 12608}, - label: "id", - expr: &actionExpr{ - pos: position{line: 410, col: 9, offset: 12621}, - run: (*parser).callonHeaderGroupElement36, - expr: &labeledExpr{ - pos: position{line: 410, col: 9, offset: 12621}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 410, col: 18, offset: 12630}, - expr: &choiceExpr{ - pos: position{line: 411, col: 13, offset: 12644}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 411, col: 14, offset: 12645}, - run: (*parser).callonHeaderGroupElement40, - expr: &oneOrMoreExpr{ - pos: position{line: 411, col: 14, offset: 12645}, - expr: &charClassMatcher{ - pos: position{line: 411, col: 14, offset: 12645}, - val: "[^=\\r\\n�{]]", - chars: []rune{'=', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonHeaderGroupElement43, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonHeaderGroupElement47, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonHeaderGroupElement51, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonHeaderGroupElement53, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonHeaderGroupElement56, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement60, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonHeaderGroupElement67, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonHeaderGroupElement72, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonHeaderGroupElement74, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonHeaderGroupElement78, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement82, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonHeaderGroupElement89, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonHeaderGroupElement94, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonHeaderGroupElement96, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonHeaderGroupElement100, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement104, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonHeaderGroupElement110, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement114, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 16, offset: 12878}, - run: (*parser).callonHeaderGroupElement120, - expr: &litMatcher{ - pos: position{line: 416, col: 16, offset: 12878}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 422, col: 5, offset: 13064}, - val: "]]", - ignoreCase: false, - want: "\"]]\"", - }, - }, - }, + expr: &ruleRefExpr{ + pos: position{line: 2698, col: 23, offset: 88534}, + name: "LegacyElementID", }, }, &zeroOrMoreExpr{ - pos: position{line: 2684, col: 40, offset: 88419}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonHeaderGroupElement124, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 2698, col: 40, offset: 88551}, + expr: &ruleRefExpr{ + pos: position{line: 2698, col: 40, offset: 88551}, + name: "Space", }, }, &andExpr{ - pos: position{line: 2684, col: 47, offset: 88426}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, + pos: position{line: 2698, col: 47, offset: 88558}, + expr: &ruleRefExpr{ + pos: position{line: 2698, col: 48, offset: 88559}, + name: "EOF", }, }, }, }, }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonHeaderGroupElement129, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &ruleRefExpr{ + pos: position{line: 2699, col: 11, offset: 88615}, + name: "Space", }, &ruleRefExpr{ - pos: position{line: 2686, col: 11, offset: 88499}, + pos: position{line: 2700, col: 11, offset: 88631}, name: "InlinePassthrough", }, &ruleRefExpr{ - pos: position{line: 2687, col: 11, offset: 88527}, + pos: position{line: 2701, col: 11, offset: 88659}, name: "Quote", }, &ruleRefExpr{ - pos: position{line: 2688, col: 11, offset: 88543}, + pos: position{line: 2702, col: 11, offset: 88675}, name: "Link", }, - &actionExpr{ - pos: position{line: 2742, col: 5, offset: 89990}, - run: (*parser).callonHeaderGroupElement134, - expr: &seqExpr{ - pos: position{line: 2742, col: 5, offset: 89990}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2742, col: 5, offset: 89990}, - run: (*parser).callonHeaderGroupElement136, - }, - &labeledExpr{ - pos: position{line: 2745, col: 5, offset: 90061}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - run: (*parser).callonHeaderGroupElement139, - expr: &seqExpr{ - pos: position{line: 2786, col: 5, offset: 91388}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2786, col: 5, offset: 91388}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &choiceExpr{ - pos: position{line: 2786, col: 10, offset: 91393}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonHeaderGroupElement143, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonHeaderGroupElement145, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonHeaderGroupElement147, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonHeaderGroupElement149, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonHeaderGroupElement151, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonHeaderGroupElement153, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonHeaderGroupElement155, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonHeaderGroupElement157, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonHeaderGroupElement159, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonHeaderGroupElement161, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonHeaderGroupElement163, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonHeaderGroupElement166, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonHeaderGroupElement170, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonHeaderGroupElement177, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonHeaderGroupElement179, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonHeaderGroupElement184, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonHeaderGroupElement191, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonHeaderGroupElement193, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonHeaderGroupElement195, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2795, col: 5, offset: 91846}, - run: (*parser).callonHeaderGroupElement197, - expr: &litMatcher{ - pos: position{line: 2795, col: 5, offset: 91846}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 2798, col: 7, offset: 91904}, - run: (*parser).callonHeaderGroupElement199, - expr: &litMatcher{ - pos: position{line: 2798, col: 7, offset: 91904}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - }, - &actionExpr{ - pos: position{line: 2801, col: 7, offset: 91962}, - run: (*parser).callonHeaderGroupElement201, - expr: &litMatcher{ - pos: position{line: 2801, col: 7, offset: 91962}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - }, - &actionExpr{ - pos: position{line: 2804, col: 7, offset: 92018}, - run: (*parser).callonHeaderGroupElement203, - expr: &litMatcher{ - pos: position{line: 2804, col: 7, offset: 92018}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - }, - &actionExpr{ - pos: position{line: 2810, col: 14, offset: 92140}, - run: (*parser).callonHeaderGroupElement205, - expr: &litMatcher{ - pos: position{line: 2810, col: 14, offset: 92140}, - val: "(C)", - ignoreCase: false, - want: "\"(C)\"", - }, - }, - &actionExpr{ - pos: position{line: 2814, col: 14, offset: 92206}, - run: (*parser).callonHeaderGroupElement207, - expr: &litMatcher{ - pos: position{line: 2814, col: 14, offset: 92206}, - val: "(TM)", - ignoreCase: false, - want: "\"(TM)\"", - }, - }, - &actionExpr{ - pos: position{line: 2818, col: 15, offset: 92275}, - run: (*parser).callonHeaderGroupElement209, - expr: &litMatcher{ - pos: position{line: 2818, col: 15, offset: 92275}, - val: "(R)", - ignoreCase: false, - want: "\"(R)\"", - }, - }, - &actionExpr{ - pos: position{line: 2822, col: 13, offset: 92340}, - run: (*parser).callonHeaderGroupElement211, - expr: &litMatcher{ - pos: position{line: 2822, col: 13, offset: 92340}, - val: "...", - ignoreCase: false, - want: "\"...\"", - }, - }, - &actionExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonHeaderGroupElement213, - expr: &seqExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2829, col: 5, offset: 92497}, - run: (*parser).callonHeaderGroupElement215, - }, - &litMatcher{ - pos: position{line: 2832, col: 5, offset: 92553}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &choiceExpr{ - pos: position{line: 2832, col: 11, offset: 92559}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonHeaderGroupElement218, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 2832, col: 19, offset: 92567}, - expr: &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonHeaderGroupElement222, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonHeaderGroupElement229, - expr: &seqExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2837, col: 5, offset: 92688}, - run: (*parser).callonHeaderGroupElement231, - }, - &litMatcher{ - pos: position{line: 2840, col: 5, offset: 92747}, - val: "--", - ignoreCase: false, - want: "\"--\"", - }, - &andExpr{ - pos: position{line: 2840, col: 10, offset: 92752}, - expr: &choiceExpr{ - pos: position{line: 2840, col: 12, offset: 92754}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonHeaderGroupElement236, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2845, col: 21, offset: 92841}, - run: (*parser).callonHeaderGroupElement243, - expr: &litMatcher{ - pos: position{line: 2845, col: 21, offset: 92841}, - val: "->", - ignoreCase: false, - want: "\"->\"", - }, - }, - &actionExpr{ - pos: position{line: 2849, col: 20, offset: 92911}, - run: (*parser).callonHeaderGroupElement245, - expr: &litMatcher{ - pos: position{line: 2849, col: 20, offset: 92911}, - val: "<-", - ignoreCase: false, - want: "\"<-\"", - }, - }, - &actionExpr{ - pos: position{line: 2853, col: 21, offset: 92982}, - run: (*parser).callonHeaderGroupElement247, - expr: &litMatcher{ - pos: position{line: 2853, col: 21, offset: 92982}, - val: "=>", - ignoreCase: false, - want: "\"=>\"", - }, - }, - &actionExpr{ - pos: position{line: 2857, col: 20, offset: 93052}, - run: (*parser).callonHeaderGroupElement249, - expr: &litMatcher{ - pos: position{line: 2857, col: 20, offset: 93052}, - val: "<=", - ignoreCase: false, - want: "\"<=\"", - }, - }, - &actionExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - run: (*parser).callonHeaderGroupElement251, - expr: &seqExpr{ - pos: position{line: 2868, col: 5, offset: 93360}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2868, col: 14, offset: 93369}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - &andExpr{ - pos: position{line: 2868, col: 19, offset: 93374}, - expr: &charClassMatcher{ - pos: position{line: 2868, col: 20, offset: 93375}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - run: (*parser).callonHeaderGroupElement257, - expr: &seqExpr{ - pos: position{line: 2874, col: 5, offset: 93606}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 2874, col: 14, offset: 93615}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - &andExpr{ - pos: position{line: 2874, col: 18, offset: 93619}, - expr: &charClassMatcher{ - pos: position{line: 2874, col: 19, offset: 93620}, - val: "[\\pL]", - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2703, col: 11, offset: 88690}, + name: "Replacement", }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonHeaderGroupElement263, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonHeaderGroupElement265, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonHeaderGroupElement268, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonHeaderGroupElement270, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonHeaderGroupElement274, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonHeaderGroupElement278, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonHeaderGroupElement284, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonHeaderGroupElement289, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement293, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonHeaderGroupElement299, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement303, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonHeaderGroupElement309, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonHeaderGroupElement312, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonHeaderGroupElement316, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonHeaderGroupElement320, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2704, col: 11, offset: 88712}, + name: "SpecialCharacter", }, &ruleRefExpr{ - pos: position{line: 2691, col: 11, offset: 88650}, + pos: position{line: 2705, col: 11, offset: 88782}, name: "InlineIcon", }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonHeaderGroupElement323, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonHeaderGroupElement325, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonHeaderGroupElement328, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement332, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonHeaderGroupElement339, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonHeaderGroupElement344, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonHeaderGroupElement346, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonHeaderGroupElement350, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement354, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonHeaderGroupElement361, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonHeaderGroupElement366, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonHeaderGroupElement368, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonHeaderGroupElement372, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement376, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonHeaderGroupElement382, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonHeaderGroupElement386, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonHeaderGroupElement392, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonHeaderGroupElement396, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2706, col: 11, offset: 88803}, + name: "AttributeReference", }, - &actionExpr{ - pos: position{line: 1300, col: 5, offset: 40764}, - run: (*parser).callonHeaderGroupElement400, - expr: &seqExpr{ - pos: position{line: 1300, col: 5, offset: 40764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1300, col: 5, offset: 40764}, - val: "\\[[", - ignoreCase: false, - want: "\"\\\\[[\"", - }, - &labeledExpr{ - pos: position{line: 1300, col: 14, offset: 40773}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonHeaderGroupElement404, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1300, col: 22, offset: 40781}, - val: "]]", - ignoreCase: false, - want: "\"]]\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2707, col: 11, offset: 88832}, + name: "ElementPlaceHolder", }, - &actionExpr{ - pos: position{line: 1306, col: 5, offset: 40967}, - run: (*parser).callonHeaderGroupElement408, - expr: &seqExpr{ - pos: position{line: 1306, col: 5, offset: 40967}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1306, col: 5, offset: 40967}, - val: "[[", - ignoreCase: false, - want: "\"[[\"", - }, - &labeledExpr{ - pos: position{line: 1306, col: 10, offset: 40972}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonHeaderGroupElement412, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1306, col: 18, offset: 40980}, - val: "]]", - ignoreCase: false, - want: "\"]]\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2708, col: 11, offset: 88949}, + name: "InlineAnchor", }, &ruleRefExpr{ - pos: position{line: 2695, col: 11, offset: 88873}, + pos: position{line: 2709, col: 11, offset: 89005}, name: "InlineFootnote", }, - &actionExpr{ - pos: position{line: 3067, col: 12, offset: 99599}, - run: (*parser).callonHeaderGroupElement417, - expr: &anyMatcher{ - line: 3067, col: 12, offset: 99599, - }, + &ruleRefExpr{ + pos: position{line: 2710, col: 11, offset: 89030}, + name: "AnyChar", }, }, }, @@ -67964,369 +13720,73 @@ var g = &grammar{ }, { name: "InlineMacro", - pos: position{line: 2700, col: 1, offset: 88952}, + pos: position{line: 2714, col: 1, offset: 89084}, expr: &actionExpr{ - pos: position{line: 2702, col: 5, offset: 89034}, + pos: position{line: 2716, col: 5, offset: 89166}, run: (*parser).callonInlineMacro1, expr: &seqExpr{ - pos: position{line: 2702, col: 5, offset: 89034}, + pos: position{line: 2716, col: 5, offset: 89166}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2702, col: 5, offset: 89034}, + pos: position{line: 2716, col: 5, offset: 89166}, run: (*parser).callonInlineMacro3, }, &labeledExpr{ - pos: position{line: 2705, col: 5, offset: 89099}, + pos: position{line: 2719, col: 5, offset: 89231}, label: "element", expr: &choiceExpr{ - pos: position{line: 2706, col: 9, offset: 89117}, + pos: position{line: 2720, col: 9, offset: 89249}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2706, col: 9, offset: 89117}, + pos: position{line: 2720, col: 9, offset: 89249}, name: "InlineIcon", }, &ruleRefExpr{ - pos: position{line: 2707, col: 11, offset: 89138}, + pos: position{line: 2721, col: 11, offset: 89270}, name: "InlineImage", }, &ruleRefExpr{ - pos: position{line: 2708, col: 11, offset: 89161}, + pos: position{line: 2722, col: 11, offset: 89293}, name: "Link", }, &ruleRefExpr{ - pos: position{line: 2709, col: 11, offset: 89177}, + pos: position{line: 2723, col: 11, offset: 89309}, name: "InlinePassthrough", }, &ruleRefExpr{ - pos: position{line: 2710, col: 11, offset: 89206}, + pos: position{line: 2724, col: 11, offset: 89338}, name: "InlineFootnote", }, &ruleRefExpr{ - pos: position{line: 2711, col: 11, offset: 89232}, + pos: position{line: 2725, col: 11, offset: 89364}, name: "CrossReference", }, &ruleRefExpr{ - pos: position{line: 2712, col: 11, offset: 89258}, + pos: position{line: 2726, col: 11, offset: 89390}, name: "InlineUserMacro", }, - &actionExpr{ - pos: position{line: 1300, col: 5, offset: 40764}, - run: (*parser).callonInlineMacro13, - expr: &seqExpr{ - pos: position{line: 1300, col: 5, offset: 40764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1300, col: 5, offset: 40764}, - val: "\\[[", - ignoreCase: false, - want: "\"\\\\[[\"", - }, - &labeledExpr{ - pos: position{line: 1300, col: 14, offset: 40773}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonInlineMacro17, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1300, col: 22, offset: 40781}, - val: "]]", - ignoreCase: false, - want: "\"]]\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1306, col: 5, offset: 40967}, - run: (*parser).callonInlineMacro21, - expr: &seqExpr{ - pos: position{line: 1306, col: 5, offset: 40967}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1306, col: 5, offset: 40967}, - val: "[[", - ignoreCase: false, - want: "\"[[\"", - }, - &labeledExpr{ - pos: position{line: 1306, col: 10, offset: 40972}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonInlineMacro25, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1306, col: 18, offset: 40980}, - val: "]]", - ignoreCase: false, - want: "\"]]\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2727, col: 11, offset: 89417}, + name: "InlineAnchor", }, - &actionExpr{ - pos: position{line: 1345, col: 23, offset: 42451}, - run: (*parser).callonInlineMacro29, - expr: &seqExpr{ - pos: position{line: 1345, col: 23, offset: 42451}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1345, col: 23, offset: 42451}, - val: "(((", - ignoreCase: false, - want: "\"(((\"", - }, - &labeledExpr{ - pos: position{line: 1345, col: 29, offset: 42457}, - label: "term1", - expr: &actionExpr{ - pos: position{line: 1352, col: 30, offset: 42788}, - run: (*parser).callonInlineMacro33, - expr: &oneOrMoreExpr{ - pos: position{line: 1352, col: 30, offset: 42788}, - expr: &choiceExpr{ - pos: position{line: 1352, col: 31, offset: 42789}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineMacro37, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1346, col: 5, offset: 42496}, - label: "term2", - expr: &zeroOrOneExpr{ - pos: position{line: 1346, col: 11, offset: 42502}, - expr: &actionExpr{ - pos: position{line: 1346, col: 12, offset: 42503}, - run: (*parser).callonInlineMacro41, - expr: &seqExpr{ - pos: position{line: 1346, col: 12, offset: 42503}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1346, col: 12, offset: 42503}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineMacro44, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 1346, col: 19, offset: 42510}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1346, col: 23, offset: 42514}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineMacro48, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1346, col: 30, offset: 42521}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1352, col: 30, offset: 42788}, - run: (*parser).callonInlineMacro51, - expr: &oneOrMoreExpr{ - pos: position{line: 1352, col: 30, offset: 42788}, - expr: &choiceExpr{ - pos: position{line: 1352, col: 31, offset: 42789}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineMacro55, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1347, col: 5, offset: 42588}, - label: "term3", - expr: &zeroOrOneExpr{ - pos: position{line: 1347, col: 11, offset: 42594}, - expr: &actionExpr{ - pos: position{line: 1347, col: 12, offset: 42595}, - run: (*parser).callonInlineMacro59, - expr: &seqExpr{ - pos: position{line: 1347, col: 12, offset: 42595}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1347, col: 12, offset: 42595}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineMacro62, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 1347, col: 19, offset: 42602}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1347, col: 23, offset: 42606}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineMacro66, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1347, col: 30, offset: 42613}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1352, col: 30, offset: 42788}, - run: (*parser).callonInlineMacro69, - expr: &oneOrMoreExpr{ - pos: position{line: 1352, col: 30, offset: 42788}, - expr: &choiceExpr{ - pos: position{line: 1352, col: 31, offset: 42789}, - alternatives: []interface{}{ - &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlineMacro73, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1348, col: 5, offset: 42680}, - val: ")))", - ignoreCase: false, - want: "\")))\"", - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2728, col: 11, offset: 89440}, + name: "ConcealedIndexTerm", }, &ruleRefExpr{ - pos: position{line: 2715, col: 11, offset: 89337}, + pos: position{line: 2729, col: 11, offset: 89469}, name: "IndexTerm", }, &ruleRefExpr{ - pos: position{line: 2716, col: 11, offset: 89357}, + pos: position{line: 2730, col: 11, offset: 89489}, name: "InlineButton", }, &ruleRefExpr{ - pos: position{line: 2717, col: 11, offset: 89380}, + pos: position{line: 2731, col: 11, offset: 89512}, name: "InlineMenu", }, &ruleRefExpr{ - pos: position{line: 2718, col: 11, offset: 89401}, + pos: position{line: 2732, col: 11, offset: 89533}, name: "InlineUserMacro", }, }, @@ -68338,407 +13798,33 @@ var g = &grammar{ }, { name: "InlinePassthrough", - pos: position{line: 2722, col: 1, offset: 89463}, + pos: position{line: 2736, col: 1, offset: 89595}, expr: &actionExpr{ - pos: position{line: 2724, col: 5, offset: 89551}, + pos: position{line: 2738, col: 5, offset: 89683}, run: (*parser).callonInlinePassthrough1, expr: &seqExpr{ - pos: position{line: 2724, col: 5, offset: 89551}, + pos: position{line: 2738, col: 5, offset: 89683}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2724, col: 5, offset: 89551}, + pos: position{line: 2738, col: 5, offset: 89683}, run: (*parser).callonInlinePassthrough3, }, &labeledExpr{ - pos: position{line: 2727, col: 5, offset: 89628}, + pos: position{line: 2741, col: 5, offset: 89760}, label: "element", expr: &choiceExpr{ - pos: position{line: 2728, col: 9, offset: 89646}, + pos: position{line: 2742, col: 9, offset: 89778}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1417, col: 26, offset: 45808}, - run: (*parser).callonInlinePassthrough6, - expr: &seqExpr{ - pos: position{line: 1417, col: 26, offset: 45808}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1415, col: 32, offset: 45776}, - val: "+++", - ignoreCase: false, - want: "\"+++\"", - }, - &labeledExpr{ - pos: position{line: 1417, col: 54, offset: 45836}, - label: "content", - expr: &choiceExpr{ - pos: position{line: 1421, col: 33, offset: 46049}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1421, col: 34, offset: 46050}, - run: (*parser).callonInlinePassthrough11, - expr: &zeroOrMoreExpr{ - pos: position{line: 1421, col: 34, offset: 46050}, - expr: &seqExpr{ - pos: position{line: 1421, col: 35, offset: 46051}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1421, col: 35, offset: 46051}, - expr: &litMatcher{ - pos: position{line: 1415, col: 32, offset: 45776}, - val: "+++", - ignoreCase: false, - want: "\"+++\"", - }, - }, - &anyMatcher{ - line: 1421, col: 64, offset: 46080, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1423, col: 11, offset: 46253}, - run: (*parser).callonInlinePassthrough17, - expr: &zeroOrOneExpr{ - pos: position{line: 1423, col: 11, offset: 46253}, - expr: &seqExpr{ - pos: position{line: 1423, col: 12, offset: 46254}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1423, col: 12, offset: 46254}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlinePassthrough21, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 1423, col: 19, offset: 46261}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlinePassthrough24, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1423, col: 28, offset: 46270}, - expr: &litMatcher{ - pos: position{line: 1415, col: 32, offset: 45776}, - val: "+++", - ignoreCase: false, - want: "\"+++\"", - }, - }, - &anyMatcher{ - line: 1423, col: 57, offset: 46299, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1415, col: 32, offset: 45776}, - val: "+++", - ignoreCase: false, - want: "\"+++\"", - }, - ¬Expr{ - pos: position{line: 1417, col: 121, offset: 45903}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2742, col: 9, offset: 89778}, + name: "TriplePlusPassthrough", }, - &actionExpr{ - pos: position{line: 1405, col: 26, offset: 45091}, - run: (*parser).callonInlinePassthrough35, - expr: &seqExpr{ - pos: position{line: 1405, col: 26, offset: 45091}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1403, col: 32, offset: 45061}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &labeledExpr{ - pos: position{line: 1405, col: 54, offset: 45119}, - label: "content", - expr: &choiceExpr{ - pos: position{line: 1409, col: 33, offset: 45332}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1409, col: 34, offset: 45333}, - run: (*parser).callonInlinePassthrough40, - expr: &seqExpr{ - pos: position{line: 1409, col: 34, offset: 45333}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1409, col: 35, offset: 45334}, - expr: &litMatcher{ - pos: position{line: 1403, col: 32, offset: 45061}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - ¬Expr{ - pos: position{line: 1409, col: 64, offset: 45363}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlinePassthrough45, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 1409, col: 71, offset: 45370}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlinePassthrough48, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1409, col: 80, offset: 45379, - }, - &zeroOrMoreExpr{ - pos: position{line: 1409, col: 83, offset: 45382}, - expr: &seqExpr{ - pos: position{line: 1409, col: 84, offset: 45383}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1409, col: 84, offset: 45383}, - expr: &seqExpr{ - pos: position{line: 1409, col: 86, offset: 45385}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - run: (*parser).callonInlinePassthrough58, - expr: &oneOrMoreExpr{ - pos: position{line: 3119, col: 11, offset: 101131}, - expr: &charClassMatcher{ - pos: position{line: 3119, col: 12, offset: 101132}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 1403, col: 32, offset: 45061}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1409, col: 122, offset: 45421}, - expr: &litMatcher{ - pos: position{line: 1403, col: 32, offset: 45061}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - ¬Expr{ - pos: position{line: 1409, col: 151, offset: 45450}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlinePassthrough65, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1409, col: 160, offset: 45459, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1411, col: 11, offset: 45609}, - run: (*parser).callonInlinePassthrough71, - expr: &seqExpr{ - pos: position{line: 1411, col: 12, offset: 45610}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1411, col: 12, offset: 45610}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonInlinePassthrough74, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - ¬Expr{ - pos: position{line: 1411, col: 19, offset: 45617}, - expr: &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonInlinePassthrough77, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1411, col: 28, offset: 45626}, - expr: &litMatcher{ - pos: position{line: 1403, col: 32, offset: 45061}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - }, - &anyMatcher{ - line: 1411, col: 57, offset: 45655, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1403, col: 32, offset: 45061}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - ¬Expr{ - pos: position{line: 1405, col: 121, offset: 45186}, - expr: &charClassMatcher{ - pos: position{line: 3029, col: 13, offset: 98327}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 2742, col: 33, offset: 89802}, + name: "SinglePlusPassthrough", }, &ruleRefExpr{ - pos: position{line: 2728, col: 57, offset: 89694}, + pos: position{line: 2742, col: 57, offset: 89826}, name: "PassthroughMacro", }, }, @@ -68750,282 +13836,40 @@ var g = &grammar{ }, { name: "Quote", - pos: position{line: 2733, col: 1, offset: 89754}, + pos: position{line: 2747, col: 1, offset: 89886}, expr: &seqExpr{ - pos: position{line: 2735, col: 5, offset: 89830}, + pos: position{line: 2749, col: 5, offset: 89962}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2735, col: 5, offset: 89830}, + pos: position{line: 2749, col: 5, offset: 89962}, run: (*parser).callonQuote2, }, &ruleRefExpr{ - pos: position{line: 2738, col: 5, offset: 89895}, + pos: position{line: 2752, col: 5, offset: 90027}, name: "QuotedText", }, }, }, }, { - name: "TableColumnsAttribute", - pos: position{line: 2944, col: 1, offset: 95385}, + name: "Replacement", + pos: position{line: 2754, col: 1, offset: 90040}, expr: &actionExpr{ - pos: position{line: 2944, col: 26, offset: 95410}, - run: (*parser).callonTableColumnsAttribute1, + pos: position{line: 2756, col: 5, offset: 90122}, + run: (*parser).callonReplacement1, expr: &seqExpr{ - pos: position{line: 2944, col: 26, offset: 95410}, + pos: position{line: 2756, col: 5, offset: 90122}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2944, col: 26, offset: 95410}, - label: "cols", - expr: &zeroOrMoreExpr{ - pos: position{line: 2944, col: 31, offset: 95415}, - expr: &actionExpr{ - pos: position{line: 2949, col: 5, offset: 95478}, - run: (*parser).callonTableColumnsAttribute5, - expr: &seqExpr{ - pos: position{line: 2949, col: 5, offset: 95478}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2949, col: 5, offset: 95478}, - expr: ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2952, col: 5, offset: 95602}, - label: "multiplier", - expr: &zeroOrOneExpr{ - pos: position{line: 2952, col: 16, offset: 95613}, - expr: &actionExpr{ - pos: position{line: 2952, col: 17, offset: 95614}, - run: (*parser).callonTableColumnsAttribute12, - expr: &seqExpr{ - pos: position{line: 2952, col: 17, offset: 95614}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2952, col: 17, offset: 95614}, - label: "n", - expr: &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonTableColumnsAttribute15, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2952, col: 27, offset: 95624}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2953, col: 5, offset: 95652}, - label: "halign", - expr: &zeroOrOneExpr{ - pos: position{line: 2953, col: 12, offset: 95659}, - expr: &choiceExpr{ - pos: position{line: 2954, col: 9, offset: 95669}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2954, col: 9, offset: 95669}, - run: (*parser).callonTableColumnsAttribute25, - expr: &litMatcher{ - pos: position{line: 2954, col: 9, offset: 95669}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - }, - &actionExpr{ - pos: position{line: 2955, col: 11, offset: 95716}, - run: (*parser).callonTableColumnsAttribute27, - expr: &litMatcher{ - pos: position{line: 2955, col: 11, offset: 95716}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - }, - &actionExpr{ - pos: position{line: 2956, col: 11, offset: 95764}, - run: (*parser).callonTableColumnsAttribute29, - expr: &litMatcher{ - pos: position{line: 2956, col: 11, offset: 95764}, - val: "^", - ignoreCase: false, - want: "\"^\"", - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2958, col: 5, offset: 95814}, - label: "valign", - expr: &zeroOrOneExpr{ - pos: position{line: 2958, col: 12, offset: 95821}, - expr: &choiceExpr{ - pos: position{line: 2959, col: 9, offset: 95831}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2959, col: 9, offset: 95831}, - run: (*parser).callonTableColumnsAttribute34, - expr: &litMatcher{ - pos: position{line: 2959, col: 9, offset: 95831}, - val: ".<", - ignoreCase: false, - want: "\".<\"", - }, - }, - &actionExpr{ - pos: position{line: 2960, col: 11, offset: 95878}, - run: (*parser).callonTableColumnsAttribute36, - expr: &litMatcher{ - pos: position{line: 2960, col: 11, offset: 95878}, - val: ".>", - ignoreCase: false, - want: "\".>\"", - }, - }, - &actionExpr{ - pos: position{line: 2961, col: 11, offset: 95928}, - run: (*parser).callonTableColumnsAttribute38, - expr: &litMatcher{ - pos: position{line: 2961, col: 11, offset: 95928}, - val: ".^", - ignoreCase: false, - want: "\".^\"", - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2963, col: 5, offset: 95979}, - label: "weight", - expr: &zeroOrOneExpr{ - pos: position{line: 2963, col: 12, offset: 95986}, - expr: &choiceExpr{ - pos: position{line: 2963, col: 13, offset: 95987}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3107, col: 12, offset: 100891}, - run: (*parser).callonTableColumnsAttribute43, - expr: &seqExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 3107, col: 13, offset: 100892}, - expr: &litMatcher{ - pos: position{line: 3107, col: 13, offset: 100892}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 3107, col: 18, offset: 100897}, - expr: &charClassMatcher{ - pos: position{line: 3107, col: 18, offset: 100897}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2963, col: 24, offset: 95998}, - run: (*parser).callonTableColumnsAttribute49, - expr: &litMatcher{ - pos: position{line: 2963, col: 24, offset: 95998}, - val: "~", - ignoreCase: false, - want: "\"~\"", - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2964, col: 5, offset: 96040}, - label: "style", - expr: &zeroOrOneExpr{ - pos: position{line: 2964, col: 11, offset: 96046}, - expr: &actionExpr{ - pos: position{line: 2964, col: 12, offset: 96047}, - run: (*parser).callonTableColumnsAttribute53, - expr: &charClassMatcher{ - pos: position{line: 2964, col: 12, offset: 96047}, - val: "[adehlms]", - chars: []rune{'a', 'd', 'e', 'h', 'l', 'm', 's'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2966, col: 5, offset: 96177}, - label: "comma", - expr: &zeroOrOneExpr{ - pos: position{line: 2966, col: 11, offset: 96183}, - expr: &litMatcher{ - pos: position{line: 2966, col: 12, offset: 96184}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - }, - }, - &andCodeExpr{ - pos: position{line: 2967, col: 5, offset: 96194}, - run: (*parser).callonTableColumnsAttribute58, - }, - }, - }, - }, - }, + &andCodeExpr{ + pos: position{line: 2756, col: 5, offset: 90122}, + run: (*parser).callonReplacement3, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, + &labeledExpr{ + pos: position{line: 2759, col: 5, offset: 90193}, + label: "element", + expr: &ruleRefExpr{ + pos: position{line: 2760, col: 9, offset: 90211}, + name: "Symbol", }, }, }, @@ -69033,106 +13877,60 @@ var g = &grammar{ }, }, { - name: "UserMacroBlock", - pos: position{line: 2994, col: 1, offset: 97203}, + name: "SpecialCharacter", + pos: position{line: 2765, col: 1, offset: 90261}, expr: &actionExpr{ - pos: position{line: 2995, col: 5, offset: 97226}, - run: (*parser).callonUserMacroBlock1, + pos: position{line: 2767, col: 5, offset: 90348}, + run: (*parser).callonSpecialCharacter1, expr: &seqExpr{ - pos: position{line: 2995, col: 5, offset: 97226}, + pos: position{line: 2767, col: 5, offset: 90348}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2995, col: 5, offset: 97226}, - label: "name", - expr: &actionExpr{ - pos: position{line: 3018, col: 18, offset: 97991}, - run: (*parser).callonUserMacroBlock4, - expr: &oneOrMoreExpr{ - pos: position{line: 3018, col: 19, offset: 97992}, - expr: &charClassMatcher{ - pos: position{line: 3018, col: 19, offset: 97992}, - val: "[_-0-9\\pL]", - chars: []rune{'_', '-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, &andCodeExpr{ - pos: position{line: 2996, col: 5, offset: 97252}, - run: (*parser).callonUserMacroBlock7, - }, - &litMatcher{ - pos: position{line: 3000, col: 5, offset: 97392}, - val: "::", - ignoreCase: false, - want: "\"::\"", + pos: position{line: 2767, col: 5, offset: 90348}, + run: (*parser).callonSpecialCharacter3, }, &labeledExpr{ - pos: position{line: 3001, col: 5, offset: 97402}, - label: "value", - expr: &actionExpr{ - pos: position{line: 3022, col: 19, offset: 98067}, - run: (*parser).callonUserMacroBlock10, - expr: &zeroOrMoreExpr{ - pos: position{line: 3022, col: 19, offset: 98067}, - expr: &charClassMatcher{ - pos: position{line: 3022, col: 19, offset: 98067}, - val: "[^:[ \\r\\n]", - chars: []rune{':', '[', ' ', '\r', '\n'}, - ignoreCase: false, - inverted: true, + pos: position{line: 2770, col: 5, offset: 90424}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2772, col: 9, offset: 90522}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2772, col: 9, offset: 90522}, + run: (*parser).callonSpecialCharacter6, + expr: &ruleRefExpr{ + pos: position{line: 2772, col: 9, offset: 90522}, + name: "InternalCrossReference", + }, }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 3002, col: 5, offset: 97430}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 3002, col: 17, offset: 97442}, - name: "InlineAttributes", - }, - }, - &choiceExpr{ - pos: position{line: 3131, col: 8, offset: 101388}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3124, col: 12, offset: 101248}, - run: (*parser).callonUserMacroBlock16, - expr: &choiceExpr{ - pos: position{line: 3124, col: 13, offset: 101249}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 3124, col: 13, offset: 101249}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 20, offset: 101256}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 3124, col: 29, offset: 101265}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &actionExpr{ + pos: position{line: 2775, col: 11, offset: 90626}, + run: (*parser).callonSpecialCharacter8, + expr: &choiceExpr{ + pos: position{line: 2775, col: 12, offset: 90627}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2775, col: 12, offset: 90627}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &litMatcher{ + pos: position{line: 2775, col: 18, offset: 90633}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + &litMatcher{ + pos: position{line: 2775, col: 24, offset: 90639}, + val: "&", + ignoreCase: false, + want: "\"&\"", + }, }, }, }, }, - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, }, }, }, @@ -69140,874 +13938,373 @@ var g = &grammar{ }, }, { - name: "InlineUserMacro", - pos: position{line: 3006, col: 1, offset: 97590}, + name: "SingleLineComment", + pos: position{line: 2784, col: 1, offset: 90965}, expr: &actionExpr{ - pos: position{line: 3007, col: 5, offset: 97614}, - run: (*parser).callonInlineUserMacro1, + pos: position{line: 2784, col: 22, offset: 90986}, + run: (*parser).callonSingleLineComment1, expr: &seqExpr{ - pos: position{line: 3007, col: 5, offset: 97614}, + pos: position{line: 2784, col: 22, offset: 90986}, exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2784, col: 22, offset: 90986}, + name: "SingleLineCommentDelimiter", + }, &labeledExpr{ - pos: position{line: 3007, col: 5, offset: 97614}, - label: "name", - expr: &actionExpr{ - pos: position{line: 3018, col: 18, offset: 97991}, - run: (*parser).callonInlineUserMacro4, - expr: &oneOrMoreExpr{ - pos: position{line: 3018, col: 19, offset: 97992}, - expr: &charClassMatcher{ - pos: position{line: 3018, col: 19, offset: 97992}, - val: "[_-0-9\\pL]", - chars: []rune{'_', '-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 2784, col: 49, offset: 91013}, + label: "content", + expr: &ruleRefExpr{ + pos: position{line: 2784, col: 58, offset: 91022}, + name: "SingleLineCommentContent", }, }, - &andCodeExpr{ - pos: position{line: 3008, col: 5, offset: 97640}, - run: (*parser).callonInlineUserMacro7, + &ruleRefExpr{ + pos: position{line: 2784, col: 84, offset: 91048}, + name: "EOL", }, - &litMatcher{ - pos: position{line: 3012, col: 5, offset: 97780}, - val: ":", + }, + }, + }, + }, + { + name: "SingleLineCommentDelimiter", + pos: position{line: 2789, col: 1, offset: 91177}, + expr: &seqExpr{ + pos: position{line: 2789, col: 31, offset: 91207}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2789, col: 31, offset: 91207}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + ¬Expr{ + pos: position{line: 2789, col: 36, offset: 91212}, + expr: &litMatcher{ + pos: position{line: 2789, col: 37, offset: 91213}, + val: "//", ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 3013, col: 5, offset: 97789}, - label: "value", - expr: &actionExpr{ - pos: position{line: 3022, col: 19, offset: 98067}, - run: (*parser).callonInlineUserMacro10, - expr: &zeroOrMoreExpr{ - pos: position{line: 3022, col: 19, offset: 98067}, - expr: &charClassMatcher{ - pos: position{line: 3022, col: 19, offset: 98067}, - val: "[^:[ \\r\\n]", - chars: []rune{':', '[', ' ', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 3014, col: 5, offset: 97817}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 3014, col: 17, offset: 97829}, - name: "InlineAttributes", - }, + want: "\"//\"", }, }, }, }, }, { - name: "FileLocation", - pos: position{line: 3071, col: 1, offset: 99666}, + name: "SingleLineCommentContent", + pos: position{line: 2791, col: 1, offset: 91220}, expr: &actionExpr{ - pos: position{line: 3071, col: 17, offset: 99682}, - run: (*parser).callonFileLocation1, - expr: &labeledExpr{ - pos: position{line: 3071, col: 17, offset: 99682}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 3071, col: 22, offset: 99687}, - expr: &choiceExpr{ - pos: position{line: 3071, col: 23, offset: 99688}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - run: (*parser).callonFileLocation5, - expr: &seqExpr{ - pos: position{line: 3086, col: 5, offset: 100144}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 3086, col: 5, offset: 100144}, - expr: &litMatcher{ - pos: position{line: 3086, col: 6, offset: 100145}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 3087, col: 5, offset: 100169}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 3087, col: 14, offset: 100178}, - expr: &choiceExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - run: (*parser).callonFileLocation12, - expr: &oneOrMoreExpr{ - pos: position{line: 3088, col: 9, offset: 100188}, - expr: &charClassMatcher{ - pos: position{line: 3088, col: 10, offset: 100189}, - val: "[^\\r\\n[]�{.,;?!<> ]", - chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &seqExpr{ - pos: position{line: 3091, col: 11, offset: 100454}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 3061, col: 25, offset: 99425}, - run: (*parser).callonFileLocation16, - expr: &charClassMatcher{ - pos: position{line: 3061, col: 25, offset: 99425}, - val: "[.,;?!]", - chars: []rune{'.', ',', ';', '?', '!'}, - ignoreCase: false, - inverted: false, - }, - }, - &andExpr{ - pos: position{line: 3091, col: 32, offset: 100475}, - expr: ¬Expr{ - pos: position{line: 3091, col: 34, offset: 100477}, - expr: &choiceExpr{ - pos: position{line: 3091, col: 36, offset: 100479}, - alternatives: []interface{}{ - ¬Expr{ - pos: position{line: 3128, col: 8, offset: 101338}, - expr: &anyMatcher{ - line: 3128, col: 9, offset: 101339, - }, - }, - &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonFileLocation23, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonFileLocation25, - expr: &seqExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 648, col: 5, offset: 20883}, - run: (*parser).callonFileLocation27, - }, - &labeledExpr{ - pos: position{line: 651, col: 5, offset: 20952}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 651, col: 14, offset: 20961}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - run: (*parser).callonFileLocation30, - expr: &seqExpr{ - pos: position{line: 671, col: 25, offset: 21614}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 671, col: 25, offset: 21614}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 671, col: 37, offset: 21626}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileLocation34, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 671, col: 56, offset: 21645}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 671, col: 62, offset: 21651}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonFileLocation41, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonFileLocation46, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonFileLocation48, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 671, col: 78, offset: 21667}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - run: (*parser).callonFileLocation52, - expr: &seqExpr{ - pos: position{line: 675, col: 25, offset: 21785}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 675, col: 25, offset: 21785}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 675, col: 38, offset: 21798}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileLocation56, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 675, col: 57, offset: 21817}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 675, col: 63, offset: 21823}, - expr: &actionExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - run: (*parser).callonFileLocation63, - expr: &seqExpr{ - pos: position{line: 679, col: 17, offset: 21946}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 679, col: 17, offset: 21946}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 679, col: 21, offset: 21950}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 679, col: 28, offset: 21957}, - run: (*parser).callonFileLocation68, - expr: &charClassMatcher{ - pos: position{line: 679, col: 28, offset: 21957}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - run: (*parser).callonFileLocation70, - expr: &oneOrMoreExpr{ - pos: position{line: 681, col: 9, offset: 22011}, - expr: &charClassMatcher{ - pos: position{line: 681, col: 9, offset: 22011}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 675, col: 79, offset: 21839}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonFileLocation74, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileLocation78, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonFileLocation84, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileLocation88, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonFileLocation94, - expr: &seqExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 90216}, - run: (*parser).callonFileLocation96, - }, - &labeledExpr{ - pos: position{line: 2756, col: 5, offset: 90292}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2758, col: 9, offset: 90390}, - run: (*parser).callonFileLocation99, - expr: &choiceExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - run: (*parser).callonFileLocation101, - expr: &seqExpr{ - pos: position{line: 699, col: 27, offset: 22665}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 699, col: 27, offset: 22665}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 32, offset: 22670}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonFileLocation105, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 699, col: 40, offset: 22678}, - expr: &actionExpr{ - pos: position{line: 3115, col: 10, offset: 101064}, - run: (*parser).callonFileLocation109, - expr: &charClassMatcher{ - pos: position{line: 3115, col: 11, offset: 101065}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 47, offset: 22685}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 699, col: 51, offset: 22689}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 709, col: 24, offset: 23090}, - expr: &choiceExpr{ - pos: position{line: 710, col: 5, offset: 23096}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - run: (*parser).callonFileLocation115, - expr: &seqExpr{ - pos: position{line: 710, col: 6, offset: 23097}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 710, col: 6, offset: 23097}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 710, col: 14, offset: 23105}, - expr: &charClassMatcher{ - pos: position{line: 710, col: 14, offset: 23105}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - run: (*parser).callonFileLocation120, - expr: &seqExpr{ - pos: position{line: 657, col: 5, offset: 21090}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 657, col: 5, offset: 21090}, - val: "\\{", - ignoreCase: false, - want: "\"\\\\{\"", - }, - &labeledExpr{ - pos: position{line: 657, col: 13, offset: 21098}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileLocation124, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 657, col: 32, offset: 21117}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - run: (*parser).callonFileLocation130, - expr: &seqExpr{ - pos: position{line: 664, col: 5, offset: 21358}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 664, col: 5, offset: 21358}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 664, col: 9, offset: 21362}, - label: "name", - expr: &actionExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - run: (*parser).callonFileLocation134, - expr: &seqExpr{ - pos: position{line: 324, col: 18, offset: 10072}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 324, col: 18, offset: 10072}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 324, col: 28, offset: 10082}, - expr: &charClassMatcher{ - pos: position{line: 324, col: 29, offset: 10083}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 664, col: 28, offset: 21381}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 714, col: 8, offset: 23331}, - run: (*parser).callonFileLocation140, - expr: &litMatcher{ - pos: position{line: 714, col: 8, offset: 23331}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 699, col: 79, offset: 22717}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - run: (*parser).callonFileLocation143, - expr: &seqExpr{ - pos: position{line: 701, col: 9, offset: 22790}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 701, col: 9, offset: 22790}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 701, col: 14, offset: 22795}, - label: "id", - expr: &actionExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - run: (*parser).callonFileLocation147, - expr: &oneOrMoreExpr{ - pos: position{line: 3100, col: 7, offset: 100716}, - expr: &charClassMatcher{ - pos: position{line: 3100, col: 7, offset: 100716}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 701, col: 22, offset: 22803}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2761, col: 11, offset: 90494}, - run: (*parser).callonFileLocation151, - expr: &charClassMatcher{ - pos: position{line: 2761, col: 12, offset: 90495}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 3094, col: 11, offset: 100560}, - run: (*parser).callonFileLocation153, - expr: &litMatcher{ - pos: position{line: 3094, col: 11, offset: 100560}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - run: (*parser).callonFileLocation155, - expr: &seqExpr{ - pos: position{line: 1219, col: 23, offset: 38141}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 1219, col: 51, offset: 38169}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - run: (*parser).callonFileLocation159, - expr: &oneOrMoreExpr{ - pos: position{line: 1219, col: 56, offset: 38174}, - expr: &charClassMatcher{ - pos: position{line: 1219, col: 56, offset: 38174}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1217, col: 32, offset: 38109}, - val: "�", - ignoreCase: false, - want: "\"�\"", + pos: position{line: 2791, col: 29, offset: 91248}, + run: (*parser).callonSingleLineCommentContent1, + expr: &zeroOrMoreExpr{ + pos: position{line: 2791, col: 29, offset: 91248}, + expr: &charClassMatcher{ + pos: position{line: 2791, col: 29, offset: 91248}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "Symbol", + pos: position{line: 2798, col: 1, offset: 91490}, + expr: &choiceExpr{ + pos: position{line: 2800, col: 5, offset: 91520}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2800, col: 5, offset: 91520}, + run: (*parser).callonSymbol2, + expr: &seqExpr{ + pos: position{line: 2800, col: 5, offset: 91520}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2800, col: 5, offset: 91520}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &choiceExpr{ + pos: position{line: 2800, col: 10, offset: 91525}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2800, col: 10, offset: 91525}, + name: "QuotationMark", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 26, offset: 91541}, + name: "Copyright", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 38, offset: 91553}, + name: "Trademark", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 50, offset: 91565}, + name: "Registered", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 63, offset: 91578}, + name: "Ellipsis", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 74, offset: 91589}, + name: "SingleRightArrow", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 93, offset: 91608}, + name: "Mdash", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 101, offset: 91616}, + name: "SingleLeftArrow", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 119, offset: 91634}, + name: "DoubleRightArrow", + }, + &ruleRefExpr{ + pos: position{line: 2800, col: 138, offset: 91653}, + name: "DoubleLeftArrow", + }, + }, + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 7, offset: 91780}, + name: "QuotationMark", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 23, offset: 91796}, + name: "Copyright", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 35, offset: 91808}, + name: "Trademark", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 47, offset: 91820}, + name: "Registered", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 60, offset: 91833}, + name: "Ellipsis", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 71, offset: 91844}, + name: "Mdash", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 79, offset: 91852}, + name: "SingleRightArrow", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 98, offset: 91871}, + name: "SingleLeftArrow", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 116, offset: 91889}, + name: "DoubleRightArrow", + }, + &ruleRefExpr{ + pos: position{line: 2804, col: 135, offset: 91908}, + name: "DoubleLeftArrow", + }, + &ruleRefExpr{ + pos: position{line: 2806, col: 7, offset: 91938}, + name: "TypographicQuote", + }, + }, + }, + }, + { + name: "QuotationMark", + pos: position{line: 2808, col: 1, offset: 91956}, + expr: &choiceExpr{ + pos: position{line: 2809, col: 5, offset: 91978}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2809, col: 5, offset: 91978}, + run: (*parser).callonQuotationMark2, + expr: &litMatcher{ + pos: position{line: 2809, col: 5, offset: 91978}, + val: "\"`", + ignoreCase: false, + want: "\"\\\"`\"", + }, + }, + &actionExpr{ + pos: position{line: 2812, col: 7, offset: 92036}, + run: (*parser).callonQuotationMark4, + expr: &litMatcher{ + pos: position{line: 2812, col: 7, offset: 92036}, + val: "`\"", + ignoreCase: false, + want: "\"`\\\"\"", + }, + }, + &actionExpr{ + pos: position{line: 2815, col: 7, offset: 92094}, + run: (*parser).callonQuotationMark6, + expr: &litMatcher{ + pos: position{line: 2815, col: 7, offset: 92094}, + val: "'`", + ignoreCase: false, + want: "\"'`\"", + }, + }, + &actionExpr{ + pos: position{line: 2818, col: 7, offset: 92150}, + run: (*parser).callonQuotationMark8, + expr: &litMatcher{ + pos: position{line: 2818, col: 7, offset: 92150}, + val: "`'", + ignoreCase: false, + want: "\"`'\"", + }, + }, + }, + }, + }, + { + name: "RawApostrophe", + pos: position{line: 2822, col: 1, offset: 92202}, + expr: &litMatcher{ + pos: position{line: 2822, col: 18, offset: 92219}, + val: "`'", + ignoreCase: false, + want: "\"`'\"", + }, + }, + { + name: "Copyright", + pos: position{line: 2824, col: 1, offset: 92259}, + expr: &actionExpr{ + pos: position{line: 2824, col: 14, offset: 92272}, + run: (*parser).callonCopyright1, + expr: &litMatcher{ + pos: position{line: 2824, col: 14, offset: 92272}, + val: "(C)", + ignoreCase: false, + want: "\"(C)\"", + }, + }, + }, + { + name: "Trademark", + pos: position{line: 2828, col: 1, offset: 92325}, + expr: &actionExpr{ + pos: position{line: 2828, col: 14, offset: 92338}, + run: (*parser).callonTrademark1, + expr: &litMatcher{ + pos: position{line: 2828, col: 14, offset: 92338}, + val: "(TM)", + ignoreCase: false, + want: "\"(TM)\"", + }, + }, + }, + { + name: "Registered", + pos: position{line: 2832, col: 1, offset: 92393}, + expr: &actionExpr{ + pos: position{line: 2832, col: 15, offset: 92407}, + run: (*parser).callonRegistered1, + expr: &litMatcher{ + pos: position{line: 2832, col: 15, offset: 92407}, + val: "(R)", + ignoreCase: false, + want: "\"(R)\"", + }, + }, + }, + { + name: "Ellipsis", + pos: position{line: 2836, col: 1, offset: 92460}, + expr: &actionExpr{ + pos: position{line: 2836, col: 13, offset: 92472}, + run: (*parser).callonEllipsis1, + expr: &litMatcher{ + pos: position{line: 2836, col: 13, offset: 92472}, + val: "...", + ignoreCase: false, + want: "\"...\"", + }, + }, + }, + { + name: "Mdash", + pos: position{line: 2840, col: 1, offset: 92525}, + expr: &choiceExpr{ + pos: position{line: 2843, col: 5, offset: 92629}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2843, col: 5, offset: 92629}, + run: (*parser).callonMdash2, + expr: &seqExpr{ + pos: position{line: 2843, col: 5, offset: 92629}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 2843, col: 5, offset: 92629}, + run: (*parser).callonMdash4, + }, + &litMatcher{ + pos: position{line: 2846, col: 5, offset: 92685}, + val: "--", + ignoreCase: false, + want: "\"--\"", + }, + &choiceExpr{ + pos: position{line: 2846, col: 11, offset: 92691}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2846, col: 11, offset: 92691}, + name: "Space", + }, + &andExpr{ + pos: position{line: 2846, col: 19, offset: 92699}, + expr: &ruleRefExpr{ + pos: position{line: 2846, col: 20, offset: 92700}, + name: "EOL", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2851, col: 5, offset: 92820}, + run: (*parser).callonMdash10, + expr: &seqExpr{ + pos: position{line: 2851, col: 5, offset: 92820}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 2851, col: 5, offset: 92820}, + run: (*parser).callonMdash12, + }, + &litMatcher{ + pos: position{line: 2854, col: 5, offset: 92879}, + val: "--", + ignoreCase: false, + want: "\"--\"", + }, + &andExpr{ + pos: position{line: 2854, col: 10, offset: 92884}, + expr: &choiceExpr{ + pos: position{line: 2854, col: 12, offset: 92886}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2854, col: 12, offset: 92886}, + name: "Alphanum", + }, + &ruleRefExpr{ + pos: position{line: 2854, col: 23, offset: 92897}, + name: "EOL", }, }, }, @@ -70018,33736 +14315,2949 @@ var g = &grammar{ }, }, }, - }, -} - -func (c *current) onDocumentRawLine10() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine10() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine10() -} - -func (c *current) onDocumentRawLine17() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine17() -} - -func (c *current) onDocumentRawLine20() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine20() -} - -func (c *current) onDocumentRawLine6(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine6(stack["name"]) -} - -func (c *current) onDocumentRawLine31() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine31() -} - -func (c *current) onDocumentRawLine38() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine38() -} - -func (c *current) onDocumentRawLine41() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine41() -} - -func (c *current) onDocumentRawLine27(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine27(stack["name"]) -} - -func (c *current) onDocumentRawLine53() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine53() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine53() -} - -func (c *current) onDocumentRawLine59() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine59() -} - -func (c *current) onDocumentRawLine64() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine64() -} - -func (c *current) onDocumentRawLine49(name, attr interface{}) (interface{}, error) { - return types.NewIfdefCondition(name.(string), attr) - -} - -func (p *parser) callonDocumentRawLine49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine49(stack["name"], stack["attr"]) -} - -func (c *current) onDocumentRawLine72() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine72() -} - -func (c *current) onDocumentRawLine78() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine78() -} - -func (c *current) onDocumentRawLine83() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine83() -} - -func (c *current) onDocumentRawLine68(name, attr interface{}) (interface{}, error) { - return types.NewIfndefCondition(name.(string), attr) - -} - -func (p *parser) callonDocumentRawLine68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine68(stack["name"], stack["attr"]) -} - -func (c *current) onDocumentRawLine101() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine101() -} - -func (c *current) onDocumentRawLine97(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDocumentRawLine97() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine97(stack["name"]) -} - -func (c *current) onDocumentRawLine111() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine111() -} - -func (c *current) onDocumentRawLine107(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine107(stack["name"]) -} - -func (c *current) onDocumentRawLine92(s interface{}) (interface{}, error) { - return s, nil -} - -func (p *parser) callonDocumentRawLine92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine92(stack["s"]) -} - -func (c *current) onDocumentRawLine127() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine127() -} - -func (c *current) onDocumentRawLine123(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDocumentRawLine123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine123(stack["name"]) -} - -func (c *current) onDocumentRawLine137() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine137() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine137() -} - -func (c *current) onDocumentRawLine133(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine133() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine133(stack["name"]) -} - -func (c *current) onDocumentRawLine118(s interface{}) (interface{}, error) { - return s, nil -} - -func (p *parser) callonDocumentRawLine118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine118(stack["s"]) -} - -func (c *current) onDocumentRawLine151() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine151() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine151() -} - -func (c *current) onDocumentRawLine147(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDocumentRawLine147() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine147(stack["name"]) -} - -func (c *current) onDocumentRawLine161() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine161() -} - -func (c *current) onDocumentRawLine157(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine157(stack["name"]) -} - -func (c *current) onDocumentRawLine144(s interface{}) (interface{}, error) { - return s, nil -} - -func (p *parser) callonDocumentRawLine144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine144(stack["s"]) -} - -func (c *current) onDocumentRawLine171() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine171() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine171() -} - -func (c *current) onDocumentRawLine167(w interface{}) (interface{}, error) { - return w, nil -} - -func (p *parser) callonDocumentRawLine167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine167(stack["w"]) -} - -func (c *current) onDocumentRawLine179() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine179() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine179() -} - -func (c *current) onDocumentRawLine175(w interface{}) (interface{}, error) { - return w, nil -} - -func (p *parser) callonDocumentRawLine175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine175(stack["w"]) -} - -func (c *current) onDocumentRawLine183() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDocumentRawLine183() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine183() -} - -func (c *current) onDocumentRawLine190() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine190() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine190() -} - -func (c *current) onDocumentRawLine194() (interface{}, error) { - return types.NewEqualOperand() - -} - -func (p *parser) callonDocumentRawLine194() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine194() -} - -func (c *current) onDocumentRawLine196() (interface{}, error) { - return types.NewNotEqualOperand() - -} - -func (p *parser) callonDocumentRawLine196() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine196() -} - -func (c *current) onDocumentRawLine198() (interface{}, error) { - return types.NewLessThanOperand() - -} - -func (p *parser) callonDocumentRawLine198() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine198() -} - -func (c *current) onDocumentRawLine200() (interface{}, error) { - return types.NewLessOrEqualOperand() - -} - -func (p *parser) callonDocumentRawLine200() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine200() -} - -func (c *current) onDocumentRawLine202() (interface{}, error) { - return types.NewGreaterThanOperand() - -} - -func (p *parser) callonDocumentRawLine202() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine202() -} - -func (c *current) onDocumentRawLine204() (interface{}, error) { - return types.NewGreaterOrEqualOperand() - -} - -func (p *parser) callonDocumentRawLine204() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine204() -} - -func (c *current) onDocumentRawLine207() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine207() -} - -func (c *current) onDocumentRawLine220() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine220() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine220() -} - -func (c *current) onDocumentRawLine216(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDocumentRawLine216() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine216(stack["name"]) -} - -func (c *current) onDocumentRawLine230() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine230() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine230() -} - -func (c *current) onDocumentRawLine226(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine226() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine226(stack["name"]) -} - -func (c *current) onDocumentRawLine211(s interface{}) (interface{}, error) { - return s, nil -} - -func (p *parser) callonDocumentRawLine211() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine211(stack["s"]) -} - -func (c *current) onDocumentRawLine246() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine246() -} - -func (c *current) onDocumentRawLine242(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDocumentRawLine242() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine242(stack["name"]) -} - -func (c *current) onDocumentRawLine256() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine256() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine256() -} - -func (c *current) onDocumentRawLine252(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine252() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine252(stack["name"]) -} - -func (c *current) onDocumentRawLine237(s interface{}) (interface{}, error) { - return s, nil -} - -func (p *parser) callonDocumentRawLine237() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine237(stack["s"]) -} - -func (c *current) onDocumentRawLine270() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine270() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine270() -} - -func (c *current) onDocumentRawLine266(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDocumentRawLine266() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine266(stack["name"]) -} - -func (c *current) onDocumentRawLine280() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine280() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine280() -} - -func (c *current) onDocumentRawLine276(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine276() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine276(stack["name"]) -} - -func (c *current) onDocumentRawLine263(s interface{}) (interface{}, error) { - return s, nil -} - -func (p *parser) callonDocumentRawLine263() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine263(stack["s"]) -} - -func (c *current) onDocumentRawLine290() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine290() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine290() -} - -func (c *current) onDocumentRawLine286(w interface{}) (interface{}, error) { - return w, nil -} - -func (p *parser) callonDocumentRawLine286() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine286(stack["w"]) -} - -func (c *current) onDocumentRawLine298() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine298() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine298() -} - -func (c *current) onDocumentRawLine294(w interface{}) (interface{}, error) { - return w, nil -} - -func (p *parser) callonDocumentRawLine294() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine294(stack["w"]) -} - -func (c *current) onDocumentRawLine302() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDocumentRawLine302() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine302() -} - -func (c *current) onDocumentRawLine310() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine310() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine310() -} - -func (c *current) onDocumentRawLine87(left, operand, right interface{}) (interface{}, error) { - return types.NewIfevalCondition(left, right, operand.(types.IfevalOperand)) - -} - -func (p *parser) callonDocumentRawLine87() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine87(stack["left"], stack["operand"], stack["right"]) -} - -func (c *current) onDocumentRawLine319() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine319() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine319() -} - -func (c *current) onDocumentRawLine325() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine325() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine325() -} - -func (c *current) onDocumentRawLine330() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine330() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine330() -} - -func (c *current) onDocumentRawLine314(name, attr interface{}) (interface{}, error) { - return types.NewEndOfCondition() // name and attributes are parsed but ignored - -} - -func (p *parser) callonDocumentRawLine314() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine314(stack["name"], stack["attr"]) -} - -func (c *current) onDocumentRawLine343() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine343() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine343() -} - -func (c *current) onDocumentRawLine349() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine349() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine349() -} - -func (c *current) onDocumentRawLine352() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine352() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine352() -} - -func (c *current) onDocumentRawLine340(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine340() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine340(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine362() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine362() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine362() -} - -func (c *current) onDocumentRawLine368() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine368() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine368() -} - -func (c *current) onDocumentRawLine371() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine371() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine371() -} - -func (c *current) onDocumentRawLine359(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine359() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine359(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine382() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine382() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine382() -} - -func (c *current) onDocumentRawLine386() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine386() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine386() -} - -func (c *current) onDocumentRawLine389() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine389() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine389() -} - -func (c *current) onDocumentRawLine378(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonDocumentRawLine378() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine378(stack["language"]) -} - -func (c *current) onDocumentRawLine399() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine399() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine399() -} - -func (c *current) onDocumentRawLine405() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine405() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine405() -} - -func (c *current) onDocumentRawLine408() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine408() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine408() -} - -func (c *current) onDocumentRawLine396(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine396() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine396(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine418() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine418() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine418() -} - -func (c *current) onDocumentRawLine424() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine424() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine424() -} - -func (c *current) onDocumentRawLine427() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine427() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine427() -} - -func (c *current) onDocumentRawLine415(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine415() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine415(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine437() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine437() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine437() -} - -func (c *current) onDocumentRawLine443() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine443() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine443() -} - -func (c *current) onDocumentRawLine446() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine446() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine446() -} - -func (c *current) onDocumentRawLine434(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine434() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine434(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine456() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine456() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine456() -} - -func (c *current) onDocumentRawLine462() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine462() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine462() -} - -func (c *current) onDocumentRawLine465() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine465() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine465() -} - -func (c *current) onDocumentRawLine453(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine453() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine453(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine475() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine475() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine475() -} - -func (c *current) onDocumentRawLine481() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine481() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine481() -} - -func (c *current) onDocumentRawLine484() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine484() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine484() -} - -func (c *current) onDocumentRawLine472(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine472() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine472(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine494() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine494() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine494() -} - -func (c *current) onDocumentRawLine500() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine500() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine500() -} - -func (c *current) onDocumentRawLine503() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentRawLine503() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine503() -} - -func (c *current) onDocumentRawLine491(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentRawLine491() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine491(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine334(delimiter interface{}) (interface{}, error) { - return delimiter, nil - -} - -func (p *parser) callonDocumentRawLine334() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine334(stack["delimiter"]) -} - -func (c *current) onDocumentRawLine512() (bool, error) { - // should only be enabled when reading files to include, not the main (root) file - return c.isSectionEnabled(), nil - -} - -func (p *parser) callonDocumentRawLine512() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine512() -} - -func (c *current) onDocumentRawLine513() (bool, error) { - - return !c.isWithinDelimitedBlock(), nil - -} - -func (p *parser) callonDocumentRawLine513() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine513() -} - -func (c *current) onDocumentRawLine515() (interface{}, error) { - - // `=` is level 0, `==` is level 1, etc. - return (len(c.text) - 1), nil - -} - -func (p *parser) callonDocumentRawLine515() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine515() -} - -func (c *current) onDocumentRawLine518(level interface{}) (bool, error) { - - // use a predicate to make sure that only `=` (level 0) to `======` (level 5) are allowed - return level.(int) <= 5, nil - -} - -func (p *parser) callonDocumentRawLine518() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine518(stack["level"]) -} - -func (c *current) onDocumentRawLine519(level interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonDocumentRawLine519() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine519(stack["level"]) -} - -func (c *current) onDocumentRawLine510(level interface{}) (interface{}, error) { - return types.NewRawSection(level.(int), string(c.text)) // just retain the raw content - -} - -func (p *parser) callonDocumentRawLine510() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine510(stack["level"]) -} - -func (c *current) onDocumentRawLine1(element interface{}) (interface{}, error) { - // in case of parse error, we'll keep the rawline content as-is - return element, nil - -} - -func (p *parser) callonDocumentRawLine1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentRawLine1(stack["element"]) -} - -func (c *current) onFileInclusion19() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonFileInclusion19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion19() -} - -func (c *current) onFileInclusion23() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonFileInclusion23() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion23() -} - -func (c *current) onFileInclusion30() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion30() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion30() -} - -func (c *current) onFileInclusion34() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonFileInclusion34() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion34() -} - -func (c *current) onFileInclusion41() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion41() -} - -func (c *current) onFileInclusion53() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion53() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion53() -} - -func (c *current) onFileInclusion55() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonFileInclusion55() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion55() -} - -func (c *current) onFileInclusion48(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonFileInclusion48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion48(stack["start"]) -} - -func (c *current) onFileInclusion37(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonFileInclusion37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion37(stack["name"], stack["start"]) -} - -func (c *current) onFileInclusion63() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion63() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion63() -} - -func (c *current) onFileInclusion75() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion75() -} - -func (c *current) onFileInclusion77() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonFileInclusion77() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion77() -} - -func (c *current) onFileInclusion70(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonFileInclusion70() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion70(stack["start"]) -} - -func (c *current) onFileInclusion59(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonFileInclusion59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion59(stack["name"], stack["start"]) -} - -func (c *current) onFileInclusion85() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion85() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion85() -} - -func (c *current) onFileInclusion81(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonFileInclusion81() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion81(stack["name"]) -} - -func (c *current) onFileInclusion95() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion95() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion95() -} - -func (c *current) onFileInclusion91(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonFileInclusion91() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion91(stack["name"]) -} - -func (c *current) onFileInclusion32(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonFileInclusion32() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion32(stack["element"]) -} - -func (c *current) onFileInclusion103() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonFileInclusion103() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion103() -} - -func (c *current) onFileInclusion112() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion112() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion112() -} - -func (c *current) onFileInclusion116() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion116() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion116() -} - -func (c *current) onFileInclusion122() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonFileInclusion122() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion122() -} - -func (c *current) onFileInclusion131() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion131() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion131() -} - -func (c *current) onFileInclusion127(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonFileInclusion127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion127(stack["name"]) -} - -func (c *current) onFileInclusion141() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion141() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion141() -} - -func (c *current) onFileInclusion137(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonFileInclusion137() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion137(stack["name"]) -} - -func (c *current) onFileInclusion147() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonFileInclusion147() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion147() -} - -func (c *current) onFileInclusion108(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonFileInclusion108() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion108(stack["id"], stack["label"]) -} - -func (c *current) onFileInclusion154() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion154() -} - -func (c *current) onFileInclusion150(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonFileInclusion150() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion150(stack["id"]) -} - -func (c *current) onFileInclusion106() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonFileInclusion106() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion106() -} - -func (c *current) onFileInclusion158() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonFileInclusion158() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion158() -} - -func (c *current) onFileInclusion101(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonFileInclusion101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion101(stack["element"]) -} - -func (c *current) onFileInclusion160() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonFileInclusion160() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion160() -} - -func (c *current) onFileInclusion12(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonFileInclusion12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion12(stack["elements"]) -} - -func (c *current) onFileInclusion166() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonFileInclusion166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion166() -} - -func (c *current) onFileInclusion162(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonFileInclusion162() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion162(stack["ref"]) -} - -func (c *current) onFileInclusion8(path interface{}) (interface{}, error) { - return types.NewLocation("", path.([]interface{})) - -} - -func (p *parser) callonFileInclusion8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion8(stack["path"]) -} - -func (c *current) onFileInclusion4(path, attributes interface{}) (interface{}, error) { - - return types.NewFileInclusion(path.(*types.Location), attributes.(types.Attributes), string(c.text)) - -} - -func (p *parser) callonFileInclusion4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion4(stack["path"], stack["attributes"]) -} - -func (c *current) onFileInclusion173() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFileInclusion173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion173() -} - -func (c *current) onFileInclusion176() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonFileInclusion176() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion176() -} - -func (c *current) onFileInclusion1(incl interface{}) (interface{}, error) { - return incl.(*types.FileInclusion), nil - -} - -func (p *parser) callonFileInclusion1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion1(stack["incl"]) -} - -func (c *current) onLineRanges12() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges12() -} - -func (c *current) onLineRanges20() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges20() -} - -func (c *current) onLineRanges9(start, end interface{}) (interface{}, error) { - // eg: lines=12..14 - return types.NewLineRange(start.(int), end.(int)) - -} - -func (p *parser) callonLineRanges9() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges9(stack["start"], stack["end"]) -} - -func (c *current) onLineRanges28() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges28() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges28() -} - -func (c *current) onLineRanges26(singleline interface{}) (interface{}, error) { - // eg: lines=12 - return types.NewLineRange(singleline.(int), singleline.(int)) - -} - -func (p *parser) callonLineRanges26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges26(stack["singleline"]) -} - -func (c *current) onLineRanges44() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges44() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges44() -} - -func (c *current) onLineRanges52() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges52() -} - -func (c *current) onLineRanges41(start, end interface{}) (interface{}, error) { - // eg: lines=12..14 - return types.NewLineRange(start.(int), end.(int)) - -} - -func (p *parser) callonLineRanges41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges41(stack["start"], stack["end"]) -} - -func (c *current) onLineRanges60() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges60() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges60() -} - -func (c *current) onLineRanges58(singleline interface{}) (interface{}, error) { - // eg: lines=12 - return types.NewLineRange(singleline.(int), singleline.(int)) - -} - -func (p *parser) callonLineRanges58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges58(stack["singleline"]) -} - -func (c *current) onLineRanges36(other interface{}) (interface{}, error) { - return other, nil - -} - -func (p *parser) callonLineRanges36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges36(stack["other"]) -} - -func (c *current) onLineRanges5(first, others interface{}) (interface{}, error) { - return append([]interface{}{first}, others.([]interface{})...), nil - -} - -func (p *parser) callonLineRanges5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges5(stack["first"], stack["others"]) -} - -func (c *current) onLineRanges69() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges69() -} - -func (c *current) onLineRanges77() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges77() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges77() -} - -func (c *current) onLineRanges66(start, end interface{}) (interface{}, error) { - // eg: lines=12..14 - return types.NewLineRange(start.(int), end.(int)) - -} - -func (p *parser) callonLineRanges66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges66(stack["start"], stack["end"]) -} - -func (c *current) onLineRanges85() (interface{}, error) { - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLineRanges85() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges85() -} - -func (c *current) onLineRanges83(singleline interface{}) (interface{}, error) { - // eg: lines=12 - return types.NewLineRange(singleline.(int), singleline.(int)) - -} - -func (p *parser) callonLineRanges83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges83(stack["singleline"]) -} - -func (c *current) onLineRanges1(value interface{}) (interface{}, error) { - // must make sure that the whole content is parsed - return value, nil - -} - -func (p *parser) callonLineRanges1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLineRanges1(stack["value"]) -} - -func (c *current) onTagRanges11() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges11() -} - -func (c *current) onTagRanges17() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges17() -} - -func (c *current) onTagRanges20(stars interface{}) (bool, error) { - - // use a predicate to make sure that only `*` and `**` are allowed - return len(stars.(string)) <= 2, nil - -} - -func (p *parser) callonTagRanges20() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges20(stack["stars"]) -} - -func (c *current) onTagRanges14(stars interface{}) (interface{}, error) { - return stars, nil - -} - -func (p *parser) callonTagRanges14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges14(stack["stars"]) -} - -func (c *current) onTagRanges8(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), true) - -} - -func (p *parser) callonTagRanges8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges8(stack["tag"]) -} - -func (c *current) onTagRanges26() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges26() -} - -func (c *current) onTagRanges32() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges32() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges32() -} - -func (c *current) onTagRanges35(stars interface{}) (bool, error) { - - // use a predicate to make sure that only `*` and `**` are allowed - return len(stars.(string)) <= 2, nil - -} - -func (p *parser) callonTagRanges35() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges35(stack["stars"]) -} - -func (c *current) onTagRanges29(stars interface{}) (interface{}, error) { - return stars, nil - -} - -func (p *parser) callonTagRanges29() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges29(stack["stars"]) -} - -func (c *current) onTagRanges21(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), false) - -} - -func (p *parser) callonTagRanges21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges21(stack["tag"]) -} - -func (c *current) onTagRanges46() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges46() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges46() -} - -func (c *current) onTagRanges52() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges52() -} - -func (c *current) onTagRanges55(stars interface{}) (bool, error) { - - // use a predicate to make sure that only `*` and `**` are allowed - return len(stars.(string)) <= 2, nil - -} - -func (p *parser) callonTagRanges55() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges55(stack["stars"]) -} - -func (c *current) onTagRanges49(stars interface{}) (interface{}, error) { - return stars, nil - -} - -func (p *parser) callonTagRanges49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges49(stack["stars"]) -} - -func (c *current) onTagRanges43(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), true) - -} - -func (p *parser) callonTagRanges43() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges43(stack["tag"]) -} - -func (c *current) onTagRanges61() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges61() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges61() -} - -func (c *current) onTagRanges67() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonTagRanges67() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges67() -} - -func (c *current) onTagRanges70(stars interface{}) (bool, error) { - - // use a predicate to make sure that only `*` and `**` are allowed - return len(stars.(string)) <= 2, nil - -} - -func (p *parser) callonTagRanges70() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges70(stack["stars"]) -} - -func (c *current) onTagRanges64(stars interface{}) (interface{}, error) { - return stars, nil - -} - -func (p *parser) callonTagRanges64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges64(stack["stars"]) -} - -func (c *current) onTagRanges56(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), false) - -} - -func (p *parser) callonTagRanges56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges56(stack["tag"]) -} - -func (c *current) onTagRanges38(other interface{}) (interface{}, error) { - return other, nil - -} - -func (p *parser) callonTagRanges38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges38(stack["other"]) -} - -func (c *current) onTagRanges4(first, others interface{}) (interface{}, error) { - return append([]interface{}{first}, others.([]interface{})...), nil - -} - -func (p *parser) callonTagRanges4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges4(stack["first"], stack["others"]) -} - -func (c *current) onTagRanges1(value interface{}) (interface{}, error) { - // must make sure that the whole content is parsed - return value, nil - -} - -func (p *parser) callonTagRanges1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTagRanges1(stack["value"]) -} - -func (c *current) onIncludedFileLine11() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonIncludedFileLine11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine11() -} - -func (c *current) onIncludedFileLine10() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonIncludedFileLine10() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine10() -} - -func (c *current) onIncludedFileLine6(tag interface{}) (interface{}, error) { - return types.NewIncludedFileStartTag(tag.(string)) - -} - -func (p *parser) callonIncludedFileLine6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine6(stack["tag"]) -} - -func (c *current) onIncludedFileLine20() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonIncludedFileLine20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine20() -} - -func (c *current) onIncludedFileLine19() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonIncludedFileLine19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine19() -} - -func (c *current) onIncludedFileLine15(tag interface{}) (interface{}, error) { - return types.NewIncludedFileEndTag(tag.(string)) - -} - -func (p *parser) callonIncludedFileLine15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine15(stack["tag"]) -} - -func (c *current) onIncludedFileLine24() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonIncludedFileLine24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine24() -} - -func (c *current) onIncludedFileLine27() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonIncludedFileLine27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine27() -} - -func (c *current) onIncludedFileLine1(content interface{}) (interface{}, error) { - return types.NewIncludedFileLine(content.([]interface{})) - -} - -func (p *parser) callonIncludedFileLine1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIncludedFileLine1(stack["content"]) -} - -func (c *current) onDocumentFragment21() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment21() -} - -func (c *current) onDocumentFragment28() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment28() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment28() -} - -func (c *current) onDocumentFragment31() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment31() -} - -func (c *current) onDocumentFragment17(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentFragment17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment17(stack["name"]) -} - -func (c *current) onDocumentFragment42() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment42() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment42() -} - -func (c *current) onDocumentFragment49() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment49() -} - -func (c *current) onDocumentFragment52() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment52() -} - -func (c *current) onDocumentFragment38(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentFragment38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment38(stack["name"]) -} - -func (c *current) onDocumentFragment65() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment65() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment65() -} - -func (c *current) onDocumentFragment68() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment68() -} - -func (c *current) onDocumentFragment59() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment59() -} - -func (c *current) onDocumentFragment77() (bool, error) { - - return !c.isWithinDelimitedBlock(), nil - -} - -func (p *parser) callonDocumentFragment77() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment77() -} - -func (c *current) onDocumentFragment79() (interface{}, error) { - - // `=` is level 0, `==` is level 1, etc. - return (len(c.text) - 1), nil - -} - -func (p *parser) callonDocumentFragment79() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment79() -} - -func (c *current) onDocumentFragment82(level interface{}) (bool, error) { - - // use a predicate to make sure that only `=` (level 0) to `======` (level 5) are allowed - return level.(int) <= 5, nil - -} - -func (p *parser) callonDocumentFragment82() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment82(stack["level"]) -} - -func (c *current) onDocumentFragment83(level interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment83(stack["level"]) -} - -func (c *current) onDocumentFragment87() (interface{}, error) { - // can't have empty title, that may collide with example block delimiter (`====`) - return []interface{}{ - types.RawLine(c.text), - }, nil - -} - -func (p *parser) callonDocumentFragment87() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment87() -} - -func (c *current) onDocumentFragment91() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment91() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment91() -} - -func (c *current) onDocumentFragment75(level, title interface{}) (interface{}, error) { - return types.NewSection(level.(int), title.([]interface{})) - -} - -func (p *parser) callonDocumentFragment75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment75(stack["level"], stack["title"]) -} - -func (c *current) onDocumentFragment103() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment103() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment103() -} - -func (c *current) onDocumentFragment109() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment109() -} - -func (c *current) onDocumentFragment112() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment112() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment112() -} - -func (c *current) onDocumentFragment100(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment100() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment100(stack["delimiter"]) -} - -func (c *current) onDocumentFragment128() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment128() -} - -func (c *current) onDocumentFragment134() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment134() -} - -func (c *current) onDocumentFragment137() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment137() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment137() -} - -func (c *current) onDocumentFragment125(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment125() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment125(stack["delimiter"]) -} - -func (c *current) onDocumentFragment153() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment153() -} - -func (c *current) onDocumentFragment157() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment157() -} - -func (c *current) onDocumentFragment147(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment147() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment147(stack["content"]) -} - -func (c *current) onDocumentFragment121(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment121(stack["line"]) -} - -func (c *current) onDocumentFragment169() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment169() -} - -func (c *current) onDocumentFragment175() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment175() -} - -func (c *current) onDocumentFragment178() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment178() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment178() -} - -func (c *current) onDocumentFragment166(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment166(stack["delimiter"]) -} - -func (c *current) onDocumentFragment98(delimiter, content interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Comment, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment98(stack["delimiter"], stack["content"]) -} - -func (c *current) onDocumentFragment193() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment193() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment193() -} - -func (c *current) onDocumentFragment199() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment199() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment199() -} - -func (c *current) onDocumentFragment202() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment202() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment202() -} - -func (c *current) onDocumentFragment190(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment190() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment190(stack["delimiter"]) -} - -func (c *current) onDocumentFragment209(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment209() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment209(stack["start"]) -} - -func (c *current) onDocumentFragment221() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment221() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment221() -} - -func (c *current) onDocumentFragment227() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment227() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment227() -} - -func (c *current) onDocumentFragment230() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment230() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment230() -} - -func (c *current) onDocumentFragment218(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment218() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment218(stack["delimiter"]) -} - -func (c *current) onDocumentFragment237(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment237() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment237(stack["end"]) -} - -func (c *current) onDocumentFragment247() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment247() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment247() -} - -func (c *current) onDocumentFragment251() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment251() -} - -func (c *current) onDocumentFragment241(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment241() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment241(stack["content"]) -} - -func (c *current) onDocumentFragment212(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment212() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment212(stack["line"]) -} - -func (c *current) onDocumentFragment266() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment266() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment266() -} - -func (c *current) onDocumentFragment272() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment272() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment272() -} - -func (c *current) onDocumentFragment275() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment275() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment275() -} - -func (c *current) onDocumentFragment263(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment263() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment263(stack["delimiter"]) -} - -func (c *current) onDocumentFragment282(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment282() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment282(stack["end"]) -} - -func (c *current) onDocumentFragment187(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Example, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment187() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment187(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onDocumentFragment292() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment292() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment292() -} - -func (c *current) onDocumentFragment296() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment296() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment296() -} - -func (c *current) onDocumentFragment299() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment299() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment299() -} - -func (c *current) onDocumentFragment288(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonDocumentFragment288() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment288(stack["language"]) -} - -func (c *current) onDocumentFragment314() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment314() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment314() -} - -func (c *current) onDocumentFragment317() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment317() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment317() -} - -func (c *current) onDocumentFragment331() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment331() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment331() -} - -func (c *current) onDocumentFragment335() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment335() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment335() -} - -func (c *current) onDocumentFragment325(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment325() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment325(stack["content"]) -} - -func (c *current) onDocumentFragment308(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment308() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment308(stack["line"]) -} - -func (c *current) onDocumentFragment346() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment346() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment346() -} - -func (c *current) onDocumentFragment349() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment349() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment349() -} - -func (c *current) onDocumentFragment285(delimiter, content interface{}) (interface{}, error) { - // Markdown code with fences is a "listing/source" block in Asciidoc - b, err := types.NewDelimitedBlock(types.Listing, content.([]interface{})) - b.AddAttributes(delimiter.(*types.BlockDelimiter).Attributes) - return b, err - -} - -func (p *parser) callonDocumentFragment285() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment285(stack["delimiter"], stack["content"]) -} - -func (c *current) onDocumentFragment362() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment362() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment362() -} - -func (c *current) onDocumentFragment368() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment368() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment368() -} - -func (c *current) onDocumentFragment371() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment371() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment371() -} - -func (c *current) onDocumentFragment359(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment359() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment359(stack["delimiter"]) -} - -func (c *current) onDocumentFragment378(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment378() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment378(stack["start"]) -} - -func (c *current) onDocumentFragment390() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment390() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment390() -} - -func (c *current) onDocumentFragment396() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment396() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment396() -} - -func (c *current) onDocumentFragment399() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment399() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment399() -} - -func (c *current) onDocumentFragment387(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment387() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment387(stack["delimiter"]) -} - -func (c *current) onDocumentFragment406(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment406() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment406(stack["end"]) -} - -func (c *current) onDocumentFragment416() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment416() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment416() -} - -func (c *current) onDocumentFragment420() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment420() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment420() -} - -func (c *current) onDocumentFragment410(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment410() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment410(stack["content"]) -} - -func (c *current) onDocumentFragment381(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment381() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment381(stack["line"]) -} - -func (c *current) onDocumentFragment435() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment435() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment435() -} - -func (c *current) onDocumentFragment441() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment441() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment441() -} - -func (c *current) onDocumentFragment444() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment444() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment444() -} - -func (c *current) onDocumentFragment432(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment432() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment432(stack["delimiter"]) -} - -func (c *current) onDocumentFragment451(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment451() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment451(stack["end"]) -} - -func (c *current) onDocumentFragment356(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Fenced, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment356() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment356(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onDocumentFragment460() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment460() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment460() -} - -func (c *current) onDocumentFragment466() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment466() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment466() -} - -func (c *current) onDocumentFragment469() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment469() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment469() -} - -func (c *current) onDocumentFragment457(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment457() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment457(stack["delimiter"]) -} - -func (c *current) onDocumentFragment476(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment476() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment476(stack["start"]) -} - -func (c *current) onDocumentFragment488() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment488() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment488() -} - -func (c *current) onDocumentFragment494() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment494() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment494() -} - -func (c *current) onDocumentFragment497() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment497() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment497() -} - -func (c *current) onDocumentFragment485(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment485() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment485(stack["delimiter"]) -} - -func (c *current) onDocumentFragment504(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment504() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment504(stack["end"]) -} - -func (c *current) onDocumentFragment514() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment514() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment514() -} - -func (c *current) onDocumentFragment518() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment518() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment518() -} - -func (c *current) onDocumentFragment508(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment508() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment508(stack["content"]) -} - -func (c *current) onDocumentFragment479(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment479() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment479(stack["line"]) -} - -func (c *current) onDocumentFragment533() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment533() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment533() -} - -func (c *current) onDocumentFragment539() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment539() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment539() -} - -func (c *current) onDocumentFragment542() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment542() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment542() -} - -func (c *current) onDocumentFragment530(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment530() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment530(stack["delimiter"]) -} - -func (c *current) onDocumentFragment549(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment549() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment549(stack["end"]) -} - -func (c *current) onDocumentFragment454(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Listing, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment454() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment454(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onDocumentFragment558() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment558() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment558() -} - -func (c *current) onDocumentFragment564() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment564() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment564() -} - -func (c *current) onDocumentFragment567() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment567() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment567() -} - -func (c *current) onDocumentFragment555(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment555() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment555(stack["delimiter"]) -} - -func (c *current) onDocumentFragment574(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment574() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment574(stack["start"]) -} - -func (c *current) onDocumentFragment586() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment586() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment586() -} - -func (c *current) onDocumentFragment592() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment592() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment592() -} - -func (c *current) onDocumentFragment595() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment595() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment595() -} - -func (c *current) onDocumentFragment583(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment583() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment583(stack["delimiter"]) -} - -func (c *current) onDocumentFragment602(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment602() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment602(stack["end"]) -} - -func (c *current) onDocumentFragment612() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment612() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment612() -} - -func (c *current) onDocumentFragment616() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment616() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment616() -} - -func (c *current) onDocumentFragment606(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment606() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment606(stack["content"]) -} - -func (c *current) onDocumentFragment577(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment577() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment577(stack["line"]) -} - -func (c *current) onDocumentFragment631() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment631() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment631() -} - -func (c *current) onDocumentFragment637() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment637() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment637() -} - -func (c *current) onDocumentFragment640() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment640() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment640() -} - -func (c *current) onDocumentFragment628(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment628() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment628(stack["delimiter"]) -} - -func (c *current) onDocumentFragment647(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment647() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment647(stack["end"]) -} - -func (c *current) onDocumentFragment552(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Literal, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment552() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment552(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onDocumentFragment662() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment662() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment662() -} - -func (c *current) onDocumentFragment665() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment665() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment665() -} - -func (c *current) onDocumentFragment656() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment656() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment656() -} - -func (c *current) onDocumentFragment674() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment674() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment674() -} - -func (c *current) onDocumentFragment678() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment678() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment678() -} - -func (c *current) onDocumentFragment653(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment653() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment653(stack["content"]) -} - -func (c *current) onDocumentFragment697() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment697() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment697() -} - -func (c *current) onDocumentFragment700() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment700() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment700() -} - -func (c *current) onDocumentFragment691() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment691() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment691() -} - -func (c *current) onDocumentFragment709() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment709() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment709() -} - -func (c *current) onDocumentFragment713() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment713() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment713() -} - -func (c *current) onDocumentFragment688(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment688() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment688(stack["content"]) -} - -func (c *current) onDocumentFragment723() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonDocumentFragment723() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment723() -} - -func (c *current) onDocumentFragment726(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonDocumentFragment726() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment726(stack["content"]) -} - -func (c *current) onDocumentFragment728() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment728() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment728() -} - -func (c *current) onDocumentFragment720(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment720() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment720(stack["content"]) -} - -func (c *current) onDocumentFragment650(firstLine, otherLines interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.MarkdownQuote, append([]interface{}{firstLine}, otherLines.([]interface{})...)) - -} - -func (p *parser) callonDocumentFragment650() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment650(stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onDocumentFragment741() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment741() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment741() -} - -func (c *current) onDocumentFragment747() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment747() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment747() -} - -func (c *current) onDocumentFragment750() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment750() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment750() -} - -func (c *current) onDocumentFragment738(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment738() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment738(stack["delimiter"]) -} - -func (c *current) onDocumentFragment757(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment757() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment757(stack["start"]) -} - -func (c *current) onDocumentFragment769() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment769() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment769() -} - -func (c *current) onDocumentFragment775() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment775() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment775() -} - -func (c *current) onDocumentFragment778() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment778() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment778() -} - -func (c *current) onDocumentFragment766(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment766() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment766(stack["delimiter"]) -} - -func (c *current) onDocumentFragment785(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment785() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment785(stack["end"]) -} - -func (c *current) onDocumentFragment795() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment795() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment795() -} - -func (c *current) onDocumentFragment799() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment799() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment799() -} - -func (c *current) onDocumentFragment789(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment789() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment789(stack["content"]) -} - -func (c *current) onDocumentFragment760(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment760() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment760(stack["line"]) -} - -func (c *current) onDocumentFragment814() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment814() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment814() -} - -func (c *current) onDocumentFragment820() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment820() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment820() -} - -func (c *current) onDocumentFragment823() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment823() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment823() -} - -func (c *current) onDocumentFragment811(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment811() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment811(stack["delimiter"]) -} - -func (c *current) onDocumentFragment830(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment830() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment830(stack["end"]) -} - -func (c *current) onDocumentFragment735(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Passthrough, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment735() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment735(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onDocumentFragment839() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment839() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment839() -} - -func (c *current) onDocumentFragment845() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment845() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment845() -} - -func (c *current) onDocumentFragment848() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment848() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment848() -} - -func (c *current) onDocumentFragment836(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment836() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment836(stack["delimiter"]) -} - -func (c *current) onDocumentFragment855(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment855() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment855(stack["start"]) -} - -func (c *current) onDocumentFragment867() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment867() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment867() -} - -func (c *current) onDocumentFragment873() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment873() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment873() -} - -func (c *current) onDocumentFragment876() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment876() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment876() -} - -func (c *current) onDocumentFragment864(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment864() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment864(stack["delimiter"]) -} - -func (c *current) onDocumentFragment883(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment883() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment883(stack["end"]) -} - -func (c *current) onDocumentFragment893() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment893() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment893() -} - -func (c *current) onDocumentFragment897() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment897() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment897() -} - -func (c *current) onDocumentFragment887(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment887() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment887(stack["content"]) -} - -func (c *current) onDocumentFragment858(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment858() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment858(stack["line"]) -} - -func (c *current) onDocumentFragment912() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment912() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment912() -} - -func (c *current) onDocumentFragment918() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment918() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment918() -} - -func (c *current) onDocumentFragment921() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment921() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment921() -} - -func (c *current) onDocumentFragment909(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment909() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment909(stack["delimiter"]) -} - -func (c *current) onDocumentFragment928(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment928() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment928(stack["end"]) -} - -func (c *current) onDocumentFragment833(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Quote, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment833() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment833(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onDocumentFragment937() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment937() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment937() -} - -func (c *current) onDocumentFragment943() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment943() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment943() -} - -func (c *current) onDocumentFragment946() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment946() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment946() -} - -func (c *current) onDocumentFragment934(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment934() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment934(stack["delimiter"]) -} - -func (c *current) onDocumentFragment953(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment953() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment953(stack["start"]) -} - -func (c *current) onDocumentFragment965() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment965() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment965() -} - -func (c *current) onDocumentFragment971() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment971() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment971() -} - -func (c *current) onDocumentFragment974() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment974() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment974() -} - -func (c *current) onDocumentFragment962(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment962() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment962(stack["delimiter"]) -} - -func (c *current) onDocumentFragment981(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment981() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment981(stack["end"]) -} - -func (c *current) onDocumentFragment991() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment991() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment991() -} - -func (c *current) onDocumentFragment995() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment995() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment995() -} - -func (c *current) onDocumentFragment985(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment985() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment985(stack["content"]) -} - -func (c *current) onDocumentFragment956(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment956() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment956(stack["line"]) -} - -func (c *current) onDocumentFragment1010() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1010() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1010() -} - -func (c *current) onDocumentFragment1016() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1016() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1016() -} - -func (c *current) onDocumentFragment1019() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1019() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1019() -} - -func (c *current) onDocumentFragment1007(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentFragment1007() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1007(stack["delimiter"]) -} - -func (c *current) onDocumentFragment1026(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonDocumentFragment1026() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1026(stack["end"]) -} - -func (c *current) onDocumentFragment931(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Sidebar, content.([]interface{})) - -} - -func (p *parser) callonDocumentFragment931() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment931(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onDocumentFragment1040() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1040() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1040() -} - -func (c *current) onDocumentFragment1043() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1043() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1043() -} - -func (c *current) onDocumentFragment1051() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1051() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1051() -} - -func (c *current) onDocumentFragment1029() (interface{}, error) { - - return types.NewThematicBreak() - -} - -func (p *parser) callonDocumentFragment1029() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1029() -} - -func (c *current) onDocumentFragment1063() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1063() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1063() -} - -func (c *current) onDocumentFragment1066() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1066() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1066() -} - -func (c *current) onDocumentFragment1083() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1083() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1083() -} - -func (c *current) onDocumentFragment1089() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1089() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1089() -} - -func (c *current) onDocumentFragment1087(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - -} - -func (p *parser) callonDocumentFragment1087() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1087(stack["content"]) -} - -func (c *current) onDocumentFragment1079(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonDocumentFragment1079() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1079(stack["content"]) -} - -func (c *current) onDocumentFragment1093() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1093() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1093() -} - -func (c *current) onDocumentFragment1107() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1107() -} - -func (c *current) onDocumentFragment1110() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1110() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1110() -} - -func (c *current) onDocumentFragment1101() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment1101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1101() -} - -func (c *current) onDocumentFragment1075(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - -} - -func (p *parser) callonDocumentFragment1075() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1075(stack["cells"]) -} - -func (c *current) onDocumentFragment1127() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1127() -} - -func (c *current) onDocumentFragment1130() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1130() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1130() -} - -func (c *current) onDocumentFragment1151() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1151() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1151() -} - -func (c *current) onDocumentFragment1154() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1154() -} - -func (c *current) onDocumentFragment1170() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1170() -} - -func (c *current) onDocumentFragment1173() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1173() -} - -func (c *current) onDocumentFragment1164() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment1164() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1164() -} - -func (c *current) onDocumentFragment1182() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1182() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1182() -} - -func (c *current) onDocumentFragment1188() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1188() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1188() -} - -func (c *current) onDocumentFragment1186(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - -} - -func (p *parser) callonDocumentFragment1186() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1186(stack["content"]) -} - -func (c *current) onDocumentFragment1144(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonDocumentFragment1144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1144(stack["content"]) -} - -func (c *current) onDocumentFragment1192() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1192() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1192() -} - -func (c *current) onDocumentFragment1141(cell interface{}) (interface{}, error) { - return cell, nil - -} - -func (p *parser) callonDocumentFragment1141() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1141(stack["cell"]) -} - -func (c *current) onDocumentFragment1207() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1207() -} - -func (c *current) onDocumentFragment1210() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1210() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1210() -} - -func (c *current) onDocumentFragment1201() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment1201() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1201() -} - -func (c *current) onDocumentFragment1222() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1222() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1222() -} - -func (c *current) onDocumentFragment1225() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1225() -} - -func (c *current) onDocumentFragment1120(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - -} - -func (p *parser) callonDocumentFragment1120() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1120(stack["cells"]) -} - -func (c *current) onDocumentFragment1241() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1241() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1241() -} - -func (c *current) onDocumentFragment1244() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1244() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1244() -} - -func (c *current) onDocumentFragment1262() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1262() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1262() -} - -func (c *current) onDocumentFragment1265() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1265() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1265() -} - -func (c *current) onDocumentFragment1281() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1281() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1281() -} - -func (c *current) onDocumentFragment1284() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1284() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1284() -} - -func (c *current) onDocumentFragment1275() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment1275() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1275() -} - -func (c *current) onDocumentFragment1293() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1293() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1293() -} - -func (c *current) onDocumentFragment1299() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1299() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1299() -} - -func (c *current) onDocumentFragment1297(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - -} - -func (p *parser) callonDocumentFragment1297() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1297(stack["content"]) -} - -func (c *current) onDocumentFragment1255(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonDocumentFragment1255() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1255(stack["content"]) -} - -func (c *current) onDocumentFragment1303() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1303() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1303() -} - -func (c *current) onDocumentFragment1317() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1317() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1317() -} - -func (c *current) onDocumentFragment1320() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1320() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1320() -} - -func (c *current) onDocumentFragment1311() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentFragment1311() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1311() -} - -func (c *current) onDocumentFragment1234(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - -} - -func (p *parser) callonDocumentFragment1234() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1234(stack["cells"]) -} - -func (c *current) onDocumentFragment1331() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1331() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1331() -} - -func (c *current) onDocumentFragment1334() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1334() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1334() -} - -func (c *current) onDocumentFragment1059(header, rows interface{}) (interface{}, error) { - return types.NewTable(header, rows.([]interface{})) - -} - -func (p *parser) callonDocumentFragment1059() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1059(stack["header"], stack["rows"]) -} - -func (c *current) onDocumentFragment1349() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1349() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1349() -} - -func (c *current) onDocumentFragment1353() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1353() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1353() -} - -func (c *current) onDocumentFragment1343(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonDocumentFragment1343() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1343(stack["content"]) -} - -func (c *current) onDocumentFragment1364() (interface{}, error) { - return types.Tip, nil -} - -func (p *parser) callonDocumentFragment1364() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1364() -} - -func (c *current) onDocumentFragment1366() (interface{}, error) { - return types.Note, nil -} - -func (p *parser) callonDocumentFragment1366() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1366() -} - -func (c *current) onDocumentFragment1368() (interface{}, error) { - return types.Important, nil -} - -func (p *parser) callonDocumentFragment1368() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1368() -} - -func (c *current) onDocumentFragment1370() (interface{}, error) { - return types.Warning, nil -} - -func (p *parser) callonDocumentFragment1370() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1370() -} - -func (c *current) onDocumentFragment1372() (interface{}, error) { - return types.Caution, nil -} - -func (p *parser) callonDocumentFragment1372() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1372() -} - -func (c *current) onDocumentFragment1379() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonDocumentFragment1379() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1379() -} - -func (c *current) onDocumentFragment1382(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonDocumentFragment1382() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1382(stack["content"]) -} - -func (c *current) onDocumentFragment1384() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1384() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1384() -} - -func (c *current) onDocumentFragment1376(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment1376() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1376(stack["content"]) -} - -func (c *current) onDocumentFragment1399() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1399() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1399() -} - -func (c *current) onDocumentFragment1401() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1401() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1401() -} - -func (c *current) onDocumentFragment1414() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1414() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1414() -} - -func (c *current) onDocumentFragment1418() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1418() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1418() -} - -func (c *current) onDocumentFragment1408(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonDocumentFragment1408() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1408(stack["content"]) -} - -func (c *current) onDocumentFragment1428() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonDocumentFragment1428() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1428() -} - -func (c *current) onDocumentFragment1431(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonDocumentFragment1431() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1431(stack["content"]) -} - -func (c *current) onDocumentFragment1433() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1433() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1433() -} - -func (c *current) onDocumentFragment1425(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment1425() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1425(stack["content"]) -} - -func (c *current) onDocumentFragment1393(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentFragment1393() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1393(stack["line"]) -} - -func (c *current) onDocumentFragment1360(kind, firstLine, otherLines interface{}) (interface{}, error) { - - return types.NewAdmonitionParagraph(kind.(string), append([]interface{}{firstLine}, otherLines.([]interface{})...)) - -} - -func (p *parser) callonDocumentFragment1360() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1360(stack["kind"], stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onDocumentFragment1448() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1448() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1448() -} - -func (c *current) onDocumentFragment1446() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1446() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1446() -} - -func (c *current) onDocumentFragment1453(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil - -} - -func (p *parser) callonDocumentFragment1453() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1453(stack["content"]) -} - -func (c *current) onDocumentFragment1455() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1455() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1455() -} - -func (c *current) onDocumentFragment1443(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment1443() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1443(stack["content"]) -} - -func (c *current) onDocumentFragment1471() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1471() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1471() -} - -func (c *current) onDocumentFragment1475() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1475() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1475() -} - -func (c *current) onDocumentFragment1465(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonDocumentFragment1465() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1465(stack["content"]) -} - -func (c *current) onDocumentFragment1485() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonDocumentFragment1485() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1485() -} - -func (c *current) onDocumentFragment1488(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonDocumentFragment1488() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1488(stack["content"]) -} - -func (c *current) onDocumentFragment1490() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1490() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1490() -} - -func (c *current) onDocumentFragment1482(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment1482() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1482(stack["content"]) -} - -func (c *current) onDocumentFragment1440(firstLine, otherLines interface{}) (interface{}, error) { - - return types.NewLiteralParagraph(types.LiteralBlockWithSpacesOnFirstLine, append([]interface{}{firstLine}, otherLines.([]interface{})...)) - -} - -func (p *parser) callonDocumentFragment1440() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1440(stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onDocumentFragment1499() (bool, error) { - return c.isFrontMatterAllowed(), nil - -} - -func (p *parser) callonDocumentFragment1499() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1499() -} - -func (c *current) onDocumentFragment1505() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1505() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1505() -} - -func (c *current) onDocumentFragment1508() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1508() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1508() -} - -func (c *current) onDocumentFragment1525() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1525() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1525() -} - -func (c *current) onDocumentFragment1528() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1528() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1528() -} - -func (c *current) onDocumentFragment1517() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1517() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1517() -} - -func (c *current) onDocumentFragment1538() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentFragment1538() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1538() -} - -func (c *current) onDocumentFragment1541() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1541() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1541() -} - -func (c *current) onDocumentFragment1501(content interface{}) (interface{}, error) { - return types.NewYamlFrontMatter(content.(string)) -} - -func (p *parser) callonDocumentFragment1501() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1501(stack["content"]) -} - -func (c *current) onDocumentFragment1497(frontmatter interface{}) (interface{}, error) { - return frontmatter, nil - -} - -func (p *parser) callonDocumentFragment1497() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1497(stack["frontmatter"]) -} - -func (c *current) onDocumentFragment1(attributes, element interface{}) (interface{}, error) { - c.disableFrontMatterRule() // not allowed as soon as a single element is found - c.disableDocumentHeaderRule() // not allowed anymore, based on element that was found - - if element, ok := element.(types.WithAttributes); ok && attributes != nil { - element.AddAttributes(attributes.(types.Attributes)) - } - return element, nil - -} - -func (p *parser) callonDocumentFragment1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1(stack["attributes"], stack["element"]) -} - -func (c *current) onDelimitedBlockElements10() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDelimitedBlockElements10() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDelimitedBlockElements10() -} - -func (c *current) onDelimitedBlockElements6(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonDelimitedBlockElements6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDelimitedBlockElements6(stack["ref"]) -} - -func (c *current) onDelimitedBlockElements1(elements interface{}) (interface{}, error) { - return elements, nil - -} - -func (p *parser) callonDelimitedBlockElements1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDelimitedBlockElements1(stack["elements"]) -} - -func (c *current) onAttributeDeclaration5() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclaration5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclaration5() -} - -func (c *current) onAttributeDeclaration15() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclaration15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclaration15() -} - -func (c *current) onAttributeDeclaration13(value interface{}) (interface{}, error) { - return value, nil - -} - -func (p *parser) callonAttributeDeclaration13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclaration13(stack["value"]) -} - -func (c *current) onAttributeDeclaration21() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonAttributeDeclaration21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclaration21() -} - -func (c *current) onAttributeDeclaration1(name, value interface{}) (interface{}, error) { - return types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace), string(c.text)) - -} - -func (p *parser) callonAttributeDeclaration1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclaration1(stack["name"], stack["value"]) -} - -func (c *current) onAttributeDeclarationValue14() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue14() -} - -func (c *current) onAttributeDeclarationValue17() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonAttributeDeclarationValue17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue17() -} - -func (c *current) onAttributeDeclarationValue26() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonAttributeDeclarationValue26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue26() -} - -func (c *current) onAttributeDeclarationValue29() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue29() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue29() -} - -func (c *current) onAttributeDeclarationValue33() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonAttributeDeclarationValue33() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue33() -} - -func (c *current) onAttributeDeclarationValue40() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue40() -} - -func (c *current) onAttributeDeclarationValue52() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue52() -} - -func (c *current) onAttributeDeclarationValue54() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonAttributeDeclarationValue54() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue54() -} - -func (c *current) onAttributeDeclarationValue47(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonAttributeDeclarationValue47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue47(stack["start"]) -} - -func (c *current) onAttributeDeclarationValue36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonAttributeDeclarationValue36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue36(stack["name"], stack["start"]) -} - -func (c *current) onAttributeDeclarationValue62() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue62() -} - -func (c *current) onAttributeDeclarationValue74() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue74() -} - -func (c *current) onAttributeDeclarationValue76() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonAttributeDeclarationValue76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue76() -} - -func (c *current) onAttributeDeclarationValue69(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonAttributeDeclarationValue69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue69(stack["start"]) -} - -func (c *current) onAttributeDeclarationValue58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonAttributeDeclarationValue58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue58(stack["name"], stack["start"]) -} - -func (c *current) onAttributeDeclarationValue84() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue84() -} - -func (c *current) onAttributeDeclarationValue80(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonAttributeDeclarationValue80() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue80(stack["name"]) -} - -func (c *current) onAttributeDeclarationValue94() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue94() -} - -func (c *current) onAttributeDeclarationValue90(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonAttributeDeclarationValue90() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue90(stack["name"]) -} - -func (c *current) onAttributeDeclarationValue31(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonAttributeDeclarationValue31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue31(stack["element"]) -} - -func (c *current) onAttributeDeclarationValue100() (interface{}, error) { - // standalone '{' - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonAttributeDeclarationValue100() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue100() -} - -func (c *current) onAttributeDeclarationValue7(element interface{}) (interface{}, error) { - - return element, nil - -} - -func (p *parser) callonAttributeDeclarationValue7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue7(stack["element"]) -} - -func (c *current) onAttributeDeclarationValue4(elements interface{}) (interface{}, error) { - return elements.([]interface{}), nil - -} - -func (p *parser) callonAttributeDeclarationValue4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue4(stack["elements"]) -} - -func (c *current) onAttributeDeclarationValue107() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonAttributeDeclarationValue107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue107() -} - -func (c *current) onAttributeDeclarationValue113() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeDeclarationValue113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue113() -} - -func (c *current) onAttributeDeclarationValue104(elements interface{}) (interface{}, error) { - return elements, nil - -} - -func (p *parser) callonAttributeDeclarationValue104() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue104(stack["elements"]) -} - -func (c *current) onAttributeDeclarationValue1(elements, otherElements interface{}) (interface{}, error) { - if otherElements, ok := otherElements.([]interface{}); ok { - return types.Reduce(append(elements.([]interface{}), otherElements...), strings.TrimSpace), nil - } - return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil - -} - -func (p *parser) callonAttributeDeclarationValue1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeDeclarationValue1(stack["elements"], stack["otherElements"]) -} - -func (c *current) onBlockAttributes16() (interface{}, error) { - // spaces, commas and dots are allowed in this syntax - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonBlockAttributes16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes16() -} - -func (c *current) onBlockAttributes23() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonBlockAttributes23() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes23() -} - -func (c *current) onBlockAttributes19(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonBlockAttributes19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes19(stack["ref"]) -} - -func (c *current) onBlockAttributes29() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonBlockAttributes29() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes29() -} - -func (c *current) onBlockAttributes36() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes36() -} - -func (c *current) onBlockAttributes48() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes48() -} - -func (c *current) onBlockAttributes50() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonBlockAttributes50() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes50() -} - -func (c *current) onBlockAttributes43(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonBlockAttributes43() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes43(stack["start"]) -} - -func (c *current) onBlockAttributes32(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonBlockAttributes32() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes32(stack["name"], stack["start"]) -} - -func (c *current) onBlockAttributes58() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes58() -} - -func (c *current) onBlockAttributes70() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes70() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes70() -} - -func (c *current) onBlockAttributes72() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonBlockAttributes72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes72() -} - -func (c *current) onBlockAttributes65(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonBlockAttributes65() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes65(stack["start"]) -} - -func (c *current) onBlockAttributes54(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonBlockAttributes54() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes54(stack["name"], stack["start"]) -} - -func (c *current) onBlockAttributes80() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes80() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes80() -} - -func (c *current) onBlockAttributes76(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonBlockAttributes76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes76(stack["name"]) -} - -func (c *current) onBlockAttributes90() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes90() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes90() -} - -func (c *current) onBlockAttributes86(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonBlockAttributes86() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes86(stack["name"]) -} - -func (c *current) onBlockAttributes27(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonBlockAttributes27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes27(stack["element"]) -} - -func (c *current) onBlockAttributes96() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonBlockAttributes96() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes96() -} - -func (c *current) onBlockAttributes12(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil - -} - -func (p *parser) callonBlockAttributes12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes12(stack["elements"]) -} - -func (c *current) onBlockAttributes8(id interface{}) (interface{}, error) { - return types.NewIDAttribute(id) - -} - -func (p *parser) callonBlockAttributes8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes8(stack["id"]) -} - -func (c *current) onBlockAttributes100() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes100() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes100() -} - -func (c *current) onBlockAttributes103() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonBlockAttributes103() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes103() -} - -func (c *current) onBlockAttributes117() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes117() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes117() -} - -func (c *current) onBlockAttributes120() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonBlockAttributes120() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes120() -} - -func (c *current) onBlockAttributes111() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonBlockAttributes111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes111() -} - -func (c *current) onBlockAttributes5(anchor interface{}) (interface{}, error) { - return anchor, nil - -} - -func (p *parser) callonBlockAttributes5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes5(stack["anchor"]) -} - -func (c *current) onBlockAttributes141() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes141() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes141() -} - -func (c *current) onBlockAttributes148() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes148() -} - -func (c *current) onBlockAttributes144(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonBlockAttributes144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes144(stack["name"]) -} - -func (c *current) onBlockAttributes158() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes158() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes158() -} - -func (c *current) onBlockAttributes154(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonBlockAttributes154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes154(stack["name"]) -} - -func (c *current) onBlockAttributes164() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes164() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes164() -} - -func (c *current) onBlockAttributes134(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil - -} - -func (p *parser) callonBlockAttributes134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes134(stack["elements"]) -} - -func (c *current) onBlockAttributes130(title interface{}) (interface{}, error) { - return types.NewTitleAttribute(title) - -} - -func (p *parser) callonBlockAttributes130() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes130(stack["title"]) -} - -func (c *current) onBlockAttributes167() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes167() -} - -func (c *current) onBlockAttributes170() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonBlockAttributes170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes170() -} - -func (c *current) onBlockAttributes184() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes184() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes184() -} - -func (c *current) onBlockAttributes187() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonBlockAttributes187() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes187() -} - -func (c *current) onBlockAttributes178() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonBlockAttributes178() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes178() -} - -func (c *current) onBlockAttributes127(title interface{}) (interface{}, error) { - return title, nil - -} - -func (p *parser) callonBlockAttributes127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes127(stack["title"]) -} - -func (c *current) onBlockAttributes199() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes199() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes199() -} - -func (c *current) onBlockAttributes202() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonBlockAttributes202() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes202() -} - -func (c *current) onBlockAttributes216() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonBlockAttributes216() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes216() -} - -func (c *current) onBlockAttributes219() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonBlockAttributes219() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes219() -} - -func (c *current) onBlockAttributes210() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonBlockAttributes210() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes210() -} - -func (c *current) onBlockAttributes194(attributes interface{}) (interface{}, error) { - return attributes, nil - -} - -func (p *parser) callonBlockAttributes194() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes194(stack["attributes"]) -} - -func (c *current) onBlockAttributes1(attributes interface{}) (interface{}, error) { - // c.unsetCurrentSubstitution() - return types.MergeAttributes(attributes.([]interface{})...) - -} - -func (p *parser) callonBlockAttributes1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes1(stack["attributes"]) -} - -func (c *current) onInlineAttributes6(attribute interface{}) (interface{}, error) { - return attribute, nil - -} - -func (p *parser) callonInlineAttributes6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineAttributes6(stack["attribute"]) -} - -func (c *current) onInlineAttributes1(attributes interface{}) (interface{}, error) { - return types.NewAttributes(attributes.([]interface{})...) - -} - -func (p *parser) callonInlineAttributes1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineAttributes1(stack["attributes"]) -} - -func (c *current) onLongHandAttributes1(firstPositionalAttributes, otherAttributes interface{}) (interface{}, error) { - attributes := []interface{}{} - if firstPositionalAttributes != nil { - attributes = append(attributes, firstPositionalAttributes.([]interface{})...) - } - if len(otherAttributes.([]interface{})) > 0 { - attributes = append(attributes, otherAttributes.([]interface{})...) - } - return types.NewAttributes(attributes...) - -} - -func (p *parser) callonLongHandAttributes1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLongHandAttributes1(stack["firstPositionalAttributes"], stack["otherAttributes"]) -} - -func (c *current) onFirstPositionalAttributes8(extra interface{}) (interface{}, error) { - return extra, nil - -} - -func (p *parser) callonFirstPositionalAttributes8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFirstPositionalAttributes8(stack["extra"]) -} - -func (c *current) onFirstPositionalAttributes23() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonFirstPositionalAttributes23() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFirstPositionalAttributes23() -} - -func (c *current) onFirstPositionalAttributes25(main, extras interface{}) (bool, error) { - // make sure there was a match - return main != nil || len(extras.([]interface{})) > 0, nil - -} - -func (p *parser) callonFirstPositionalAttributes25() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFirstPositionalAttributes25(stack["main"], stack["extras"]) -} - -func (c *current) onFirstPositionalAttributes1(main, extras interface{}) (interface{}, error) { - attrs := []interface{}{} - if main != nil { - attrs = append(attrs, main) - } - if len(extras.([]interface{})) > 0 { - attrs = append(attrs, extras.([]interface{})...) - } - return attrs, nil - -} - -func (p *parser) callonFirstPositionalAttributes1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFirstPositionalAttributes1(stack["main"], stack["extras"]) -} - -func (c *current) onShortHandIDAttribute1(id interface{}) (interface{}, error) { - return types.NewIDAttribute(id) - -} - -func (p *parser) callonShortHandIDAttribute1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandIDAttribute1(stack["id"]) -} - -func (c *current) onShortHandAttribute1(value interface{}) (interface{}, error) { - return types.NewPositionalAttribute(value) - -} - -func (p *parser) callonShortHandAttribute1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttribute1(stack["value"]) -} - -func (c *current) onShortHandDotRoleAttribute1(role interface{}) (interface{}, error) { - return types.NewRoleAttribute(role) - -} - -func (p *parser) callonShortHandDotRoleAttribute1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandDotRoleAttribute1(stack["role"]) -} - -func (c *current) onShortHandOptionAttribute1(option interface{}) (interface{}, error) { - return types.NewOptionAttribute(option) - -} - -func (p *parser) callonShortHandOptionAttribute1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandOptionAttribute1(stack["option"]) -} - -func (c *current) onShortHandAttributeValue9() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonShortHandAttributeValue9() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue9() -} - -func (c *current) onShortHandAttributeValue11() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonShortHandAttributeValue11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue11() -} - -func (c *current) onShortHandAttributeValue13() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonShortHandAttributeValue13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue13() -} - -func (c *current) onShortHandAttributeValue15() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonShortHandAttributeValue15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue15() -} - -func (c *current) onShortHandAttributeValue17() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonShortHandAttributeValue17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue17() -} - -func (c *current) onShortHandAttributeValue22() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonShortHandAttributeValue22() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue22() -} - -func (c *current) onShortHandAttributeValue29() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortHandAttributeValue29() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue29() -} - -func (c *current) onShortHandAttributeValue41() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortHandAttributeValue41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue41() -} - -func (c *current) onShortHandAttributeValue43() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonShortHandAttributeValue43() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue43() -} - -func (c *current) onShortHandAttributeValue36(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonShortHandAttributeValue36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue36(stack["start"]) -} - -func (c *current) onShortHandAttributeValue25(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonShortHandAttributeValue25() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue25(stack["name"], stack["start"]) -} - -func (c *current) onShortHandAttributeValue51() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortHandAttributeValue51() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue51() -} - -func (c *current) onShortHandAttributeValue63() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortHandAttributeValue63() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue63() -} - -func (c *current) onShortHandAttributeValue65() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonShortHandAttributeValue65() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue65() -} - -func (c *current) onShortHandAttributeValue58(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonShortHandAttributeValue58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue58(stack["start"]) -} - -func (c *current) onShortHandAttributeValue47(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonShortHandAttributeValue47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue47(stack["name"], stack["start"]) -} - -func (c *current) onShortHandAttributeValue73() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortHandAttributeValue73() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue73() -} - -func (c *current) onShortHandAttributeValue69(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonShortHandAttributeValue69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue69(stack["name"]) -} - -func (c *current) onShortHandAttributeValue83() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortHandAttributeValue83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue83() -} - -func (c *current) onShortHandAttributeValue79(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonShortHandAttributeValue79() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue79(stack["name"]) -} - -func (c *current) onShortHandAttributeValue20(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonShortHandAttributeValue20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue20(stack["element"]) -} - -func (c *current) onShortHandAttributeValue89() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonShortHandAttributeValue89() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue89() -} - -func (c *current) onShortHandAttributeValue95() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortHandAttributeValue95() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue95() -} - -func (c *current) onShortHandAttributeValue4(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil - -} - -func (p *parser) callonShortHandAttributeValue4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortHandAttributeValue4(stack["elements"]) -} - -func (c *current) onPositionalAttribute11() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonPositionalAttribute11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPositionalAttribute11() -} - -func (c *current) onPositionalAttribute2(value interface{}) (interface{}, error) { - // TODO: see if we can just use `((",")? / &"]")` instead (ie, no need to check for Space*) - return types.NewPositionalAttribute(value) - -} - -func (p *parser) callonPositionalAttribute2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPositionalAttribute2(stack["value"]) -} - -func (c *current) onPositionalAttribute20() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonPositionalAttribute20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPositionalAttribute20() -} - -func (c *current) onPositionalAttribute26() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonPositionalAttribute26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPositionalAttribute26() -} - -func (c *current) onPositionalAttribute30(value interface{}) (bool, error) { - // here we can't rely on `c.text` if the content is empty - // (in such a case, `c.text` contains the char sequence of the previous - // rule that matched) - return !types.AllNilEntries(value.([]interface{})), nil - -} - -func (p *parser) callonPositionalAttribute30() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPositionalAttribute30(stack["value"]) -} - -func (c *current) onPositionalAttribute15(value interface{}) (interface{}, error) { - - return types.NewPositionalAttribute(nil) - -} - -func (p *parser) callonPositionalAttribute15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPositionalAttribute15(stack["value"]) -} - -func (c *current) onNamedAttribute7() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonNamedAttribute7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onNamedAttribute7() -} - -func (c *current) onNamedAttribute12() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonNamedAttribute12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onNamedAttribute12() -} - -func (c *current) onNamedAttribute4() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil - -} - -func (p *parser) callonNamedAttribute4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onNamedAttribute4() -} - -func (c *current) onNamedAttribute16() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonNamedAttribute16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onNamedAttribute16() -} - -func (c *current) onNamedAttribute24() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonNamedAttribute24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onNamedAttribute24() -} - -func (c *current) onNamedAttribute1(key, value interface{}) (interface{}, error) { - // TODO: include `,` or expect `]` - return types.NewNamedAttribute(key.(string), value) - -} - -func (p *parser) callonNamedAttribute1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onNamedAttribute1(stack["key"], stack["value"]) -} - -func (c *current) onAttributeValue12() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonAttributeValue12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeValue12() -} - -func (c *current) onAttributeValue1(value interface{}) (interface{}, error) { - return value, nil - -} - -func (p *parser) callonAttributeValue1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onAttributeValue1(stack["value"]) -} - -func (c *current) onSingleQuotedAttributeValue1(content interface{}) (interface{}, error) { - return content, nil - -} - -func (p *parser) callonSingleQuotedAttributeValue1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValue1(stack["content"]) -} - -func (c *current) onSingleQuotedAttributeValueContent5() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent5() -} - -func (c *current) onSingleQuotedAttributeValueContent8() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent8() -} - -func (c *current) onSingleQuotedAttributeValueContent11() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonSingleQuotedAttributeValueContent11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent11() -} - -func (c *current) onSingleQuotedAttributeValueContent13() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonSingleQuotedAttributeValueContent13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent13() -} - -func (c *current) onSingleQuotedAttributeValueContent15() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonSingleQuotedAttributeValueContent15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent15() -} - -func (c *current) onSingleQuotedAttributeValueContent17() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonSingleQuotedAttributeValueContent17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent17() -} - -func (c *current) onSingleQuotedAttributeValueContent21() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent21() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent21() -} - -func (c *current) onSingleQuotedAttributeValueContent28() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent28() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent28() -} - -func (c *current) onSingleQuotedAttributeValueContent40() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent40() -} - -func (c *current) onSingleQuotedAttributeValueContent42() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuotedAttributeValueContent42() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent42() -} - -func (c *current) onSingleQuotedAttributeValueContent35(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent35(stack["start"]) -} - -func (c *current) onSingleQuotedAttributeValueContent24(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonSingleQuotedAttributeValueContent24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent24(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuotedAttributeValueContent50() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent50() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent50() -} - -func (c *current) onSingleQuotedAttributeValueContent62() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent62() -} - -func (c *current) onSingleQuotedAttributeValueContent64() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuotedAttributeValueContent64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent64() -} - -func (c *current) onSingleQuotedAttributeValueContent57(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent57() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent57(stack["start"]) -} - -func (c *current) onSingleQuotedAttributeValueContent46(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonSingleQuotedAttributeValueContent46() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent46(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuotedAttributeValueContent72() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent72() -} - -func (c *current) onSingleQuotedAttributeValueContent68(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuotedAttributeValueContent68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent68(stack["name"]) -} - -func (c *current) onSingleQuotedAttributeValueContent82() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent82() -} - -func (c *current) onSingleQuotedAttributeValueContent78(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonSingleQuotedAttributeValueContent78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent78(stack["name"]) -} - -func (c *current) onSingleQuotedAttributeValueContent19(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent19(stack["element"]) -} - -func (c *current) onSingleQuotedAttributeValueContent88() (interface{}, error) { - - return types.NewStringElement(`'`) // escaped single quote - -} - -func (p *parser) callonSingleQuotedAttributeValueContent88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent88() -} - -func (c *current) onSingleQuotedAttributeValueContent92() (interface{}, error) { - // quoted string delimiters or standalone backslash - return types.NewStringElement(string(c.text)) // keep as-is for now - -} - -func (p *parser) callonSingleQuotedAttributeValueContent92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent92() -} - -func (c *current) onSingleQuotedAttributeValueContent94() (interface{}, error) { - // = and , signs are allowed within '' quoted values - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuotedAttributeValueContent94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent94() -} - -func (c *current) onSingleQuotedAttributeValueContent1(elements interface{}) (interface{}, error) { - return types.Reduce(elements), nil - -} - -func (p *parser) callonSingleQuotedAttributeValueContent1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuotedAttributeValueContent1(stack["elements"]) -} - -func (c *current) onDoubleQuotedAttributeValue13() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValue13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValue13() -} - -func (c *current) onDoubleQuotedAttributeValue1(content interface{}) (interface{}, error) { - return content, nil - -} - -func (p *parser) callonDoubleQuotedAttributeValue1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValue1(stack["content"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent5() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent5() -} - -func (c *current) onDoubleQuotedAttributeValueContent8() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent8() -} - -func (c *current) onDoubleQuotedAttributeValueContent11() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent11() -} - -func (c *current) onDoubleQuotedAttributeValueContent13() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent13() -} - -func (c *current) onDoubleQuotedAttributeValueContent15() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent15() -} - -func (c *current) onDoubleQuotedAttributeValueContent17() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent17() -} - -func (c *current) onDoubleQuotedAttributeValueContent21() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent21() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent21() -} - -func (c *current) onDoubleQuotedAttributeValueContent28() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent28() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent28() -} - -func (c *current) onDoubleQuotedAttributeValueContent40() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent40() -} - -func (c *current) onDoubleQuotedAttributeValueContent42() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent42() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent42() -} - -func (c *current) onDoubleQuotedAttributeValueContent35(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent35(stack["start"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent24(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonDoubleQuotedAttributeValueContent24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent24(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent50() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent50() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent50() -} - -func (c *current) onDoubleQuotedAttributeValueContent62() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent62() -} - -func (c *current) onDoubleQuotedAttributeValueContent64() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent64() -} - -func (c *current) onDoubleQuotedAttributeValueContent57(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent57() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent57(stack["start"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent46(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonDoubleQuotedAttributeValueContent46() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent46(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent72() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent72() -} - -func (c *current) onDoubleQuotedAttributeValueContent68(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent68(stack["name"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent82() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent82() -} - -func (c *current) onDoubleQuotedAttributeValueContent78(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent78(stack["name"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent19(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent19(stack["element"]) -} - -func (c *current) onDoubleQuotedAttributeValueContent88() (interface{}, error) { - - return types.NewStringElement(`"`) // escaped double quote - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent88() -} - -func (c *current) onDoubleQuotedAttributeValueContent93() (interface{}, error) { - // quoted string delimiters or standalone backslash or standalone backtick - return types.NewStringElement(string(c.text)) // keep as-is for now - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent93() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent93() -} - -func (c *current) onDoubleQuotedAttributeValueContent95() (interface{}, error) { - // = and , signs are allowed within " quoted values - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent95() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent95() -} - -func (c *current) onDoubleQuotedAttributeValueContent1(elements interface{}) (interface{}, error) { - return types.Reduce(elements), nil - -} - -func (p *parser) callonDoubleQuotedAttributeValueContent1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuotedAttributeValueContent1(stack["elements"]) -} - -func (c *current) onUnquotedAttributeValue4() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue4() -} - -func (c *current) onUnquotedAttributeValue14() (interface{}, error) { - // not within brackets and stop on space and quotation marks (`"') - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue14() -} - -func (c *current) onUnquotedAttributeValue17() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue17() -} - -func (c *current) onUnquotedAttributeValue21() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonUnquotedAttributeValue21() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue21() -} - -func (c *current) onUnquotedAttributeValue28() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue28() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue28() -} - -func (c *current) onUnquotedAttributeValue40() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue40() -} - -func (c *current) onUnquotedAttributeValue42() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonUnquotedAttributeValue42() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue42() -} - -func (c *current) onUnquotedAttributeValue35(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonUnquotedAttributeValue35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue35(stack["start"]) -} - -func (c *current) onUnquotedAttributeValue24(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonUnquotedAttributeValue24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue24(stack["name"], stack["start"]) -} - -func (c *current) onUnquotedAttributeValue50() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue50() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue50() -} - -func (c *current) onUnquotedAttributeValue62() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue62() -} - -func (c *current) onUnquotedAttributeValue64() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonUnquotedAttributeValue64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue64() -} - -func (c *current) onUnquotedAttributeValue57(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonUnquotedAttributeValue57() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue57(stack["start"]) -} - -func (c *current) onUnquotedAttributeValue46(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonUnquotedAttributeValue46() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue46(stack["name"], stack["start"]) -} - -func (c *current) onUnquotedAttributeValue72() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue72() -} - -func (c *current) onUnquotedAttributeValue68(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonUnquotedAttributeValue68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue68(stack["name"]) -} - -func (c *current) onUnquotedAttributeValue82() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue82() -} - -func (c *current) onUnquotedAttributeValue78(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonUnquotedAttributeValue78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue78(stack["name"]) -} - -func (c *current) onUnquotedAttributeValue19(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonUnquotedAttributeValue19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue19(stack["element"]) -} - -func (c *current) onUnquotedAttributeValue88() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonUnquotedAttributeValue88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue88() -} - -func (c *current) onUnquotedAttributeValue90() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonUnquotedAttributeValue90() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue90() -} - -func (c *current) onUnquotedAttributeValue92() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonUnquotedAttributeValue92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue92() -} - -func (c *current) onUnquotedAttributeValue94() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonUnquotedAttributeValue94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue94() -} - -func (c *current) onUnquotedAttributeValue96() (interface{}, error) { - // standalone characters not used in quotation marks - return string(c.text), nil - -} - -func (p *parser) callonUnquotedAttributeValue96() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue96() -} - -func (c *current) onUnquotedAttributeValue1(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil - -} - -func (p *parser) callonUnquotedAttributeValue1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeValue1(stack["elements"]) -} - -func (c *current) onCrossReference6() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonCrossReference6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference6() -} - -func (c *current) onCrossReference10() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonCrossReference10() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference10() -} - -func (c *current) onCrossReference16() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonCrossReference16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference16() -} - -func (c *current) onCrossReference25() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonCrossReference25() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference25() -} - -func (c *current) onCrossReference21(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonCrossReference21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference21(stack["name"]) -} - -func (c *current) onCrossReference35() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonCrossReference35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference35() -} - -func (c *current) onCrossReference31(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonCrossReference31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference31(stack["name"]) -} - -func (c *current) onCrossReference41() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonCrossReference41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference41() -} - -func (c *current) onCrossReference2(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonCrossReference2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference2(stack["id"], stack["label"]) -} - -func (c *current) onCrossReference48() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonCrossReference48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference48() -} - -func (c *current) onCrossReference44(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonCrossReference44() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference44(stack["id"]) -} - -func (c *current) onExternalCrossReference16() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference16() -} - -func (c *current) onExternalCrossReference20() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonExternalCrossReference20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference20() -} - -func (c *current) onExternalCrossReference27() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference27() -} - -func (c *current) onExternalCrossReference31() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonExternalCrossReference31() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference31() -} - -func (c *current) onExternalCrossReference38() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference38() -} - -func (c *current) onExternalCrossReference50() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference50() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference50() -} - -func (c *current) onExternalCrossReference52() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference52() -} - -func (c *current) onExternalCrossReference45(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonExternalCrossReference45() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference45(stack["start"]) -} - -func (c *current) onExternalCrossReference34(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonExternalCrossReference34() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference34(stack["name"], stack["start"]) -} - -func (c *current) onExternalCrossReference60() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference60() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference60() -} - -func (c *current) onExternalCrossReference72() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference72() -} - -func (c *current) onExternalCrossReference74() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference74() -} - -func (c *current) onExternalCrossReference67(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonExternalCrossReference67() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference67(stack["start"]) -} - -func (c *current) onExternalCrossReference56(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonExternalCrossReference56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference56(stack["name"], stack["start"]) -} - -func (c *current) onExternalCrossReference82() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference82() -} - -func (c *current) onExternalCrossReference78(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonExternalCrossReference78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference78(stack["name"]) -} - -func (c *current) onExternalCrossReference92() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference92() -} - -func (c *current) onExternalCrossReference88(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonExternalCrossReference88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference88(stack["name"]) -} - -func (c *current) onExternalCrossReference29(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExternalCrossReference29() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference29(stack["element"]) -} - -func (c *current) onExternalCrossReference100() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonExternalCrossReference100() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference100() -} - -func (c *current) onExternalCrossReference109() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference109() -} - -func (c *current) onExternalCrossReference113() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference113() -} - -func (c *current) onExternalCrossReference119() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference119() -} - -func (c *current) onExternalCrossReference128() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference128() -} - -func (c *current) onExternalCrossReference124(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonExternalCrossReference124() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference124(stack["name"]) -} - -func (c *current) onExternalCrossReference138() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference138() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference138() -} - -func (c *current) onExternalCrossReference134(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonExternalCrossReference134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference134(stack["name"]) -} - -func (c *current) onExternalCrossReference144() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference144() -} - -func (c *current) onExternalCrossReference105(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonExternalCrossReference105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference105(stack["id"], stack["label"]) -} - -func (c *current) onExternalCrossReference151() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonExternalCrossReference151() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference151() -} - -func (c *current) onExternalCrossReference147(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonExternalCrossReference147() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference147(stack["id"]) -} - -func (c *current) onExternalCrossReference103() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference103() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference103() -} - -func (c *current) onExternalCrossReference155() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference155() -} - -func (c *current) onExternalCrossReference98(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExternalCrossReference98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference98(stack["element"]) -} - -func (c *current) onExternalCrossReference157() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalCrossReference157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference157() -} - -func (c *current) onExternalCrossReference9(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonExternalCrossReference9() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference9(stack["elements"]) -} - -func (c *current) onExternalCrossReference163() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonExternalCrossReference163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference163() -} - -func (c *current) onExternalCrossReference159(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonExternalCrossReference159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference159(stack["ref"]) -} - -func (c *current) onExternalCrossReference5(path interface{}) (interface{}, error) { - return types.NewLocation("", path.([]interface{})) - -} - -func (p *parser) callonExternalCrossReference5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference5(stack["path"]) -} - -func (c *current) onExternalCrossReference1(url, attributes interface{}) (interface{}, error) { - return types.NewExternalCrossReference(url.(*types.Location), attributes.(types.Attributes)) - -} - -func (p *parser) callonExternalCrossReference1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalCrossReference1(stack["url"], stack["attributes"]) -} - -func (c *current) onMarkdownQuoteAttribution5() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonMarkdownQuoteAttribution5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onMarkdownQuoteAttribution5() -} - -func (c *current) onMarkdownQuoteAttribution9() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonMarkdownQuoteAttribution9() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onMarkdownQuoteAttribution9() -} - -func (c *current) onMarkdownQuoteAttribution1(author interface{}) (interface{}, error) { - return author, nil - -} - -func (p *parser) callonMarkdownQuoteAttribution1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onMarkdownQuoteAttribution1(stack["author"]) -} - -func (c *current) onDocumentHeader3() (bool, error) { - return c.isDocumentHeaderAllowed(), nil - -} - -func (p *parser) callonDocumentHeader3() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader3() -} - -func (c *current) onDocumentHeader14() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader14() -} - -func (c *current) onDocumentHeader18() (interface{}, error) { - // can't have empty title, that may collide with example block delimiter (`====`) - return []interface{}{ - types.RawLine(c.text), - }, nil - -} - -func (p *parser) callonDocumentHeader18() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader18() -} - -func (c *current) onDocumentHeader22() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader22() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader22() -} - -func (c *current) onDocumentHeader11(title interface{}) (interface{}, error) { - return title, nil - -} - -func (p *parser) callonDocumentHeader11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader11(stack["title"]) -} - -func (c *current) onDocumentHeader37() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader37() -} - -func (c *current) onDocumentHeader41() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader41() -} - -func (c *current) onDocumentHeader31(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonDocumentHeader31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader31(stack["content"]) -} - -func (c *current) onDocumentHeader53() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader53() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader53() -} - -func (c *current) onDocumentHeader59() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader59() -} - -func (c *current) onDocumentHeader62() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader62() -} - -func (c *current) onDocumentHeader50(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeader50() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader50(stack["delimiter"]) -} - -func (c *current) onDocumentHeader78() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader78() -} - -func (c *current) onDocumentHeader84() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader84() -} - -func (c *current) onDocumentHeader87() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader87() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader87() -} - -func (c *current) onDocumentHeader75(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeader75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader75(stack["delimiter"]) -} - -func (c *current) onDocumentHeader103() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader103() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader103() -} - -func (c *current) onDocumentHeader107() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader107() -} - -func (c *current) onDocumentHeader97(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentHeader97() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader97(stack["content"]) -} - -func (c *current) onDocumentHeader71(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentHeader71() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader71(stack["line"]) -} - -func (c *current) onDocumentHeader119() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader119() -} - -func (c *current) onDocumentHeader125() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader125() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader125() -} - -func (c *current) onDocumentHeader128() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader128() -} - -func (c *current) onDocumentHeader116(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeader116() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader116(stack["delimiter"]) -} - -func (c *current) onDocumentHeader48(delimiter, content interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Comment, content.([]interface{})) - -} - -func (p *parser) callonDocumentHeader48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader48(stack["delimiter"], stack["content"]) -} - -func (c *current) onDocumentHeader145() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader145() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader145() -} - -func (c *current) onDocumentHeader162() (interface{}, error) { - // no space allowed - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader162() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader162() -} - -func (c *current) onDocumentHeader166() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader166() -} - -func (c *current) onDocumentHeader170() (interface{}, error) { - // no space allowed - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader170() -} - -func (c *current) onDocumentHeader174() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader174() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader174() -} - -func (c *current) onDocumentHeader178() (interface{}, error) { - // spaces allowed - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader178() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader178() -} - -func (c *current) onDocumentHeader182() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader182() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader182() -} - -func (c *current) onDocumentHeader159(part1, part2, part3 interface{}) (interface{}, error) { - return types.NewDocumentAuthorFullName(part1.(string), part2, part3) - -} - -func (p *parser) callonDocumentHeader159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader159(stack["part1"], stack["part2"], stack["part3"]) -} - -func (c *current) onDocumentHeader193() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader193() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader193() -} - -func (c *current) onDocumentHeader186(email interface{}) (interface{}, error) { - return email, nil - -} - -func (p *parser) callonDocumentHeader186() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader186(stack["email"]) -} - -func (c *current) onDocumentHeader198() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader198() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader198() -} - -func (c *current) onDocumentHeader203() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader203() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader203() -} - -func (c *current) onDocumentHeader205(fullName, email interface{}) (bool, error) { - // at least 1 of [fullName, email] must be defined - return fullName != nil || email != nil, nil - -} - -func (p *parser) callonDocumentHeader205() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader205(stack["fullName"], stack["email"]) -} - -func (c *current) onDocumentHeader155(fullName, email interface{}) (interface{}, error) { - return types.NewDocumentAuthor(fullName, email) - -} - -func (p *parser) callonDocumentHeader155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader155(stack["fullName"], stack["email"]) -} - -func (c *current) onDocumentHeader149(authors interface{}) (interface{}, error) { - return types.NewDocumentAuthors(authors.([]interface{})...) -} - -func (p *parser) callonDocumentHeader149() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader149(stack["authors"]) -} - -func (c *current) onDocumentHeader210() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader210() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader210() -} - -func (c *current) onDocumentHeader220() (interface{}, error) { - // no space allowed - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader220() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader220() -} - -func (c *current) onDocumentHeader224() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader224() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader224() -} - -func (c *current) onDocumentHeader228() (interface{}, error) { - // no space allowed - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader228() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader228() -} - -func (c *current) onDocumentHeader232() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader232() -} - -func (c *current) onDocumentHeader236() (interface{}, error) { - // spaces allowed - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader236() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader236() -} - -func (c *current) onDocumentHeader240() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader240() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader240() -} - -func (c *current) onDocumentHeader217(part1, part2, part3 interface{}) (interface{}, error) { - return types.NewDocumentAuthorFullName(part1.(string), part2, part3) - -} - -func (p *parser) callonDocumentHeader217() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader217(stack["part1"], stack["part2"], stack["part3"]) -} - -func (c *current) onDocumentHeader251() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader251() -} - -func (c *current) onDocumentHeader244(email interface{}) (interface{}, error) { - return email, nil - -} - -func (p *parser) callonDocumentHeader244() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader244(stack["email"]) -} - -func (c *current) onDocumentHeader256() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader256() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader256() -} - -func (c *current) onDocumentHeader261() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader261() -} - -func (c *current) onDocumentHeader263(fullName, email interface{}) (bool, error) { - // at least 1 of [fullName, email] must be defined - return fullName != nil || email != nil, nil - -} - -func (p *parser) callonDocumentHeader263() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader263(stack["fullName"], stack["email"]) -} - -func (c *current) onDocumentHeader213(fullName, email interface{}) (interface{}, error) { - return types.NewDocumentAuthor(fullName, email) - -} - -func (p *parser) callonDocumentHeader213() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader213(stack["fullName"], stack["email"]) -} - -func (c *current) onDocumentHeader206(author interface{}) (interface{}, error) { - return types.NewDocumentAuthors(author) -} - -func (p *parser) callonDocumentHeader206() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader206(stack["author"]) -} - -func (c *current) onDocumentHeader265() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader265() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader265() -} - -func (c *current) onDocumentHeader142(authors interface{}) (interface{}, error) { - return authors, nil -} - -func (p *parser) callonDocumentHeader142() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader142(stack["authors"]) -} - -func (c *current) onDocumentHeader280() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader280() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader280() -} - -func (c *current) onDocumentHeader284() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader284() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader284() -} - -func (c *current) onDocumentHeader274(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonDocumentHeader274() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader274(stack["content"]) -} - -func (c *current) onDocumentHeader296() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader296() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader296() -} - -func (c *current) onDocumentHeader302() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader302() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader302() -} - -func (c *current) onDocumentHeader305() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader305() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader305() -} - -func (c *current) onDocumentHeader293(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeader293() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader293(stack["delimiter"]) -} - -func (c *current) onDocumentHeader321() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader321() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader321() -} - -func (c *current) onDocumentHeader327() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader327() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader327() -} - -func (c *current) onDocumentHeader330() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader330() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader330() -} - -func (c *current) onDocumentHeader318(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeader318() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader318(stack["delimiter"]) -} - -func (c *current) onDocumentHeader346() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader346() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader346() -} - -func (c *current) onDocumentHeader350() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader350() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader350() -} - -func (c *current) onDocumentHeader340(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentHeader340() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader340(stack["content"]) -} - -func (c *current) onDocumentHeader314(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentHeader314() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader314(stack["line"]) -} - -func (c *current) onDocumentHeader362() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader362() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader362() -} - -func (c *current) onDocumentHeader368() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader368() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader368() -} - -func (c *current) onDocumentHeader371() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader371() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader371() -} - -func (c *current) onDocumentHeader359(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeader359() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader359(stack["delimiter"]) -} - -func (c *current) onDocumentHeader291(delimiter, content interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Comment, content.([]interface{})) - -} - -func (p *parser) callonDocumentHeader291() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader291(stack["delimiter"], stack["content"]) -} - -func (c *current) onDocumentHeader385() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader385() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader385() -} - -func (c *current) onDocumentHeader395() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader395() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader395() -} - -func (c *current) onDocumentHeader409() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeader409() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader409() -} - -func (c *current) onDocumentHeader401() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader401() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader401() -} - -func (c *current) onDocumentHeader417() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader417() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader417() -} - -func (c *current) onDocumentHeader424() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader424() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader424() -} - -func (c *current) onDocumentHeader391(revnumber, revdate, revremark interface{}) (interface{}, error) { - return types.NewDocumentRevision(revnumber, revdate, revremark) - -} - -func (p *parser) callonDocumentHeader391() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader391(stack["revnumber"], stack["revdate"], stack["revremark"]) -} - -func (c *current) onDocumentHeader430() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader430() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader430() -} - -func (c *current) onDocumentHeader437() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader437() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader437() -} - -func (c *current) onDocumentHeader427(revdate, revremark interface{}) (interface{}, error) { - return types.NewDocumentRevision(nil, revdate, revremark) - -} - -func (p *parser) callonDocumentHeader427() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader427(stack["revdate"], stack["revremark"]) -} - -func (c *current) onDocumentHeader441() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeader441() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader441() -} - -func (c *current) onDocumentHeader382(revision interface{}) (interface{}, error) { - return revision, nil -} - -func (p *parser) callonDocumentHeader382() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader382(stack["revision"]) -} - -func (c *current) onDocumentHeader139(authors, revision interface{}) (interface{}, error) { - return types.NewDocumentAuthorsAndRevision(authors.(types.DocumentAuthors), revision) - -} - -func (p *parser) callonDocumentHeader139() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader139(stack["authors"], stack["revision"]) -} - -func (c *current) onDocumentHeader8(title, authorsAndRevision interface{}) (interface{}, error) { - return types.NewDocumentInformation(title.([]interface{}), authorsAndRevision) - -} - -func (p *parser) callonDocumentHeader8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader8(stack["title"], stack["authorsAndRevision"]) -} - -func (c *current) onDocumentHeader450(extraAttrs, info, moreExtraAttrs interface{}) (bool, error) { - // at least one of title/info/extraArgs must be present - // log.Debugf("checking document header data: title=%s / info=%s / extraAttrs=%s", title, info, extraAttrs) - return info != nil || - len(extraAttrs.([]interface{})) > 0 || - len(moreExtraAttrs.([]interface{})) > 0, nil - -} - -func (p *parser) callonDocumentHeader450() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader450(stack["extraAttrs"], stack["info"], stack["moreExtraAttrs"]) -} - -func (c *current) onDocumentHeader1(extraAttrs, info, moreExtraAttrs interface{}) (interface{}, error) { - attrs := []interface{}{} - if a, ok := extraAttrs.([]interface{}); ok { - attrs = append(attrs, a...) - } - if a, ok := moreExtraAttrs.([]interface{}); ok { - attrs = append(attrs, a...) - } - return types.NewDocumentHeader(info, attrs) - -} - -func (p *parser) callonDocumentHeader1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeader1(stack["extraAttrs"], stack["info"], stack["moreExtraAttrs"]) -} - -func (c *current) onDocumentHeaderAttributes8() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes8() -} - -func (c *current) onDocumentHeaderAttributes15() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes15() -} - -func (c *current) onDocumentHeaderAttributes18() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes18() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes18() -} - -func (c *current) onDocumentHeaderAttributes4(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentHeaderAttributes4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes4(stack["name"]) -} - -func (c *current) onDocumentHeaderAttributes29() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes29() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes29() -} - -func (c *current) onDocumentHeaderAttributes36() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes36() -} - -func (c *current) onDocumentHeaderAttributes39() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes39() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes39() -} - -func (c *current) onDocumentHeaderAttributes25(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonDocumentHeaderAttributes25() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes25(stack["name"]) -} - -func (c *current) onDocumentHeaderAttributes52() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes52() -} - -func (c *current) onDocumentHeaderAttributes56() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes56() -} - -func (c *current) onDocumentHeaderAttributes46(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonDocumentHeaderAttributes46() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes46(stack["content"]) -} - -func (c *current) onDocumentHeaderAttributes68() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes68() -} - -func (c *current) onDocumentHeaderAttributes74() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes74() -} - -func (c *current) onDocumentHeaderAttributes77() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes77() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes77() -} - -func (c *current) onDocumentHeaderAttributes65(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeaderAttributes65() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes65(stack["delimiter"]) -} - -func (c *current) onDocumentHeaderAttributes93() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes93() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes93() -} - -func (c *current) onDocumentHeaderAttributes99() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes99() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes99() -} - -func (c *current) onDocumentHeaderAttributes102() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes102() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes102() -} - -func (c *current) onDocumentHeaderAttributes90(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeaderAttributes90() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes90(stack["delimiter"]) -} - -func (c *current) onDocumentHeaderAttributes118() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes118() -} - -func (c *current) onDocumentHeaderAttributes122() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes122() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes122() -} - -func (c *current) onDocumentHeaderAttributes112(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentHeaderAttributes112() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes112(stack["content"]) -} - -func (c *current) onDocumentHeaderAttributes86(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonDocumentHeaderAttributes86() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes86(stack["line"]) -} - -func (c *current) onDocumentHeaderAttributes134() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes134() -} - -func (c *current) onDocumentHeaderAttributes140() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes140() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes140() -} - -func (c *current) onDocumentHeaderAttributes143() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes143() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes143() -} - -func (c *current) onDocumentHeaderAttributes131(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonDocumentHeaderAttributes131() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes131(stack["delimiter"]) -} - -func (c *current) onDocumentHeaderAttributes63(delimiter, content interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Comment, content.([]interface{})) - -} - -func (p *parser) callonDocumentHeaderAttributes63() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes63(stack["delimiter"], stack["content"]) -} - -func (c *current) onDocumentHeaderAttributes158() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDocumentHeaderAttributes158() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes158() -} - -func (c *current) onDocumentHeaderAttributes161() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentHeaderAttributes161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes161() -} - -func (c *current) onDocumentHeaderAttributes152() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonDocumentHeaderAttributes152() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentHeaderAttributes152() -} - -func (c *current) onInlineElement9() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement9() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement9() -} - -func (c *current) onInlineElement14() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonInlineElement14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement14() -} - -func (c *current) onInlineElement4() (interface{}, error) { - // TODO: also allow trailing quotes/quotation marks? - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineElement4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement4() -} - -func (c *current) onInlineElement21() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonInlineElement21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement21() -} - -func (c *current) onInlineElement26() (bool, error) { - - return c.isSubstitutionEnabled(PostReplacements) && c.isPreceededBySpace(), nil - -} - -func (p *parser) callonInlineElement26() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement26() -} - -func (c *current) onInlineElement29() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement29() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement29() -} - -func (c *current) onInlineElement33() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonInlineElement33() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement33() -} - -func (c *current) onInlineElement24() (interface{}, error) { - return types.NewLineBreak() - -} - -func (p *parser) callonInlineElement24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement24() -} - -func (c *current) onInlineElement43() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonInlineElement43() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement43() -} - -func (c *current) onInlineElement55() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonInlineElement55() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement55() -} - -func (c *current) onInlineElement57() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonInlineElement57() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement57() -} - -func (c *current) onInlineElement59() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonInlineElement59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement59() -} - -func (c *current) onInlineElement61() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonInlineElement61() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement61() -} - -func (c *current) onInlineElement63() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonInlineElement63() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement63() -} - -func (c *current) onInlineElement65() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonInlineElement65() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement65() -} - -func (c *current) onInlineElement67() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonInlineElement67() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement67() -} - -func (c *current) onInlineElement69() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonInlineElement69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement69() -} - -func (c *current) onInlineElement71() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonInlineElement71() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement71() -} - -func (c *current) onInlineElement75() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonInlineElement75() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement75() -} - -func (c *current) onInlineElement78() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement78() -} - -func (c *current) onInlineElement82() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonInlineElement82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement82() -} - -func (c *current) onInlineElement73() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonInlineElement73() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement73() -} - -func (c *current) onInlineElement91() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonInlineElement91() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement91() -} - -func (c *current) onInlineElement96() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonInlineElement96() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement96() -} - -func (c *current) onInlineElement89() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonInlineElement89() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement89() -} - -func (c *current) onInlineElement103() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonInlineElement103() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement103() -} - -func (c *current) onInlineElement105() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonInlineElement105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement105() -} - -func (c *current) onInlineElement107() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonInlineElement107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement107() -} - -func (c *current) onInlineElement51() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonInlineElement51() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement51() -} - -func (c *current) onInlineElement109() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonInlineElement109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement109() -} - -func (c *current) onInlineElement111() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonInlineElement111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement111() -} - -func (c *current) onInlineElement113() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonInlineElement113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement113() -} - -func (c *current) onInlineElement115() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonInlineElement115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement115() -} - -func (c *current) onInlineElement117() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonInlineElement117() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement117() -} - -func (c *current) onInlineElement119() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonInlineElement119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement119() -} - -func (c *current) onInlineElement121() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonInlineElement121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement121() -} - -func (c *current) onInlineElement123() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonInlineElement123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement123() -} - -func (c *current) onInlineElement127() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonInlineElement127() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement127() -} - -func (c *current) onInlineElement130() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement130() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement130() -} - -func (c *current) onInlineElement134() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonInlineElement134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement134() -} - -func (c *current) onInlineElement125() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonInlineElement125() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement125() -} - -func (c *current) onInlineElement143() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonInlineElement143() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement143() -} - -func (c *current) onInlineElement148() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonInlineElement148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement148() -} - -func (c *current) onInlineElement141() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonInlineElement141() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement141() -} - -func (c *current) onInlineElement155() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonInlineElement155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement155() -} - -func (c *current) onInlineElement157() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonInlineElement157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement157() -} - -func (c *current) onInlineElement159() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonInlineElement159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement159() -} - -func (c *current) onInlineElement161() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonInlineElement161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement161() -} - -func (c *current) onInlineElement163() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char - -} - -func (p *parser) callonInlineElement163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement163() -} - -func (c *current) onInlineElement169() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) - -} - -func (p *parser) callonInlineElement169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement169() -} - -func (c *current) onInlineElement178() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonInlineElement178() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement178() -} - -func (c *current) onInlineElement185() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement185() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement185() -} - -func (c *current) onInlineElement197() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement197() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement197() -} - -func (c *current) onInlineElement199() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonInlineElement199() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement199() -} - -func (c *current) onInlineElement192(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonInlineElement192() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement192(stack["start"]) -} - -func (c *current) onInlineElement181(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonInlineElement181() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement181(stack["name"], stack["start"]) -} - -func (c *current) onInlineElement207() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement207() -} - -func (c *current) onInlineElement219() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement219() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement219() -} - -func (c *current) onInlineElement221() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonInlineElement221() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement221() -} - -func (c *current) onInlineElement214(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonInlineElement214() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement214(stack["start"]) -} - -func (c *current) onInlineElement203(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonInlineElement203() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement203(stack["name"], stack["start"]) -} - -func (c *current) onInlineElement229() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement229() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement229() -} - -func (c *current) onInlineElement225(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonInlineElement225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement225(stack["name"]) -} - -func (c *current) onInlineElement239() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement239() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement239() -} - -func (c *current) onInlineElement235(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonInlineElement235() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement235(stack["name"]) -} - -func (c *current) onInlineElement176(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonInlineElement176() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement176(stack["element"]) -} - -func (c *current) onInlineElement248() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonInlineElement248() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement248() -} - -func (c *current) onInlineElement257() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonInlineElement257() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement257() -} - -func (c *current) onInlineElement261() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement261() -} - -func (c *current) onInlineElement267() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineElement267() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement267() -} - -func (c *current) onInlineElement276() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement276() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement276() -} - -func (c *current) onInlineElement272(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonInlineElement272() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement272(stack["name"]) -} - -func (c *current) onInlineElement286() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineElement286() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement286() -} - -func (c *current) onInlineElement282(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonInlineElement282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement282(stack["name"]) -} - -func (c *current) onInlineElement292() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineElement292() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement292() -} - -func (c *current) onInlineElement253(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonInlineElement253() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement253(stack["id"], stack["label"]) -} - -func (c *current) onInlineElement299() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonInlineElement299() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement299() -} - -func (c *current) onInlineElement295(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonInlineElement295() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement295(stack["id"]) -} - -func (c *current) onInlineElement251() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineElement251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement251() -} - -func (c *current) onInlineElement303() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonInlineElement303() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement303() -} - -func (c *current) onInlineElement246(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonInlineElement246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement246(stack["element"]) -} - -func (c *current) onInlineElement309() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonInlineElement309() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement309() -} - -func (c *current) onInlineElement305(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonInlineElement305() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement305(stack["ref"]) -} - -func (c *current) onInlineElement313() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineElement313() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement313() -} - -func (c *current) onInlineElement1(element interface{}) (interface{}, error) { - c.trackSuffix(element) - return element, nil -} - -func (p *parser) callonInlineElement1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineElement1(stack["element"]) -} - -func (c *current) onInlineButton3() (bool, error) { - return c.isExperimentalEnabled(), nil - -} - -func (p *parser) callonInlineButton3() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineButton3() -} - -func (c *current) onInlineButton1(attributes interface{}) (interface{}, error) { - return types.NewInlineButton(attributes.(types.Attributes)) - -} - -func (p *parser) callonInlineButton1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineButton1(stack["attributes"]) -} - -func (c *current) onInlineMenu3() (bool, error) { - return c.isExperimentalEnabled(), nil - -} - -func (p *parser) callonInlineMenu3() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineMenu3() -} - -func (c *current) onInlineMenu6() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonInlineMenu6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineMenu6() -} - -func (c *current) onInlineMenu1(id, attributes interface{}) (interface{}, error) { - return types.NewInlineMenu(id.(string), attributes.(types.Attributes)) - -} - -func (p *parser) callonInlineMenu1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineMenu1(stack["id"], stack["attributes"]) -} - -func (c *current) onIndexTerm1(term interface{}) (interface{}, error) { - return types.NewIndexTerm(term.([]interface{})) - -} - -func (p *parser) callonIndexTerm1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTerm1(stack["term"]) -} - -func (c *current) onIndexTermContent5() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonIndexTermContent5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent5() -} - -func (c *current) onIndexTermContent14() (interface{}, error) { - // allow ` - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonIndexTermContent14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent14() -} - -func (c *current) onIndexTermContent24() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonIndexTermContent24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent24() -} - -func (c *current) onIndexTermContent28() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonIndexTermContent28() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent28() -} - -func (c *current) onIndexTermContent37() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonIndexTermContent37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent37() -} - -func (c *current) onIndexTermContent41() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonIndexTermContent41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent41() -} - -func (c *current) onIndexTermContent47() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonIndexTermContent47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent47() -} - -func (c *current) onIndexTermContent56() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonIndexTermContent56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent56() -} - -func (c *current) onIndexTermContent52(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonIndexTermContent52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent52(stack["name"]) -} - -func (c *current) onIndexTermContent66() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonIndexTermContent66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent66() -} - -func (c *current) onIndexTermContent62(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonIndexTermContent62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent62(stack["name"]) -} - -func (c *current) onIndexTermContent72() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonIndexTermContent72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent72() -} - -func (c *current) onIndexTermContent33(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonIndexTermContent33() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent33(stack["id"], stack["label"]) -} - -func (c *current) onIndexTermContent79() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonIndexTermContent79() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent79() -} - -func (c *current) onIndexTermContent75(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonIndexTermContent75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent75(stack["id"]) -} - -func (c *current) onIndexTermContent31() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonIndexTermContent31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent31() -} - -func (c *current) onIndexTermContent83() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonIndexTermContent83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent83() -} - -func (c *current) onIndexTermContent26(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonIndexTermContent26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent26(stack["element"]) -} - -func (c *current) onIndexTermContent89() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonIndexTermContent89() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent89() -} - -func (c *current) onIndexTermContent85(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonIndexTermContent85() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent85(stack["ref"]) -} - -func (c *current) onIndexTermContent93() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonIndexTermContent93() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent93() -} - -func (c *current) onIndexTermContent1(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) -} - -func (p *parser) callonIndexTermContent1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onIndexTermContent1(stack["elements"]) -} - -func (c *current) onImageBlock25() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonImageBlock25() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock25() -} - -func (c *current) onImageBlock29() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonImageBlock29() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock29() -} - -func (c *current) onImageBlock36() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock36() -} - -func (c *current) onImageBlock40() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonImageBlock40() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock40() -} - -func (c *current) onImageBlock47() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock47() -} - -func (c *current) onImageBlock59() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock59() -} - -func (c *current) onImageBlock61() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonImageBlock61() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock61() -} - -func (c *current) onImageBlock54(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonImageBlock54() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock54(stack["start"]) -} - -func (c *current) onImageBlock43(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonImageBlock43() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock43(stack["name"], stack["start"]) -} - -func (c *current) onImageBlock69() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock69() -} - -func (c *current) onImageBlock81() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock81() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock81() -} - -func (c *current) onImageBlock83() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonImageBlock83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock83() -} - -func (c *current) onImageBlock76(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonImageBlock76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock76(stack["start"]) -} - -func (c *current) onImageBlock65(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonImageBlock65() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock65(stack["name"], stack["start"]) -} - -func (c *current) onImageBlock91() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock91() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock91() -} - -func (c *current) onImageBlock87(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonImageBlock87() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock87(stack["name"]) -} - -func (c *current) onImageBlock101() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock101() -} - -func (c *current) onImageBlock97(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonImageBlock97() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock97(stack["name"]) -} - -func (c *current) onImageBlock38(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonImageBlock38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock38(stack["element"]) -} - -func (c *current) onImageBlock109() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonImageBlock109() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock109() -} - -func (c *current) onImageBlock118() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonImageBlock118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock118() -} - -func (c *current) onImageBlock122() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock122() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock122() -} - -func (c *current) onImageBlock128() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonImageBlock128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock128() -} - -func (c *current) onImageBlock137() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock137() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock137() -} - -func (c *current) onImageBlock133(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonImageBlock133() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock133(stack["name"]) -} - -func (c *current) onImageBlock147() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock147() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock147() -} - -func (c *current) onImageBlock143(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonImageBlock143() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock143(stack["name"]) -} - -func (c *current) onImageBlock153() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonImageBlock153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock153() -} - -func (c *current) onImageBlock114(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonImageBlock114() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock114(stack["id"], stack["label"]) -} - -func (c *current) onImageBlock160() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonImageBlock160() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock160() -} - -func (c *current) onImageBlock156(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonImageBlock156() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock156(stack["id"]) -} - -func (c *current) onImageBlock112() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonImageBlock112() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock112() -} - -func (c *current) onImageBlock164() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonImageBlock164() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock164() -} - -func (c *current) onImageBlock107(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonImageBlock107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock107(stack["element"]) -} - -func (c *current) onImageBlock166() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonImageBlock166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock166() -} - -func (c *current) onImageBlock18(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonImageBlock18() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock18(stack["elements"]) -} - -func (c *current) onImageBlock172() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonImageBlock172() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock172() -} - -func (c *current) onImageBlock168(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonImageBlock168() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock168(stack["ref"]) -} - -func (c *current) onImageBlock5(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) - -} - -func (p *parser) callonImageBlock5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock5(stack["scheme"], stack["path"]) -} - -func (c *current) onImageBlock179() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonImageBlock179() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock179() -} - -func (c *current) onImageBlock182() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonImageBlock182() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock182() -} - -func (c *current) onImageBlock1(path, attributes interface{}) (interface{}, error) { - // 'imagesdir' attribute is added after applying the attribute substitutions on the image location - return types.NewImageBlock(path.(*types.Location), attributes.(types.Attributes)) - -} - -func (p *parser) callonImageBlock1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onImageBlock1(stack["path"], stack["attributes"]) -} - -func (c *current) onInlineImage27() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineImage27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage27() -} - -func (c *current) onInlineImage31() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonInlineImage31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage31() -} - -func (c *current) onInlineImage38() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage38() -} - -func (c *current) onInlineImage42() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonInlineImage42() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage42() -} - -func (c *current) onInlineImage49() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage49() -} - -func (c *current) onInlineImage61() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage61() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage61() -} - -func (c *current) onInlineImage63() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonInlineImage63() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage63() -} - -func (c *current) onInlineImage56(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonInlineImage56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage56(stack["start"]) -} - -func (c *current) onInlineImage45(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonInlineImage45() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage45(stack["name"], stack["start"]) -} - -func (c *current) onInlineImage71() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage71() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage71() -} - -func (c *current) onInlineImage83() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage83() -} - -func (c *current) onInlineImage85() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonInlineImage85() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage85() -} - -func (c *current) onInlineImage78(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonInlineImage78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage78(stack["start"]) -} - -func (c *current) onInlineImage67(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonInlineImage67() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage67(stack["name"], stack["start"]) -} - -func (c *current) onInlineImage93() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage93() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage93() -} - -func (c *current) onInlineImage89(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonInlineImage89() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage89(stack["name"]) -} - -func (c *current) onInlineImage103() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage103() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage103() -} - -func (c *current) onInlineImage99(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonInlineImage99() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage99(stack["name"]) -} - -func (c *current) onInlineImage40(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonInlineImage40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage40(stack["element"]) -} - -func (c *current) onInlineImage111() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonInlineImage111() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage111() -} - -func (c *current) onInlineImage120() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonInlineImage120() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage120() -} - -func (c *current) onInlineImage124() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage124() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage124() -} - -func (c *current) onInlineImage130() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineImage130() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage130() -} - -func (c *current) onInlineImage139() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage139() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage139() -} - -func (c *current) onInlineImage135(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonInlineImage135() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage135(stack["name"]) -} - -func (c *current) onInlineImage149() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineImage149() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage149() -} - -func (c *current) onInlineImage145(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonInlineImage145() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage145(stack["name"]) -} - -func (c *current) onInlineImage155() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineImage155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage155() -} - -func (c *current) onInlineImage116(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonInlineImage116() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage116(stack["id"], stack["label"]) -} - -func (c *current) onInlineImage162() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonInlineImage162() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage162() -} - -func (c *current) onInlineImage158(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonInlineImage158() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage158(stack["id"]) -} - -func (c *current) onInlineImage114() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineImage114() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage114() -} - -func (c *current) onInlineImage166() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonInlineImage166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage166() -} - -func (c *current) onInlineImage109(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonInlineImage109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage109(stack["element"]) -} - -func (c *current) onInlineImage168() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonInlineImage168() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage168() -} - -func (c *current) onInlineImage20(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonInlineImage20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage20(stack["elements"]) -} - -func (c *current) onInlineImage174() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonInlineImage174() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage174() -} - -func (c *current) onInlineImage170(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonInlineImage170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage170(stack["ref"]) -} - -func (c *current) onInlineImage7(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) - -} - -func (p *parser) callonInlineImage7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage7(stack["scheme"], stack["path"]) -} - -func (c *current) onInlineImage1(path, attributes interface{}) (interface{}, error) { - return types.NewInlineImage(path.(*types.Location), attributes.(types.Attributes)) - -} - -func (p *parser) callonInlineImage1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineImage1(stack["path"], stack["attributes"]) -} - -func (c *current) onInlineIcon5() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonInlineIcon5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineIcon5() -} - -func (c *current) onInlineIcon1(icon, attributes interface{}) (interface{}, error) { - return types.NewIcon(icon.(string), attributes) - -} - -func (p *parser) callonInlineIcon1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineIcon1(stack["icon"], stack["attributes"]) -} - -func (c *current) onInlineFootnote2(elements interface{}) (interface{}, error) { - return types.NewFootnote("", elements.([]interface{})) - -} - -func (p *parser) callonInlineFootnote2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineFootnote2(stack["elements"]) -} - -func (c *current) onInlineFootnote12() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonInlineFootnote12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineFootnote12() -} - -func (c *current) onInlineFootnote8(ref, elements interface{}) (interface{}, error) { - // TODO: use only this rule with `ref:(FootnoteRef)?` - return types.NewFootnote(ref.(string), elements.([]interface{})) - -} - -func (p *parser) callonInlineFootnote8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlineFootnote8(stack["ref"], stack["elements"]) -} - -func (c *current) onFootnoteElements1(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonFootnoteElements1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFootnoteElements1(stack["elements"]) -} - -func (c *current) onFootnoteElement8() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonFootnoteElement8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFootnoteElement8() -} - -func (c *current) onFootnoteElement1(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonFootnoteElement1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFootnoteElement1(stack["element"]) -} - -func (c *current) onPassthroughMacro7() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonPassthroughMacro7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPassthroughMacro7() -} - -func (c *current) onPassthroughMacro2(content interface{}) (interface{}, error) { - return types.NewInlinePassthrough(types.PassthroughMacro, []interface{}{content}) - -} - -func (p *parser) callonPassthroughMacro2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPassthroughMacro2(stack["content"]) -} - -func (c *current) onPassthroughMacro17() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonPassthroughMacro17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPassthroughMacro17() -} - -func (c *current) onPassthroughMacro10(content interface{}) (interface{}, error) { - return types.NewInlinePassthrough(types.PassthroughMacro, content.([]interface{})) - -} - -func (p *parser) callonPassthroughMacro10() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onPassthroughMacro10(stack["content"]) -} - -func (c *current) onLink26() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonLink26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink26() -} - -func (c *current) onLink30() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonLink30() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink30() -} - -func (c *current) onLink37() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink37() -} - -func (c *current) onLink41() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonLink41() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink41() -} - -func (c *current) onLink48() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink48() -} - -func (c *current) onLink60() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink60() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink60() -} - -func (c *current) onLink62() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLink62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink62() -} - -func (c *current) onLink55(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonLink55() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink55(stack["start"]) -} - -func (c *current) onLink44(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonLink44() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink44(stack["name"], stack["start"]) -} - -func (c *current) onLink70() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink70() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink70() -} - -func (c *current) onLink82() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink82() -} - -func (c *current) onLink84() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonLink84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink84() -} - -func (c *current) onLink77(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonLink77() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink77(stack["start"]) -} - -func (c *current) onLink66(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonLink66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink66(stack["name"], stack["start"]) -} - -func (c *current) onLink92() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink92() -} - -func (c *current) onLink88(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonLink88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink88(stack["name"]) -} - -func (c *current) onLink102() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink102() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink102() -} - -func (c *current) onLink98(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonLink98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink98(stack["name"]) -} - -func (c *current) onLink39(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonLink39() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink39(stack["element"]) -} - -func (c *current) onLink110() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonLink110() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink110() -} - -func (c *current) onLink119() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonLink119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink119() -} - -func (c *current) onLink123() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink123() -} - -func (c *current) onLink129() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonLink129() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink129() -} - -func (c *current) onLink138() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink138() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink138() -} - -func (c *current) onLink134(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonLink134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink134(stack["name"]) -} - -func (c *current) onLink148() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonLink148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink148() -} - -func (c *current) onLink144(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonLink144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink144(stack["name"]) -} - -func (c *current) onLink154() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonLink154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink154() -} - -func (c *current) onLink115(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonLink115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink115(stack["id"], stack["label"]) -} - -func (c *current) onLink161() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonLink161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink161() -} - -func (c *current) onLink157(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonLink157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink157(stack["id"]) -} - -func (c *current) onLink113() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonLink113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink113() -} - -func (c *current) onLink165() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonLink165() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink165() -} - -func (c *current) onLink108(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonLink108() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink108(stack["element"]) -} - -func (c *current) onLink167() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonLink167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink167() -} - -func (c *current) onLink19(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonLink19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink19(stack["elements"]) -} - -func (c *current) onLink6(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) - -} - -func (p *parser) callonLink6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink6(stack["scheme"], stack["path"]) -} - -func (c *current) onLink172(url, closingBracket interface{}) (bool, error) { - return url.(*types.Location).TrimAngleBracketSuffix() - -} - -func (p *parser) callonLink172() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink172(stack["url"], stack["closingBracket"]) -} - -func (c *current) onLink2(url, closingBracket interface{}) (interface{}, error) { - - return types.NewInlineLink(url.(*types.Location), nil) - -} - -func (p *parser) callonLink2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onLink2(stack["url"], stack["closingBracket"]) -} - -func (c *current) onRelativeLink26() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink26() -} - -func (c *current) onRelativeLink30() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonRelativeLink30() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink30() -} - -func (c *current) onRelativeLink37() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink37() -} - -func (c *current) onRelativeLink41() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonRelativeLink41() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink41() -} - -func (c *current) onRelativeLink48() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink48() -} - -func (c *current) onRelativeLink60() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink60() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink60() -} - -func (c *current) onRelativeLink62() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonRelativeLink62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink62() -} - -func (c *current) onRelativeLink55(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonRelativeLink55() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink55(stack["start"]) -} - -func (c *current) onRelativeLink44(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonRelativeLink44() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink44(stack["name"], stack["start"]) -} - -func (c *current) onRelativeLink70() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink70() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink70() -} - -func (c *current) onRelativeLink82() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink82() -} - -func (c *current) onRelativeLink84() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonRelativeLink84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink84() -} - -func (c *current) onRelativeLink77(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonRelativeLink77() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink77(stack["start"]) -} - -func (c *current) onRelativeLink66(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonRelativeLink66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink66(stack["name"], stack["start"]) -} - -func (c *current) onRelativeLink92() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink92() -} - -func (c *current) onRelativeLink88(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonRelativeLink88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink88(stack["name"]) -} - -func (c *current) onRelativeLink102() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink102() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink102() -} - -func (c *current) onRelativeLink98(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonRelativeLink98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink98(stack["name"]) -} - -func (c *current) onRelativeLink39(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonRelativeLink39() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink39(stack["element"]) -} - -func (c *current) onRelativeLink110() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonRelativeLink110() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink110() -} - -func (c *current) onRelativeLink119() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink119() -} - -func (c *current) onRelativeLink123() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink123() -} - -func (c *current) onRelativeLink129() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink129() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink129() -} - -func (c *current) onRelativeLink138() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink138() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink138() -} - -func (c *current) onRelativeLink134(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonRelativeLink134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink134(stack["name"]) -} - -func (c *current) onRelativeLink148() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink148() -} - -func (c *current) onRelativeLink144(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonRelativeLink144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink144(stack["name"]) -} - -func (c *current) onRelativeLink154() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink154() -} - -func (c *current) onRelativeLink115(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonRelativeLink115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink115(stack["id"], stack["label"]) -} - -func (c *current) onRelativeLink161() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink161() -} - -func (c *current) onRelativeLink157(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonRelativeLink157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink157(stack["id"]) -} - -func (c *current) onRelativeLink113() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink113() -} - -func (c *current) onRelativeLink165() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonRelativeLink165() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink165() -} - -func (c *current) onRelativeLink108(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonRelativeLink108() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink108(stack["element"]) -} - -func (c *current) onRelativeLink167() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink167() -} - -func (c *current) onRelativeLink19(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonRelativeLink19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink19(stack["elements"]) -} - -func (c *current) onRelativeLink173() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonRelativeLink173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink173() -} - -func (c *current) onRelativeLink169(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonRelativeLink169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink169(stack["ref"]) -} - -func (c *current) onRelativeLink6(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) - -} - -func (p *parser) callonRelativeLink6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink6(stack["scheme"], stack["path"]) -} - -func (c *current) onRelativeLink2(url, attributes interface{}) (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonRelativeLink2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink2(stack["url"], stack["attributes"]) -} - -func (c *current) onRelativeLink203() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink203() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink203() -} - -func (c *current) onRelativeLink207() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonRelativeLink207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink207() -} - -func (c *current) onRelativeLink214() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink214() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink214() -} - -func (c *current) onRelativeLink218() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonRelativeLink218() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink218() -} - -func (c *current) onRelativeLink225() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink225() -} - -func (c *current) onRelativeLink237() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink237() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink237() -} - -func (c *current) onRelativeLink239() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonRelativeLink239() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink239() -} - -func (c *current) onRelativeLink232(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonRelativeLink232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink232(stack["start"]) -} - -func (c *current) onRelativeLink221(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonRelativeLink221() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink221(stack["name"], stack["start"]) -} - -func (c *current) onRelativeLink247() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink247() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink247() -} - -func (c *current) onRelativeLink259() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink259() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink259() -} - -func (c *current) onRelativeLink261() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonRelativeLink261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink261() -} - -func (c *current) onRelativeLink254(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonRelativeLink254() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink254(stack["start"]) -} - -func (c *current) onRelativeLink243(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonRelativeLink243() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink243(stack["name"], stack["start"]) -} - -func (c *current) onRelativeLink269() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink269() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink269() -} - -func (c *current) onRelativeLink265(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonRelativeLink265() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink265(stack["name"]) -} - -func (c *current) onRelativeLink279() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink279() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink279() -} - -func (c *current) onRelativeLink275(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonRelativeLink275() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink275(stack["name"]) -} - -func (c *current) onRelativeLink216(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonRelativeLink216() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink216(stack["element"]) -} - -func (c *current) onRelativeLink287() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonRelativeLink287() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink287() -} - -func (c *current) onRelativeLink296() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink296() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink296() -} - -func (c *current) onRelativeLink300() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink300() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink300() -} - -func (c *current) onRelativeLink306() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink306() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink306() -} - -func (c *current) onRelativeLink315() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink315() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink315() -} - -func (c *current) onRelativeLink311(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonRelativeLink311() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink311(stack["name"]) -} - -func (c *current) onRelativeLink325() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink325() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink325() -} - -func (c *current) onRelativeLink321(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonRelativeLink321() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink321(stack["name"]) -} - -func (c *current) onRelativeLink331() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink331() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink331() -} - -func (c *current) onRelativeLink292(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonRelativeLink292() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink292(stack["id"], stack["label"]) -} - -func (c *current) onRelativeLink338() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonRelativeLink338() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink338() -} - -func (c *current) onRelativeLink334(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonRelativeLink334() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink334(stack["id"]) -} - -func (c *current) onRelativeLink290() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink290() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink290() -} - -func (c *current) onRelativeLink342() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonRelativeLink342() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink342() -} - -func (c *current) onRelativeLink285(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonRelativeLink285() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink285(stack["element"]) -} - -func (c *current) onRelativeLink344() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonRelativeLink344() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink344() -} - -func (c *current) onRelativeLink196(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonRelativeLink196() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink196(stack["elements"]) -} - -func (c *current) onRelativeLink350() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonRelativeLink350() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink350() -} - -func (c *current) onRelativeLink346(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonRelativeLink346() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink346(stack["ref"]) -} - -func (c *current) onRelativeLink183(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) - -} - -func (p *parser) callonRelativeLink183() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink183(stack["scheme"], stack["path"]) -} - -func (c *current) onRelativeLink179(url, attributes interface{}) (interface{}, error) { - return types.NewInlineLink(url.(*types.Location), attributes.(types.Attributes)) - -} - -func (p *parser) callonRelativeLink179() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onRelativeLink179(stack["url"], stack["attributes"]) -} - -func (c *current) onExternalLink26() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink26() -} - -func (c *current) onExternalLink30() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonExternalLink30() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink30() -} - -func (c *current) onExternalLink37() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink37() -} - -func (c *current) onExternalLink41() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonExternalLink41() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink41() -} - -func (c *current) onExternalLink48() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink48() -} - -func (c *current) onExternalLink60() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink60() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink60() -} - -func (c *current) onExternalLink62() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonExternalLink62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink62() -} - -func (c *current) onExternalLink55(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonExternalLink55() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink55(stack["start"]) -} - -func (c *current) onExternalLink44(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonExternalLink44() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink44(stack["name"], stack["start"]) -} - -func (c *current) onExternalLink70() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink70() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink70() -} - -func (c *current) onExternalLink82() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink82() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink82() -} - -func (c *current) onExternalLink84() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonExternalLink84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink84() -} - -func (c *current) onExternalLink77(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonExternalLink77() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink77(stack["start"]) -} - -func (c *current) onExternalLink66(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonExternalLink66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink66(stack["name"], stack["start"]) -} - -func (c *current) onExternalLink92() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink92() -} - -func (c *current) onExternalLink88(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonExternalLink88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink88(stack["name"]) -} - -func (c *current) onExternalLink102() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink102() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink102() -} - -func (c *current) onExternalLink98(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonExternalLink98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink98(stack["name"]) -} - -func (c *current) onExternalLink39(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExternalLink39() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink39(stack["element"]) -} - -func (c *current) onExternalLink110() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonExternalLink110() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink110() -} - -func (c *current) onExternalLink119() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonExternalLink119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink119() -} - -func (c *current) onExternalLink123() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink123() -} - -func (c *current) onExternalLink129() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink129() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink129() -} - -func (c *current) onExternalLink138() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink138() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink138() -} - -func (c *current) onExternalLink134(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonExternalLink134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink134(stack["name"]) -} - -func (c *current) onExternalLink148() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink148() -} - -func (c *current) onExternalLink144(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonExternalLink144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink144(stack["name"]) -} - -func (c *current) onExternalLink154() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink154() -} - -func (c *current) onExternalLink115(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonExternalLink115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink115(stack["id"], stack["label"]) -} - -func (c *current) onExternalLink161() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonExternalLink161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink161() -} - -func (c *current) onExternalLink157(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonExternalLink157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink157(stack["id"]) -} - -func (c *current) onExternalLink113() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink113() -} - -func (c *current) onExternalLink165() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonExternalLink165() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink165() -} - -func (c *current) onExternalLink108(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExternalLink108() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink108(stack["element"]) -} - -func (c *current) onExternalLink167() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink167() -} - -func (c *current) onExternalLink19(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonExternalLink19() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink19(stack["elements"]) -} - -func (c *current) onExternalLink6(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) - -} - -func (p *parser) callonExternalLink6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink6(stack["scheme"], stack["path"]) -} - -func (c *current) onExternalLink2(url, attributes interface{}) (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonExternalLink2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink2(stack["url"], stack["attributes"]) -} - -func (c *current) onExternalLink195() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink195() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink195() -} - -func (c *current) onExternalLink199() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonExternalLink199() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink199() -} - -func (c *current) onExternalLink206() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink206() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink206() -} - -func (c *current) onExternalLink210() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonExternalLink210() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink210() -} - -func (c *current) onExternalLink217() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink217() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink217() -} - -func (c *current) onExternalLink229() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink229() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink229() -} - -func (c *current) onExternalLink231() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonExternalLink231() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink231() -} - -func (c *current) onExternalLink224(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonExternalLink224() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink224(stack["start"]) -} - -func (c *current) onExternalLink213(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonExternalLink213() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink213(stack["name"], stack["start"]) -} - -func (c *current) onExternalLink239() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink239() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink239() -} - -func (c *current) onExternalLink251() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink251() -} - -func (c *current) onExternalLink253() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonExternalLink253() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink253() -} - -func (c *current) onExternalLink246(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonExternalLink246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink246(stack["start"]) -} - -func (c *current) onExternalLink235(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonExternalLink235() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink235(stack["name"], stack["start"]) -} - -func (c *current) onExternalLink261() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink261() -} - -func (c *current) onExternalLink257(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonExternalLink257() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink257(stack["name"]) -} - -func (c *current) onExternalLink271() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink271() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink271() -} - -func (c *current) onExternalLink267(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonExternalLink267() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink267(stack["name"]) -} - -func (c *current) onExternalLink208(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExternalLink208() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink208(stack["element"]) -} - -func (c *current) onExternalLink279() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonExternalLink279() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink279() -} - -func (c *current) onExternalLink288() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonExternalLink288() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink288() -} - -func (c *current) onExternalLink292() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink292() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink292() -} - -func (c *current) onExternalLink298() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink298() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink298() -} - -func (c *current) onExternalLink307() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink307() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink307() -} - -func (c *current) onExternalLink303(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonExternalLink303() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink303(stack["name"]) -} - -func (c *current) onExternalLink317() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExternalLink317() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink317() -} - -func (c *current) onExternalLink313(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonExternalLink313() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink313(stack["name"]) -} - -func (c *current) onExternalLink323() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink323() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink323() -} - -func (c *current) onExternalLink284(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonExternalLink284() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink284(stack["id"], stack["label"]) -} - -func (c *current) onExternalLink330() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonExternalLink330() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink330() -} - -func (c *current) onExternalLink326(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonExternalLink326() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink326(stack["id"]) -} - -func (c *current) onExternalLink282() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink282() -} - -func (c *current) onExternalLink334() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonExternalLink334() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink334() -} - -func (c *current) onExternalLink277(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExternalLink277() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink277(stack["element"]) -} - -func (c *current) onExternalLink336() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonExternalLink336() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink336() -} - -func (c *current) onExternalLink188(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) - -} - -func (p *parser) callonExternalLink188() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink188(stack["elements"]) -} - -func (c *current) onExternalLink175(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) - -} - -func (p *parser) callonExternalLink175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink175(stack["scheme"], stack["path"]) -} - -func (c *current) onExternalLink172(url, attributes interface{}) (interface{}, error) { - return types.NewInlineLink(url.(*types.Location), attributes) - -} - -func (p *parser) callonExternalLink172() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExternalLink172(stack["url"], stack["attributes"]) -} - -func (c *current) onListElements11() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements11() -} - -func (c *current) onListElements18() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElements18() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements18() -} - -func (c *current) onListElements21(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElements21() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements21(stack["depth"]) -} - -func (c *current) onListElements15(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonListElements15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements15(stack["depth"]) -} - -func (c *current) onListElements22() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonListElements22() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements22() -} - -func (c *current) onListElements27() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonListElements27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements27() -} - -func (c *current) onListElements31() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonListElements31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements31() -} - -func (c *current) onListElements35() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonListElements35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements35() -} - -func (c *current) onListElements40() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonListElements40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements40() -} - -func (c *current) onListElements45(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements45() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements45(stack["prefix"]) -} - -func (c *current) onListElements8(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElements8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements8(stack["prefix"]) -} - -func (c *current) onListElements52() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonListElements52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements52() -} - -func (c *current) onListElements56() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements56() -} - -func (c *current) onListElements49(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonListElements49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements49(stack["rawline"]) -} - -func (c *current) onListElements5(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) - -} - -func (p *parser) callonListElements5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements5(stack["prefix"], stack["content"]) -} - -func (c *current) onListElements69() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements69() -} - -func (c *current) onListElements76() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElements76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements76() -} - -func (c *current) onListElements79(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElements79() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements79(stack["depth"]) -} - -func (c *current) onListElements73(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonListElements73() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements73(stack["depth"]) -} - -func (c *current) onListElements81() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonListElements81() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements81() -} - -func (c *current) onListElements83(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements83(stack["prefix"]) -} - -func (c *current) onListElements66(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElements66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements66(stack["prefix"]) -} - -func (c *current) onListElements94() (interface{}, error) { - return types.Unchecked, nil -} - -func (p *parser) callonListElements94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements94() -} - -func (c *current) onListElements96() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonListElements96() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements96() -} - -func (c *current) onListElements98() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonListElements98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements98() -} - -func (c *current) onListElements100(style interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements100() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements100(stack["style"]) -} - -func (c *current) onListElements88(style interface{}) (interface{}, error) { - return style, nil - -} - -func (p *parser) callonListElements88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements88(stack["style"]) -} - -func (c *current) onListElements107() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonListElements107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements107() -} - -func (c *current) onListElements111() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements111() -} - -func (c *current) onListElements104(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonListElements104() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements104(stack["rawline"]) -} - -func (c *current) onListElements63(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) - -} - -func (p *parser) callonListElements63() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements63(stack["prefix"], stack["checkstyle"], stack["content"]) -} - -func (c *current) onListElements125() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonListElements125() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements125() -} - -func (c *current) onListElements129(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements129() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements129(stack["ref"]) -} - -func (c *current) onListElements121(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonListElements121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements121(stack["ref"]) -} - -func (c *current) onListElements136() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements136() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements136() -} - -func (c *current) onListElements140() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements140() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements140() -} - -func (c *current) onListElements133(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) - -} - -func (p *parser) callonListElements133() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements133(stack["rawline"]) -} - -func (c *current) onListElements118(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) - -} - -func (p *parser) callonListElements118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements118(stack["ref"], stack["description"]) -} - -func (c *current) onListElements157() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElements157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements157() -} - -func (c *current) onListElements160(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElements160() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements160(stack["separator"]) -} - -func (c *current) onListElements154(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElements154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements154(stack["separator"]) -} - -func (c *current) onListElements163() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements163() -} - -func (c *current) onListElements150() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonListElements150() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements150() -} - -func (c *current) onListElements175() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElements175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements175() -} - -func (c *current) onListElements178(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElements178() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements178(stack["separator"]) -} - -func (c *current) onListElements172(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElements172() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements172(stack["separator"]) -} - -func (c *current) onListElements184() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements184() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements184() -} - -func (c *current) onListElements187() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements187() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements187() -} - -func (c *current) onListElements201() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements201() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements201() -} - -func (c *current) onListElements204() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements204() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements204() -} - -func (c *current) onListElements195() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElements195() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements195() -} - -func (c *current) onListElements221() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements221() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements221() -} - -func (c *current) onListElements225() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements225() -} - -func (c *current) onListElements215(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonListElements215() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements215(stack["content"]) -} - -func (c *current) onListElements214(content interface{}) (interface{}, error) { - return nil, nil // taking a shortcut to ignore commented out content and avoid having empty paragraphs - -} - -func (p *parser) callonListElements214() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements214(stack["content"]) -} - -func (c *current) onListElements241() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements241() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements241() -} - -func (c *current) onListElements244() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements244() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements244() -} - -func (c *current) onListElements235() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElements235() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements235() -} - -func (c *current) onListElements255() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements255() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements255() -} - -func (c *current) onListElements257() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements257() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements257() -} - -func (c *current) onListElements266() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements266() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements266() -} - -func (c *current) onListElements273() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElements273() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements273() -} - -func (c *current) onListElements276(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElements276() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements276(stack["depth"]) -} - -func (c *current) onListElements270(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonListElements270() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements270(stack["depth"]) -} - -func (c *current) onListElements277() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonListElements277() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements277() -} - -func (c *current) onListElements282() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonListElements282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements282() -} - -func (c *current) onListElements286() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonListElements286() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements286() -} - -func (c *current) onListElements290() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonListElements290() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements290() -} - -func (c *current) onListElements295() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonListElements295() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements295() -} - -func (c *current) onListElements300(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements300() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements300(stack["prefix"]) -} - -func (c *current) onListElements263(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElements263() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements263(stack["prefix"]) -} - -func (c *current) onListElements307() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements307() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements307() -} - -func (c *current) onListElements314() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElements314() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements314() -} - -func (c *current) onListElements317(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElements317() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements317(stack["depth"]) -} - -func (c *current) onListElements311(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonListElements311() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements311(stack["depth"]) -} - -func (c *current) onListElements319() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonListElements319() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements319() -} - -func (c *current) onListElements321(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements321() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements321(stack["prefix"]) -} - -func (c *current) onListElements304(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElements304() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements304(stack["prefix"]) -} - -func (c *current) onListElements329() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonListElements329() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements329() -} - -func (c *current) onListElements333(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements333() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements333(stack["ref"]) -} - -func (c *current) onListElements325(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonListElements325() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements325(stack["ref"]) -} - -func (c *current) onListElements345() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElements345() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements345() -} - -func (c *current) onListElements348(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElements348() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements348(stack["separator"]) -} - -func (c *current) onListElements342(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElements342() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements342(stack["separator"]) -} - -func (c *current) onListElements351() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements351() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements351() -} - -func (c *current) onListElements338() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonListElements338() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements338() -} - -func (c *current) onListElements362() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElements362() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements362() -} - -func (c *current) onListElements365(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElements365() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements365(stack["separator"]) -} - -func (c *current) onListElements359(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElements359() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements359(stack["separator"]) -} - -func (c *current) onListElements376() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements376() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements376() -} - -func (c *current) onListElements382() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements382() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements382() -} - -func (c *current) onListElements385() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements385() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements385() -} - -func (c *current) onListElements373(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements373() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements373(stack["delimiter"]) -} - -func (c *current) onListElements395() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements395() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements395() -} - -func (c *current) onListElements401() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements401() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements401() -} - -func (c *current) onListElements404() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements404() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements404() -} - -func (c *current) onListElements392(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements392() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements392(stack["delimiter"]) -} - -func (c *current) onListElements415() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonListElements415() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements415() -} - -func (c *current) onListElements419() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements419() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements419() -} - -func (c *current) onListElements422() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements422() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements422() -} - -func (c *current) onListElements411(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonListElements411() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements411(stack["language"]) -} - -func (c *current) onListElements432() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements432() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements432() -} - -func (c *current) onListElements438() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements438() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements438() -} - -func (c *current) onListElements441() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements441() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements441() -} - -func (c *current) onListElements429(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements429() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements429(stack["delimiter"]) -} - -func (c *current) onListElements451() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements451() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements451() -} - -func (c *current) onListElements457() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements457() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements457() -} - -func (c *current) onListElements460() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements460() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements460() -} - -func (c *current) onListElements448(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements448() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements448(stack["delimiter"]) -} - -func (c *current) onListElements470() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements470() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements470() -} - -func (c *current) onListElements476() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements476() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements476() -} - -func (c *current) onListElements479() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements479() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements479() -} - -func (c *current) onListElements467(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements467() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements467(stack["delimiter"]) -} - -func (c *current) onListElements489() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements489() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements489() -} - -func (c *current) onListElements495() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements495() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements495() -} - -func (c *current) onListElements498() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements498() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements498() -} - -func (c *current) onListElements486(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements486() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements486(stack["delimiter"]) -} - -func (c *current) onListElements508() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements508() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements508() -} - -func (c *current) onListElements514() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements514() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements514() -} - -func (c *current) onListElements517() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements517() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements517() -} - -func (c *current) onListElements505(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements505() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements505(stack["delimiter"]) -} - -func (c *current) onListElements527() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElements527() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements527() -} - -func (c *current) onListElements533() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElements533() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements533() -} - -func (c *current) onListElements536() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements536() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements536() -} - -func (c *current) onListElements524(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElements524() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements524(stack["delimiter"]) -} - -func (c *current) onListElements367(delimiter interface{}) (interface{}, error) { - return delimiter, nil - -} - -func (p *parser) callonListElements367() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements367(stack["delimiter"]) -} - -func (c *current) onListElements544() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil - -} - -func (p *parser) callonListElements544() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements544() -} - -func (c *current) onListElements548() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements548() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements548() -} - -func (c *current) onListElements232(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElements232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements232(stack["content"]) -} - -func (c *current) onListElements181(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) - -} - -func (p *parser) callonListElements181() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements181(stack["content"]) -} - -func (c *current) onListElements557() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements557() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements557() -} - -func (c *current) onListElements561() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonListElements561() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements561() -} - -func (c *current) onListElements565() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements565() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements565() -} - -func (c *current) onListElements555(content interface{}) (interface{}, error) { - return types.NewParagraph(content) - -} - -func (p *parser) callonListElements555() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements555(stack["content"]) -} - -func (c *current) onListElements147(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) - -} - -func (p *parser) callonListElements147() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements147(stack["term"], stack["separator"], stack["description"]) -} - -func (c *current) onListElements1(firstElement, extraElements interface{}) (interface{}, error) { - return types.NewListElements(append([]interface{}{firstElement}, extraElements.([]interface{})...)) - -} - -func (p *parser) callonListElements1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements1(stack["firstElement"], stack["extraElements"]) -} - -func (c *current) onExtraListElements1(elements interface{}) (interface{}, error) { - return types.Flatten(elements.([]interface{})), nil -} - -func (p *parser) callonExtraListElements1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElements1(stack["elements"]) -} - -func (c *current) onExtraListElement17() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement17() -} - -func (c *current) onExtraListElement20() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement20() -} - -func (c *current) onExtraListElement11() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement11() -} - -func (c *current) onExtraListElement34() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement34() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement34() -} - -func (c *current) onExtraListElement41() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement41() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement41() -} - -func (c *current) onExtraListElement44(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement44() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement44(stack["depth"]) -} - -func (c *current) onExtraListElement38(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonExtraListElement38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement38(stack["depth"]) -} - -func (c *current) onExtraListElement45() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonExtraListElement45() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement45() -} - -func (c *current) onExtraListElement50() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonExtraListElement50() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement50() -} - -func (c *current) onExtraListElement54() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonExtraListElement54() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement54() -} - -func (c *current) onExtraListElement58() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonExtraListElement58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement58() -} - -func (c *current) onExtraListElement63() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonExtraListElement63() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement63() -} - -func (c *current) onExtraListElement68(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement68(stack["prefix"]) -} - -func (c *current) onExtraListElement31(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement31(stack["prefix"]) -} - -func (c *current) onExtraListElement75() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonExtraListElement75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement75() -} - -func (c *current) onExtraListElement79() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement79() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement79() -} - -func (c *current) onExtraListElement72(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonExtraListElement72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement72(stack["rawline"]) -} - -func (c *current) onExtraListElement28(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) - -} - -func (p *parser) callonExtraListElement28() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement28(stack["prefix"], stack["content"]) -} - -func (c *current) onExtraListElement8(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExtraListElement8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement8(stack["element"]) -} - -func (c *current) onExtraListElement98() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement98() -} - -func (c *current) onExtraListElement105() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement105() -} - -func (c *current) onExtraListElement108(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement108() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement108(stack["depth"]) -} - -func (c *current) onExtraListElement102(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonExtraListElement102() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement102(stack["depth"]) -} - -func (c *current) onExtraListElement109() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonExtraListElement109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement109() -} - -func (c *current) onExtraListElement114() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonExtraListElement114() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement114() -} - -func (c *current) onExtraListElement118() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonExtraListElement118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement118() -} - -func (c *current) onExtraListElement122() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonExtraListElement122() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement122() -} - -func (c *current) onExtraListElement127() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonExtraListElement127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement127() -} - -func (c *current) onExtraListElement132(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement132(stack["prefix"]) -} - -func (c *current) onExtraListElement95(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement95() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement95(stack["prefix"]) -} - -func (c *current) onExtraListElement139() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonExtraListElement139() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement139() -} - -func (c *current) onExtraListElement143() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement143() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement143() -} - -func (c *current) onExtraListElement136(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonExtraListElement136() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement136(stack["rawline"]) -} - -func (c *current) onExtraListElement92(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) - -} - -func (p *parser) callonExtraListElement92() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement92(stack["prefix"], stack["content"]) -} - -func (c *current) onExtraListElement86(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil - -} - -func (p *parser) callonExtraListElement86() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement86(stack["attributes"], stack["element"]) -} - -func (c *current) onExtraListElement159() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement159() -} - -func (c *current) onExtraListElement162() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement162() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement162() -} - -func (c *current) onExtraListElement153() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement153() -} - -func (c *current) onExtraListElement176() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement176() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement176() -} - -func (c *current) onExtraListElement183() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement183() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement183() -} - -func (c *current) onExtraListElement186(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement186() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement186(stack["depth"]) -} - -func (c *current) onExtraListElement180(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonExtraListElement180() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement180(stack["depth"]) -} - -func (c *current) onExtraListElement188() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonExtraListElement188() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement188() -} - -func (c *current) onExtraListElement190(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement190() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement190(stack["prefix"]) -} - -func (c *current) onExtraListElement173(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement173(stack["prefix"]) -} - -func (c *current) onExtraListElement201() (interface{}, error) { - return types.Unchecked, nil -} - -func (p *parser) callonExtraListElement201() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement201() -} - -func (c *current) onExtraListElement203() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonExtraListElement203() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement203() -} - -func (c *current) onExtraListElement205() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonExtraListElement205() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement205() -} - -func (c *current) onExtraListElement207(style interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement207(stack["style"]) -} - -func (c *current) onExtraListElement195(style interface{}) (interface{}, error) { - return style, nil - -} - -func (p *parser) callonExtraListElement195() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement195(stack["style"]) -} - -func (c *current) onExtraListElement214() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonExtraListElement214() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement214() -} - -func (c *current) onExtraListElement218() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement218() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement218() -} - -func (c *current) onExtraListElement211(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonExtraListElement211() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement211(stack["rawline"]) -} - -func (c *current) onExtraListElement170(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) - -} - -func (p *parser) callonExtraListElement170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement170(stack["prefix"], stack["checkstyle"], stack["content"]) -} - -func (c *current) onExtraListElement150(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExtraListElement150() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement150(stack["element"]) -} - -func (c *current) onExtraListElement237() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement237() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement237() -} - -func (c *current) onExtraListElement244() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement244() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement244() -} - -func (c *current) onExtraListElement247(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement247() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement247(stack["depth"]) -} - -func (c *current) onExtraListElement241(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonExtraListElement241() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement241(stack["depth"]) -} - -func (c *current) onExtraListElement249() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonExtraListElement249() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement249() -} - -func (c *current) onExtraListElement251(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement251(stack["prefix"]) -} - -func (c *current) onExtraListElement234(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement234() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement234(stack["prefix"]) -} - -func (c *current) onExtraListElement262() (interface{}, error) { - return types.Unchecked, nil -} - -func (p *parser) callonExtraListElement262() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement262() -} - -func (c *current) onExtraListElement264() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonExtraListElement264() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement264() -} - -func (c *current) onExtraListElement266() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonExtraListElement266() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement266() -} - -func (c *current) onExtraListElement268(style interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement268() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement268(stack["style"]) -} - -func (c *current) onExtraListElement256(style interface{}) (interface{}, error) { - return style, nil - -} - -func (p *parser) callonExtraListElement256() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement256(stack["style"]) -} - -func (c *current) onExtraListElement275() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonExtraListElement275() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement275() -} - -func (c *current) onExtraListElement279() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement279() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement279() -} - -func (c *current) onExtraListElement272(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonExtraListElement272() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement272(stack["rawline"]) -} - -func (c *current) onExtraListElement231(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) - -} - -func (p *parser) callonExtraListElement231() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement231(stack["prefix"], stack["checkstyle"], stack["content"]) -} - -func (c *current) onExtraListElement225(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil - -} - -func (p *parser) callonExtraListElement225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement225(stack["attributes"], stack["element"]) -} - -func (c *current) onExtraListElement295() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement295() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement295() -} - -func (c *current) onExtraListElement298() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement298() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement298() -} - -func (c *current) onExtraListElement289() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement289() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement289() -} - -func (c *current) onExtraListElement313() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonExtraListElement313() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement313() -} - -func (c *current) onExtraListElement317(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement317() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement317(stack["ref"]) -} - -func (c *current) onExtraListElement309(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonExtraListElement309() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement309(stack["ref"]) -} - -func (c *current) onExtraListElement324() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement324() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement324() -} - -func (c *current) onExtraListElement328() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement328() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement328() -} - -func (c *current) onExtraListElement321(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) - -} - -func (p *parser) callonExtraListElement321() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement321(stack["rawline"]) -} - -func (c *current) onExtraListElement306(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) - -} - -func (p *parser) callonExtraListElement306() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement306(stack["ref"], stack["description"]) -} - -func (c *current) onExtraListElement286(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExtraListElement286() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement286(stack["element"]) -} - -func (c *current) onExtraListElement348() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonExtraListElement348() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement348() -} - -func (c *current) onExtraListElement352(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement352() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement352(stack["ref"]) -} - -func (c *current) onExtraListElement344(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonExtraListElement344() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement344(stack["ref"]) -} - -func (c *current) onExtraListElement359() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement359() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement359() -} - -func (c *current) onExtraListElement363() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement363() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement363() -} - -func (c *current) onExtraListElement356(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) - -} - -func (p *parser) callonExtraListElement356() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement356(stack["rawline"]) -} - -func (c *current) onExtraListElement341(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) - -} - -func (p *parser) callonExtraListElement341() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement341(stack["ref"], stack["description"]) -} - -func (c *current) onExtraListElement335(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil - -} - -func (p *parser) callonExtraListElement335() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement335(stack["attributes"], stack["element"]) -} - -func (c *current) onExtraListElement380() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement380() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement380() -} - -func (c *current) onExtraListElement383() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement383() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement383() -} - -func (c *current) onExtraListElement374() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement374() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement374() -} - -func (c *current) onExtraListElement401() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement401() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement401() -} - -func (c *current) onExtraListElement404(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement404() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement404(stack["separator"]) -} - -func (c *current) onExtraListElement398(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement398() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement398(stack["separator"]) -} - -func (c *current) onExtraListElement407() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement407() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement407() -} - -func (c *current) onExtraListElement394() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonExtraListElement394() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement394() -} - -func (c *current) onExtraListElement419() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement419() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement419() -} - -func (c *current) onExtraListElement422(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement422() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement422(stack["separator"]) -} - -func (c *current) onExtraListElement416(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement416() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement416(stack["separator"]) -} - -func (c *current) onExtraListElement428() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement428() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement428() -} - -func (c *current) onExtraListElement431() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement431() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement431() -} - -func (c *current) onExtraListElement445() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement445() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement445() -} - -func (c *current) onExtraListElement448() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement448() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement448() -} - -func (c *current) onExtraListElement439() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement439() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement439() -} - -func (c *current) onExtraListElement465() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement465() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement465() -} - -func (c *current) onExtraListElement469() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement469() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement469() -} - -func (c *current) onExtraListElement459(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonExtraListElement459() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement459(stack["content"]) -} - -func (c *current) onExtraListElement458(content interface{}) (interface{}, error) { - return nil, nil // taking a shortcut to ignore commented out content and avoid having empty paragraphs - -} - -func (p *parser) callonExtraListElement458() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement458(stack["content"]) -} - -func (c *current) onExtraListElement485() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement485() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement485() -} - -func (c *current) onExtraListElement488() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement488() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement488() -} - -func (c *current) onExtraListElement479() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement479() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement479() -} - -func (c *current) onExtraListElement499() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement499() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement499() -} - -func (c *current) onExtraListElement501() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement501() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement501() -} - -func (c *current) onExtraListElement510() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement510() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement510() -} - -func (c *current) onExtraListElement517() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement517() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement517() -} - -func (c *current) onExtraListElement520(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement520() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement520(stack["depth"]) -} - -func (c *current) onExtraListElement514(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonExtraListElement514() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement514(stack["depth"]) -} - -func (c *current) onExtraListElement521() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonExtraListElement521() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement521() -} - -func (c *current) onExtraListElement526() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonExtraListElement526() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement526() -} - -func (c *current) onExtraListElement530() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonExtraListElement530() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement530() -} - -func (c *current) onExtraListElement534() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonExtraListElement534() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement534() -} - -func (c *current) onExtraListElement539() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonExtraListElement539() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement539() -} - -func (c *current) onExtraListElement544(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement544() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement544(stack["prefix"]) -} - -func (c *current) onExtraListElement507(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement507() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement507(stack["prefix"]) -} - -func (c *current) onExtraListElement551() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement551() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement551() -} - -func (c *current) onExtraListElement558() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement558() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement558() -} - -func (c *current) onExtraListElement561(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement561() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement561(stack["depth"]) -} - -func (c *current) onExtraListElement555(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonExtraListElement555() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement555(stack["depth"]) -} - -func (c *current) onExtraListElement563() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonExtraListElement563() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement563() -} - -func (c *current) onExtraListElement565(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement565() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement565(stack["prefix"]) -} - -func (c *current) onExtraListElement548(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement548() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement548(stack["prefix"]) -} - -func (c *current) onExtraListElement573() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonExtraListElement573() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement573() -} - -func (c *current) onExtraListElement577(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement577() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement577(stack["ref"]) -} - -func (c *current) onExtraListElement569(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonExtraListElement569() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement569(stack["ref"]) -} - -func (c *current) onExtraListElement589() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement589() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement589() -} - -func (c *current) onExtraListElement592(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement592() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement592(stack["separator"]) -} - -func (c *current) onExtraListElement586(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement586() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement586(stack["separator"]) -} - -func (c *current) onExtraListElement595() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement595() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement595() -} - -func (c *current) onExtraListElement582() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonExtraListElement582() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement582() -} - -func (c *current) onExtraListElement606() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement606() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement606() -} - -func (c *current) onExtraListElement609(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement609() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement609(stack["separator"]) -} - -func (c *current) onExtraListElement603(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement603() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement603(stack["separator"]) -} - -func (c *current) onExtraListElement620() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement620() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement620() -} - -func (c *current) onExtraListElement626() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement626() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement626() -} - -func (c *current) onExtraListElement629() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement629() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement629() -} - -func (c *current) onExtraListElement617(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement617() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement617(stack["delimiter"]) -} - -func (c *current) onExtraListElement639() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement639() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement639() -} - -func (c *current) onExtraListElement645() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement645() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement645() -} - -func (c *current) onExtraListElement648() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement648() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement648() -} - -func (c *current) onExtraListElement636(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement636() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement636(stack["delimiter"]) -} - -func (c *current) onExtraListElement659() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonExtraListElement659() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement659() -} - -func (c *current) onExtraListElement663() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement663() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement663() -} - -func (c *current) onExtraListElement666() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement666() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement666() -} - -func (c *current) onExtraListElement655(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonExtraListElement655() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement655(stack["language"]) -} - -func (c *current) onExtraListElement676() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement676() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement676() -} - -func (c *current) onExtraListElement682() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement682() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement682() -} - -func (c *current) onExtraListElement685() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement685() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement685() -} - -func (c *current) onExtraListElement673(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement673() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement673(stack["delimiter"]) -} - -func (c *current) onExtraListElement695() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement695() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement695() -} - -func (c *current) onExtraListElement701() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement701() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement701() -} - -func (c *current) onExtraListElement704() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement704() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement704() -} - -func (c *current) onExtraListElement692(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement692() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement692(stack["delimiter"]) -} - -func (c *current) onExtraListElement714() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement714() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement714() -} - -func (c *current) onExtraListElement720() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement720() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement720() -} - -func (c *current) onExtraListElement723() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement723() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement723() -} - -func (c *current) onExtraListElement711(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement711() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement711(stack["delimiter"]) -} - -func (c *current) onExtraListElement733() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement733() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement733() -} - -func (c *current) onExtraListElement739() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement739() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement739() -} - -func (c *current) onExtraListElement742() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement742() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement742() -} - -func (c *current) onExtraListElement730(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement730() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement730(stack["delimiter"]) -} - -func (c *current) onExtraListElement752() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement752() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement752() -} - -func (c *current) onExtraListElement758() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement758() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement758() -} - -func (c *current) onExtraListElement761() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement761() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement761() -} - -func (c *current) onExtraListElement749(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement749() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement749(stack["delimiter"]) -} - -func (c *current) onExtraListElement771() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement771() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement771() -} - -func (c *current) onExtraListElement777() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement777() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement777() -} - -func (c *current) onExtraListElement780() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement780() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement780() -} - -func (c *current) onExtraListElement768(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement768() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement768(stack["delimiter"]) -} - -func (c *current) onExtraListElement611(delimiter interface{}) (interface{}, error) { - return delimiter, nil - -} - -func (p *parser) callonExtraListElement611() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement611(stack["delimiter"]) -} - -func (c *current) onExtraListElement788() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil - -} - -func (p *parser) callonExtraListElement788() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement788() -} - -func (c *current) onExtraListElement792() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement792() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement792() -} - -func (c *current) onExtraListElement476(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonExtraListElement476() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement476(stack["content"]) -} - -func (c *current) onExtraListElement425(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) - -} - -func (p *parser) callonExtraListElement425() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement425(stack["content"]) -} - -func (c *current) onExtraListElement801() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement801() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement801() -} - -func (c *current) onExtraListElement805() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonExtraListElement805() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement805() -} - -func (c *current) onExtraListElement809() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement809() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement809() -} - -func (c *current) onExtraListElement799(content interface{}) (interface{}, error) { - return types.NewParagraph(content) - -} - -func (p *parser) callonExtraListElement799() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement799(stack["content"]) -} - -func (c *current) onExtraListElement391(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) - -} - -func (p *parser) callonExtraListElement391() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement391(stack["term"], stack["separator"], stack["description"]) -} - -func (c *current) onExtraListElement371(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExtraListElement371() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement371(stack["element"]) -} - -func (c *current) onExtraListElement832() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement832() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement832() -} - -func (c *current) onExtraListElement835(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement835() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement835(stack["separator"]) -} - -func (c *current) onExtraListElement829(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement829() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement829(stack["separator"]) -} - -func (c *current) onExtraListElement838() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement838() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement838() -} - -func (c *current) onExtraListElement825() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonExtraListElement825() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement825() -} - -func (c *current) onExtraListElement850() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement850() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement850() -} - -func (c *current) onExtraListElement853(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement853() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement853(stack["separator"]) -} - -func (c *current) onExtraListElement847(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement847() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement847(stack["separator"]) -} - -func (c *current) onExtraListElement859() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement859() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement859() -} - -func (c *current) onExtraListElement862() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement862() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement862() -} - -func (c *current) onExtraListElement876() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement876() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement876() -} - -func (c *current) onExtraListElement879() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement879() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement879() -} - -func (c *current) onExtraListElement870() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement870() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement870() -} - -func (c *current) onExtraListElement896() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement896() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement896() -} - -func (c *current) onExtraListElement900() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement900() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement900() -} - -func (c *current) onExtraListElement890(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonExtraListElement890() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement890(stack["content"]) -} - -func (c *current) onExtraListElement889(content interface{}) (interface{}, error) { - return nil, nil // taking a shortcut to ignore commented out content and avoid having empty paragraphs - -} - -func (p *parser) callonExtraListElement889() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement889(stack["content"]) -} - -func (c *current) onExtraListElement916() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement916() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement916() -} - -func (c *current) onExtraListElement919() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement919() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement919() -} - -func (c *current) onExtraListElement910() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement910() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement910() -} - -func (c *current) onExtraListElement930() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement930() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement930() -} - -func (c *current) onExtraListElement932() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement932() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement932() -} - -func (c *current) onExtraListElement941() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement941() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement941() -} - -func (c *current) onExtraListElement948() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement948() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement948() -} - -func (c *current) onExtraListElement951(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement951() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement951(stack["depth"]) -} - -func (c *current) onExtraListElement945(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonExtraListElement945() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement945(stack["depth"]) -} - -func (c *current) onExtraListElement952() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonExtraListElement952() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement952() -} - -func (c *current) onExtraListElement957() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonExtraListElement957() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement957() -} - -func (c *current) onExtraListElement961() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonExtraListElement961() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement961() -} - -func (c *current) onExtraListElement965() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonExtraListElement965() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement965() -} - -func (c *current) onExtraListElement970() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonExtraListElement970() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement970() -} - -func (c *current) onExtraListElement975(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement975() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement975(stack["prefix"]) -} - -func (c *current) onExtraListElement938(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement938() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement938(stack["prefix"]) -} - -func (c *current) onExtraListElement982() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement982() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement982() -} - -func (c *current) onExtraListElement989() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement989() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement989() -} - -func (c *current) onExtraListElement992(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement992() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement992(stack["depth"]) -} - -func (c *current) onExtraListElement986(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonExtraListElement986() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement986(stack["depth"]) -} - -func (c *current) onExtraListElement994() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonExtraListElement994() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement994() -} - -func (c *current) onExtraListElement996(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement996() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement996(stack["prefix"]) -} - -func (c *current) onExtraListElement979(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement979() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement979(stack["prefix"]) -} - -func (c *current) onExtraListElement1004() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonExtraListElement1004() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1004() -} - -func (c *current) onExtraListElement1008(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1008() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1008(stack["ref"]) -} - -func (c *current) onExtraListElement1000(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonExtraListElement1000() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1000(stack["ref"]) -} - -func (c *current) onExtraListElement1020() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1020() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1020() -} - -func (c *current) onExtraListElement1023(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement1023() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1023(stack["separator"]) -} - -func (c *current) onExtraListElement1017(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement1017() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1017(stack["separator"]) -} - -func (c *current) onExtraListElement1026() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1026() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1026() -} - -func (c *current) onExtraListElement1013() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonExtraListElement1013() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1013() -} - -func (c *current) onExtraListElement1037() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1037() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1037() -} - -func (c *current) onExtraListElement1040(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement1040() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1040(stack["separator"]) -} - -func (c *current) onExtraListElement1034(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement1034() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1034(stack["separator"]) -} - -func (c *current) onExtraListElement1051() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1051() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1051() -} - -func (c *current) onExtraListElement1057() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1057() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1057() -} - -func (c *current) onExtraListElement1060() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1060() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1060() -} - -func (c *current) onExtraListElement1048(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1048() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1048(stack["delimiter"]) -} - -func (c *current) onExtraListElement1070() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1070() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1070() -} - -func (c *current) onExtraListElement1076() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1076() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1076() -} - -func (c *current) onExtraListElement1079() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1079() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1079() -} - -func (c *current) onExtraListElement1067(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1067() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1067(stack["delimiter"]) -} - -func (c *current) onExtraListElement1090() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1090() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1090() -} - -func (c *current) onExtraListElement1094() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1094() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1094() -} - -func (c *current) onExtraListElement1097() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1097() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1097() -} - -func (c *current) onExtraListElement1086(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonExtraListElement1086() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1086(stack["language"]) -} - -func (c *current) onExtraListElement1107() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1107() -} - -func (c *current) onExtraListElement1113() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1113() -} - -func (c *current) onExtraListElement1116() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1116() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1116() -} - -func (c *current) onExtraListElement1104(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1104() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1104(stack["delimiter"]) -} - -func (c *current) onExtraListElement1126() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1126() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1126() -} - -func (c *current) onExtraListElement1132() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1132() -} - -func (c *current) onExtraListElement1135() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1135() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1135() -} - -func (c *current) onExtraListElement1123(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1123(stack["delimiter"]) -} - -func (c *current) onExtraListElement1145() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1145() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1145() -} - -func (c *current) onExtraListElement1151() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1151() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1151() -} - -func (c *current) onExtraListElement1154() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1154() -} - -func (c *current) onExtraListElement1142(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1142() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1142(stack["delimiter"]) -} - -func (c *current) onExtraListElement1164() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1164() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1164() -} - -func (c *current) onExtraListElement1170() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1170() -} - -func (c *current) onExtraListElement1173() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1173() -} - -func (c *current) onExtraListElement1161(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1161(stack["delimiter"]) -} - -func (c *current) onExtraListElement1183() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1183() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1183() -} - -func (c *current) onExtraListElement1189() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1189() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1189() -} - -func (c *current) onExtraListElement1192() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1192() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1192() -} - -func (c *current) onExtraListElement1180(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1180() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1180(stack["delimiter"]) -} - -func (c *current) onExtraListElement1202() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1202() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1202() -} - -func (c *current) onExtraListElement1208() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1208() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1208() -} - -func (c *current) onExtraListElement1211() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1211() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1211() -} - -func (c *current) onExtraListElement1199(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1199() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1199(stack["delimiter"]) -} - -func (c *current) onExtraListElement1042(delimiter interface{}) (interface{}, error) { - return delimiter, nil - -} - -func (p *parser) callonExtraListElement1042() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1042(stack["delimiter"]) -} - -func (c *current) onExtraListElement1219() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil - -} - -func (p *parser) callonExtraListElement1219() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1219() -} - -func (c *current) onExtraListElement1223() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1223() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1223() -} - -func (c *current) onExtraListElement907(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonExtraListElement907() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement907(stack["content"]) -} - -func (c *current) onExtraListElement856(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) - -} - -func (p *parser) callonExtraListElement856() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement856(stack["content"]) -} - -func (c *current) onExtraListElement1232() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1232() -} - -func (c *current) onExtraListElement1236() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonExtraListElement1236() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1236() -} - -func (c *current) onExtraListElement1240() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1240() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1240() -} - -func (c *current) onExtraListElement1230(content interface{}) (interface{}, error) { - return types.NewParagraph(content) - -} - -func (p *parser) callonExtraListElement1230() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1230(stack["content"]) -} - -func (c *current) onExtraListElement822(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) - -} - -func (p *parser) callonExtraListElement822() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement822(stack["term"], stack["separator"], stack["description"]) -} - -func (c *current) onExtraListElement816(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil - -} - -func (p *parser) callonExtraListElement816() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement816(stack["attributes"], stack["element"]) -} - -func (c *current) onExtraListElement1253() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1253() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1253() -} - -func (c *current) onExtraListElement1257() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1257() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1257() -} - -func (c *current) onExtraListElement1247(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonExtraListElement1247() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1247(stack["content"]) -} - -func (c *current) onExtraListElement1273() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1273() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1273() -} - -func (c *current) onExtraListElement1276() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1276() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1276() -} - -func (c *current) onExtraListElement1267() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement1267() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1267() -} - -func (c *current) onExtraListElement1295() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1295() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1295() -} - -func (c *current) onExtraListElement1293() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1293() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1293() -} - -func (c *current) onExtraListElement1300(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil - -} - -func (p *parser) callonExtraListElement1300() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1300(stack["content"]) -} - -func (c *current) onExtraListElement1302() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1302() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1302() -} - -func (c *current) onExtraListElement1290(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonExtraListElement1290() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1290(stack["content"]) -} - -func (c *current) onExtraListElement1318() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1318() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1318() -} - -func (c *current) onExtraListElement1322() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1322() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1322() -} - -func (c *current) onExtraListElement1312(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonExtraListElement1312() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1312(stack["content"]) -} - -func (c *current) onExtraListElement1332() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonExtraListElement1332() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1332() -} - -func (c *current) onExtraListElement1335(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonExtraListElement1335() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1335(stack["content"]) -} - -func (c *current) onExtraListElement1337() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1337() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1337() -} - -func (c *current) onExtraListElement1329(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonExtraListElement1329() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1329(stack["content"]) -} - -func (c *current) onExtraListElement1287(firstLine, otherLines interface{}) (interface{}, error) { - - return types.NewLiteralParagraph(types.LiteralBlockWithSpacesOnFirstLine, append([]interface{}{firstLine}, otherLines.([]interface{})...)) - -} - -func (p *parser) callonExtraListElement1287() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1287(stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onExtraListElement1264(attributes, element interface{}) (interface{}, error) { - if e, ok := element.(types.WithAttributes); ok { - for _, a := range attributes.([]interface{}) { - if a, ok := a.(types.Attributes); ok { - e.AddAttributes(a) - } - } - } - // implicit attachment to list element - // by wrapping into a ListElementContinuation - return types.NewListElementContinuation(0, element) - -} - -func (p *parser) callonExtraListElement1264() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1264(stack["attributes"], stack["element"]) -} - -func (c *current) onExtraListElement1354() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1354() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1354() -} - -func (c *current) onExtraListElement1358() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1358() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1358() -} - -func (c *current) onExtraListElement1348(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonExtraListElement1348() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1348(stack["content"]) -} - -func (c *current) onExtraListElement1347(content interface{}) (interface{}, error) { - return nil, nil // taking a shortcut to ignore commented out content and avoid having empty paragraphs - -} - -func (p *parser) callonExtraListElement1347() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1347(stack["content"]) -} - -func (c *current) onExtraListElement1374() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1374() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1374() -} - -func (c *current) onExtraListElement1377() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1377() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1377() -} - -func (c *current) onExtraListElement1368() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonExtraListElement1368() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1368() -} - -func (c *current) onExtraListElement1388() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1388() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1388() -} - -func (c *current) onExtraListElement1390() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1390() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1390() -} - -func (c *current) onExtraListElement1399() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1399() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1399() -} - -func (c *current) onExtraListElement1406() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement1406() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1406() -} - -func (c *current) onExtraListElement1409(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement1409() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1409(stack["depth"]) -} - -func (c *current) onExtraListElement1403(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonExtraListElement1403() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1403(stack["depth"]) -} - -func (c *current) onExtraListElement1410() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonExtraListElement1410() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1410() -} - -func (c *current) onExtraListElement1415() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonExtraListElement1415() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1415() -} - -func (c *current) onExtraListElement1419() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonExtraListElement1419() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1419() -} - -func (c *current) onExtraListElement1423() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonExtraListElement1423() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1423() -} - -func (c *current) onExtraListElement1428() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonExtraListElement1428() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1428() -} - -func (c *current) onExtraListElement1433(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1433() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1433(stack["prefix"]) -} - -func (c *current) onExtraListElement1396(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement1396() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1396(stack["prefix"]) -} - -func (c *current) onExtraListElement1440() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1440() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1440() -} - -func (c *current) onExtraListElement1447() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonExtraListElement1447() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1447() -} - -func (c *current) onExtraListElement1450(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonExtraListElement1450() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1450(stack["depth"]) -} - -func (c *current) onExtraListElement1444(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonExtraListElement1444() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1444(stack["depth"]) -} - -func (c *current) onExtraListElement1452() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonExtraListElement1452() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1452() -} - -func (c *current) onExtraListElement1454(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1454() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1454(stack["prefix"]) -} - -func (c *current) onExtraListElement1437(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonExtraListElement1437() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1437(stack["prefix"]) -} - -func (c *current) onExtraListElement1462() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonExtraListElement1462() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1462() -} - -func (c *current) onExtraListElement1466(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1466() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1466(stack["ref"]) -} - -func (c *current) onExtraListElement1458(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonExtraListElement1458() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1458(stack["ref"]) -} - -func (c *current) onExtraListElement1478() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1478() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1478() -} - -func (c *current) onExtraListElement1481(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement1481() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1481(stack["separator"]) -} - -func (c *current) onExtraListElement1475(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement1475() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1475(stack["separator"]) -} - -func (c *current) onExtraListElement1484() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1484() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1484() -} - -func (c *current) onExtraListElement1471() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonExtraListElement1471() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1471() -} - -func (c *current) onExtraListElement1495() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1495() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1495() -} - -func (c *current) onExtraListElement1498(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonExtraListElement1498() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1498(stack["separator"]) -} - -func (c *current) onExtraListElement1492(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonExtraListElement1492() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1492(stack["separator"]) -} - -func (c *current) onExtraListElement1509() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1509() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1509() -} - -func (c *current) onExtraListElement1515() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1515() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1515() -} - -func (c *current) onExtraListElement1518() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1518() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1518() -} - -func (c *current) onExtraListElement1506(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1506() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1506(stack["delimiter"]) -} - -func (c *current) onExtraListElement1528() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1528() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1528() -} - -func (c *current) onExtraListElement1534() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1534() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1534() -} - -func (c *current) onExtraListElement1537() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1537() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1537() -} - -func (c *current) onExtraListElement1525(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1525() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1525(stack["delimiter"]) -} - -func (c *current) onExtraListElement1548() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1548() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1548() -} - -func (c *current) onExtraListElement1552() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1552() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1552() -} - -func (c *current) onExtraListElement1555() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1555() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1555() -} - -func (c *current) onExtraListElement1544(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonExtraListElement1544() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1544(stack["language"]) -} - -func (c *current) onExtraListElement1565() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1565() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1565() -} - -func (c *current) onExtraListElement1571() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1571() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1571() -} - -func (c *current) onExtraListElement1574() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1574() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1574() -} - -func (c *current) onExtraListElement1562(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1562() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1562(stack["delimiter"]) -} - -func (c *current) onExtraListElement1584() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1584() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1584() -} - -func (c *current) onExtraListElement1590() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1590() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1590() -} - -func (c *current) onExtraListElement1593() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1593() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1593() -} - -func (c *current) onExtraListElement1581(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1581() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1581(stack["delimiter"]) -} - -func (c *current) onExtraListElement1603() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1603() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1603() -} - -func (c *current) onExtraListElement1609() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1609() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1609() -} - -func (c *current) onExtraListElement1612() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1612() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1612() -} - -func (c *current) onExtraListElement1600(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1600() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1600(stack["delimiter"]) -} - -func (c *current) onExtraListElement1622() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1622() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1622() -} - -func (c *current) onExtraListElement1628() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1628() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1628() -} - -func (c *current) onExtraListElement1631() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1631() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1631() -} - -func (c *current) onExtraListElement1619(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1619() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1619(stack["delimiter"]) -} - -func (c *current) onExtraListElement1641() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1641() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1641() -} - -func (c *current) onExtraListElement1647() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1647() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1647() -} - -func (c *current) onExtraListElement1650() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1650() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1650() -} - -func (c *current) onExtraListElement1638(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1638() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1638(stack["delimiter"]) -} - -func (c *current) onExtraListElement1660() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1660() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1660() -} - -func (c *current) onExtraListElement1666() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonExtraListElement1666() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1666() -} - -func (c *current) onExtraListElement1669() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1669() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1669() -} - -func (c *current) onExtraListElement1657(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonExtraListElement1657() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1657(stack["delimiter"]) -} - -func (c *current) onExtraListElement1500(delimiter interface{}) (interface{}, error) { - return delimiter, nil - -} - -func (p *parser) callonExtraListElement1500() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1500(stack["delimiter"]) -} - -func (c *current) onExtraListElement1677() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil - -} - -func (p *parser) callonExtraListElement1677() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1677() -} - -func (c *current) onExtraListElement1681() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonExtraListElement1681() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1681() -} - -func (c *current) onExtraListElement1365(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonExtraListElement1365() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1365(stack["content"]) -} - -func (c *current) onExtraListElement1344(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExtraListElement1344() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1344(stack["element"]) -} - -func (c *current) onExtraListElement1(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonExtraListElement1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1(stack["element"]) -} - -func (c *current) onListElementContinuation7() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuation7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuation7() -} - -func (c *current) onListElementContinuation9() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuation9() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuation9() -} - -func (c *current) onListElementContinuation16() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuation16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuation16() -} - -func (c *current) onListElementContinuation18(offset interface{}) (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuation18() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuation18(stack["offset"]) -} - -func (c *current) onListElementContinuation1(offset, element interface{}) (interface{}, error) { - return types.NewListElementContinuation(len(offset.([]interface{})), element) - -} - -func (p *parser) callonListElementContinuation1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuation1(stack["offset"], stack["element"]) -} - -func (c *current) onListElementContinuationElement14() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement14() -} - -func (c *current) onListElementContinuationElement21() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElementContinuationElement21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement21() -} - -func (c *current) onListElementContinuationElement24(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElementContinuationElement24() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement24(stack["depth"]) -} - -func (c *current) onListElementContinuationElement18(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonListElementContinuationElement18() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement18(stack["depth"]) -} - -func (c *current) onListElementContinuationElement25() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonListElementContinuationElement25() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement25() -} - -func (c *current) onListElementContinuationElement30() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonListElementContinuationElement30() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement30() -} - -func (c *current) onListElementContinuationElement34() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonListElementContinuationElement34() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement34() -} - -func (c *current) onListElementContinuationElement38() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonListElementContinuationElement38() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement38() -} - -func (c *current) onListElementContinuationElement43() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonListElementContinuationElement43() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement43() -} - -func (c *current) onListElementContinuationElement48(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement48() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement48(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement11(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElementContinuationElement11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement11(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement55() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement55() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement55() -} - -func (c *current) onListElementContinuationElement59() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement59() -} - -func (c *current) onListElementContinuationElement52(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonListElementContinuationElement52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement52(stack["rawline"]) -} - -func (c *current) onListElementContinuationElement8(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) - -} - -func (p *parser) callonListElementContinuationElement8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement8(stack["prefix"], stack["content"]) -} - -func (c *current) onListElementContinuationElement72() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement72() -} - -func (c *current) onListElementContinuationElement79() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElementContinuationElement79() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement79() -} - -func (c *current) onListElementContinuationElement82(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElementContinuationElement82() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement82(stack["depth"]) -} - -func (c *current) onListElementContinuationElement76(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonListElementContinuationElement76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement76(stack["depth"]) -} - -func (c *current) onListElementContinuationElement84() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonListElementContinuationElement84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement84() -} - -func (c *current) onListElementContinuationElement86(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement86() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement86(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement69(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElementContinuationElement69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement69(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement97() (interface{}, error) { - return types.Unchecked, nil -} - -func (p *parser) callonListElementContinuationElement97() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement97() -} - -func (c *current) onListElementContinuationElement99() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonListElementContinuationElement99() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement99() -} - -func (c *current) onListElementContinuationElement101() (interface{}, error) { - return types.Checked, nil -} - -func (p *parser) callonListElementContinuationElement101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement101() -} - -func (c *current) onListElementContinuationElement103(style interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement103() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement103(stack["style"]) -} - -func (c *current) onListElementContinuationElement91(style interface{}) (interface{}, error) { - return style, nil - -} - -func (p *parser) callonListElementContinuationElement91() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement91(stack["style"]) -} - -func (c *current) onListElementContinuationElement110() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement110() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement110() -} - -func (c *current) onListElementContinuationElement114() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement114() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement114() -} - -func (c *current) onListElementContinuationElement107(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - -} - -func (p *parser) callonListElementContinuationElement107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement107(stack["rawline"]) -} - -func (c *current) onListElementContinuationElement66(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) - -} - -func (p *parser) callonListElementContinuationElement66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement66(stack["prefix"], stack["checkstyle"], stack["content"]) -} - -func (c *current) onListElementContinuationElement128() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonListElementContinuationElement128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement128() -} - -func (c *current) onListElementContinuationElement132(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement132(stack["ref"]) -} - -func (c *current) onListElementContinuationElement124(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonListElementContinuationElement124() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement124(stack["ref"]) -} - -func (c *current) onListElementContinuationElement139() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement139() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement139() -} - -func (c *current) onListElementContinuationElement143() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement143() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement143() -} - -func (c *current) onListElementContinuationElement136(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) - -} - -func (p *parser) callonListElementContinuationElement136() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement136(stack["rawline"]) -} - -func (c *current) onListElementContinuationElement121(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) - -} - -func (p *parser) callonListElementContinuationElement121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement121(stack["ref"], stack["description"]) -} - -func (c *current) onListElementContinuationElement160() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement160() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement160() -} - -func (c *current) onListElementContinuationElement163(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElementContinuationElement163() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement163(stack["separator"]) -} - -func (c *current) onListElementContinuationElement157(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElementContinuationElement157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement157(stack["separator"]) -} - -func (c *current) onListElementContinuationElement166() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement166() -} - -func (c *current) onListElementContinuationElement153() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonListElementContinuationElement153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement153() -} - -func (c *current) onListElementContinuationElement178() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement178() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement178() -} - -func (c *current) onListElementContinuationElement181(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElementContinuationElement181() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement181(stack["separator"]) -} - -func (c *current) onListElementContinuationElement175(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElementContinuationElement175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement175(stack["separator"]) -} - -func (c *current) onListElementContinuationElement187() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement187() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement187() -} - -func (c *current) onListElementContinuationElement190() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement190() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement190() -} - -func (c *current) onListElementContinuationElement204() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement204() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement204() -} - -func (c *current) onListElementContinuationElement207() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement207() -} - -func (c *current) onListElementContinuationElement198() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement198() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement198() -} - -func (c *current) onListElementContinuationElement224() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement224() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement224() -} - -func (c *current) onListElementContinuationElement228() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement228() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement228() -} - -func (c *current) onListElementContinuationElement218(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement218() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement218(stack["content"]) -} - -func (c *current) onListElementContinuationElement217(content interface{}) (interface{}, error) { - return nil, nil // taking a shortcut to ignore commented out content and avoid having empty paragraphs - -} - -func (p *parser) callonListElementContinuationElement217() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement217(stack["content"]) -} - -func (c *current) onListElementContinuationElement244() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement244() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement244() -} - -func (c *current) onListElementContinuationElement247() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement247() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement247() -} - -func (c *current) onListElementContinuationElement238() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement238() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement238() -} - -func (c *current) onListElementContinuationElement258() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement258() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement258() -} - -func (c *current) onListElementContinuationElement260() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement260() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement260() -} - -func (c *current) onListElementContinuationElement269() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement269() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement269() -} - -func (c *current) onListElementContinuationElement276() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElementContinuationElement276() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement276() -} - -func (c *current) onListElementContinuationElement279(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElementContinuationElement279() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement279(stack["depth"]) -} - -func (c *current) onListElementContinuationElement273(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonListElementContinuationElement273() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement273(stack["depth"]) -} - -func (c *current) onListElementContinuationElement280() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonListElementContinuationElement280() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement280() -} - -func (c *current) onListElementContinuationElement285() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonListElementContinuationElement285() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement285() -} - -func (c *current) onListElementContinuationElement289() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonListElementContinuationElement289() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement289() -} - -func (c *current) onListElementContinuationElement293() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonListElementContinuationElement293() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement293() -} - -func (c *current) onListElementContinuationElement298() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonListElementContinuationElement298() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement298() -} - -func (c *current) onListElementContinuationElement303(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement303() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement303(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement266(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElementContinuationElement266() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement266(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement310() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement310() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement310() -} - -func (c *current) onListElementContinuationElement317() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonListElementContinuationElement317() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement317() -} - -func (c *current) onListElementContinuationElement320(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonListElementContinuationElement320() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement320(stack["depth"]) -} - -func (c *current) onListElementContinuationElement314(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonListElementContinuationElement314() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement314(stack["depth"]) -} - -func (c *current) onListElementContinuationElement322() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonListElementContinuationElement322() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement322() -} - -func (c *current) onListElementContinuationElement324(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement324() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement324(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement307(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElementContinuationElement307() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement307(stack["prefix"]) -} - -func (c *current) onListElementContinuationElement332() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonListElementContinuationElement332() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement332() -} - -func (c *current) onListElementContinuationElement336(ref interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement336() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement336(stack["ref"]) -} - -func (c *current) onListElementContinuationElement328(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonListElementContinuationElement328() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement328(stack["ref"]) -} - -func (c *current) onListElementContinuationElement348() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement348() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement348() -} - -func (c *current) onListElementContinuationElement351(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElementContinuationElement351() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement351(stack["separator"]) -} - -func (c *current) onListElementContinuationElement345(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElementContinuationElement345() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement345(stack["separator"]) -} - -func (c *current) onListElementContinuationElement354() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement354() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement354() -} - -func (c *current) onListElementContinuationElement341() (interface{}, error) { - return types.NewRawLine(strings.TrimSpace(string(c.text))) - -} - -func (p *parser) callonListElementContinuationElement341() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement341() -} - -func (c *current) onListElementContinuationElement365() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement365() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement365() -} - -func (c *current) onListElementContinuationElement368(separator interface{}) (bool, error) { - - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil - -} - -func (p *parser) callonListElementContinuationElement368() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement368(stack["separator"]) -} - -func (c *current) onListElementContinuationElement362(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElementContinuationElement362() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement362(stack["separator"]) -} - -func (c *current) onListElementContinuationElement379() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement379() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement379() -} - -func (c *current) onListElementContinuationElement385() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement385() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement385() -} - -func (c *current) onListElementContinuationElement388() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement388() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement388() -} - -func (c *current) onListElementContinuationElement376(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement376() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement376(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement398() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement398() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement398() -} - -func (c *current) onListElementContinuationElement404() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement404() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement404() -} - -func (c *current) onListElementContinuationElement407() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement407() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement407() -} - -func (c *current) onListElementContinuationElement395(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement395() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement395(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement418() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement418() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement418() -} - -func (c *current) onListElementContinuationElement422() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement422() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement422() -} - -func (c *current) onListElementContinuationElement425() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement425() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement425() -} - -func (c *current) onListElementContinuationElement414(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonListElementContinuationElement414() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement414(stack["language"]) -} - -func (c *current) onListElementContinuationElement435() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement435() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement435() -} - -func (c *current) onListElementContinuationElement441() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement441() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement441() -} - -func (c *current) onListElementContinuationElement444() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement444() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement444() -} - -func (c *current) onListElementContinuationElement432(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement432() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement432(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement454() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement454() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement454() -} - -func (c *current) onListElementContinuationElement460() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement460() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement460() -} - -func (c *current) onListElementContinuationElement463() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement463() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement463() -} - -func (c *current) onListElementContinuationElement451(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement451() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement451(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement473() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement473() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement473() -} - -func (c *current) onListElementContinuationElement479() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement479() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement479() -} - -func (c *current) onListElementContinuationElement482() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement482() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement482() -} - -func (c *current) onListElementContinuationElement470(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement470() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement470(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement492() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement492() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement492() -} - -func (c *current) onListElementContinuationElement498() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement498() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement498() -} - -func (c *current) onListElementContinuationElement501() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement501() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement501() -} - -func (c *current) onListElementContinuationElement489(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement489() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement489(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement511() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement511() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement511() -} - -func (c *current) onListElementContinuationElement517() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement517() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement517() -} - -func (c *current) onListElementContinuationElement520() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement520() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement520() -} - -func (c *current) onListElementContinuationElement508(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement508() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement508(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement530() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement530() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement530() -} - -func (c *current) onListElementContinuationElement536() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement536() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement536() -} - -func (c *current) onListElementContinuationElement539() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement539() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement539() -} - -func (c *current) onListElementContinuationElement527(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement527() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement527(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement370(delimiter interface{}) (interface{}, error) { - return delimiter, nil - -} - -func (p *parser) callonListElementContinuationElement370() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement370(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement547() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil - -} - -func (p *parser) callonListElementContinuationElement547() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement547() -} - -func (c *current) onListElementContinuationElement551() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement551() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement551() -} - -func (c *current) onListElementContinuationElement235(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement235() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement235(stack["content"]) -} - -func (c *current) onListElementContinuationElement184(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) - -} - -func (p *parser) callonListElementContinuationElement184() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement184(stack["content"]) -} - -func (c *current) onListElementContinuationElement560() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement560() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement560() -} - -func (c *current) onListElementContinuationElement564() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement564() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement564() -} - -func (c *current) onListElementContinuationElement568() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement568() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement568() -} - -func (c *current) onListElementContinuationElement558(content interface{}) (interface{}, error) { - return types.NewParagraph(content) - -} - -func (p *parser) callonListElementContinuationElement558() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement558(stack["content"]) -} - -func (c *current) onListElementContinuationElement150(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) - -} - -func (p *parser) callonListElementContinuationElement150() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement150(stack["term"], stack["separator"], stack["description"]) -} - -func (c *current) onListElementContinuationElement586() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement586() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement586() -} - -func (c *current) onListElementContinuationElement589() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement589() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement589() -} - -func (c *current) onListElementContinuationElement580() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement580() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement580() -} - -func (c *current) onListElementContinuationElement601() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement601() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement601() -} - -func (c *current) onListElementContinuationElement608() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement608() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement608() -} - -func (c *current) onListElementContinuationElement611() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement611() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement611() -} - -func (c *current) onListElementContinuationElement597(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement597() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement597(stack["name"]) -} - -func (c *current) onListElementContinuationElement622() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement622() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement622() -} - -func (c *current) onListElementContinuationElement629() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement629() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement629() -} - -func (c *current) onListElementContinuationElement632() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement632() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement632() -} - -func (c *current) onListElementContinuationElement618(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement618() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement618(stack["name"]) -} - -func (c *current) onListElementContinuationElement644() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement644() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement644() -} - -func (c *current) onListElementContinuationElement650() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement650() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement650() -} - -func (c *current) onListElementContinuationElement653() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement653() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement653() -} - -func (c *current) onListElementContinuationElement641(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement641() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement641(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement669() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement669() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement669() -} - -func (c *current) onListElementContinuationElement675() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement675() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement675() -} - -func (c *current) onListElementContinuationElement678() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement678() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement678() -} - -func (c *current) onListElementContinuationElement666(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement666() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement666(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement694() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement694() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement694() -} - -func (c *current) onListElementContinuationElement698() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement698() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement698() -} - -func (c *current) onListElementContinuationElement688(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement688() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement688(stack["content"]) -} - -func (c *current) onListElementContinuationElement662(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement662() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement662(stack["line"]) -} - -func (c *current) onListElementContinuationElement710() (interface{}, error) { - // sequence of 4 "/" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement710() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement710() -} - -func (c *current) onListElementContinuationElement716() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement716() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement716() -} - -func (c *current) onListElementContinuationElement719() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement719() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement719() -} - -func (c *current) onListElementContinuationElement707(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement707() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement707(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement639(delimiter, content interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Comment, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement639() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement639(stack["delimiter"], stack["content"]) -} - -func (c *current) onListElementContinuationElement734() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement734() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement734() -} - -func (c *current) onListElementContinuationElement740() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement740() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement740() -} - -func (c *current) onListElementContinuationElement743() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement743() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement743() -} - -func (c *current) onListElementContinuationElement731(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement731() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement731(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement750(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement750() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement750(stack["start"]) -} - -func (c *current) onListElementContinuationElement762() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement762() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement762() -} - -func (c *current) onListElementContinuationElement768() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement768() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement768() -} - -func (c *current) onListElementContinuationElement771() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement771() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement771() -} - -func (c *current) onListElementContinuationElement759(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement759() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement759(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement778(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement778() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement778(stack["end"]) -} - -func (c *current) onListElementContinuationElement788() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement788() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement788() -} - -func (c *current) onListElementContinuationElement792() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement792() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement792() -} - -func (c *current) onListElementContinuationElement782(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement782() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement782(stack["content"]) -} - -func (c *current) onListElementContinuationElement753(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement753() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement753(stack["line"]) -} - -func (c *current) onListElementContinuationElement807() (interface{}, error) { - // sequence of 4 "=" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement807() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement807() -} - -func (c *current) onListElementContinuationElement813() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement813() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement813() -} - -func (c *current) onListElementContinuationElement816() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement816() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement816() -} - -func (c *current) onListElementContinuationElement804(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement804() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement804(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement823(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement823() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement823(stack["end"]) -} - -func (c *current) onListElementContinuationElement728(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Example, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement728() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement728(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onListElementContinuationElement833() (interface{}, error) { - // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement833() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement833() -} - -func (c *current) onListElementContinuationElement837() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement837() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement837() -} - -func (c *current) onListElementContinuationElement840() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement840() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement840() -} - -func (c *current) onListElementContinuationElement829(language interface{}) (interface{}, error) { - return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) -} - -func (p *parser) callonListElementContinuationElement829() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement829(stack["language"]) -} - -func (c *current) onListElementContinuationElement855() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement855() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement855() -} - -func (c *current) onListElementContinuationElement858() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement858() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement858() -} - -func (c *current) onListElementContinuationElement872() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement872() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement872() -} - -func (c *current) onListElementContinuationElement876() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement876() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement876() -} - -func (c *current) onListElementContinuationElement866(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement866() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement866(stack["content"]) -} - -func (c *current) onListElementContinuationElement849(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement849() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement849(stack["line"]) -} - -func (c *current) onListElementContinuationElement887() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement887() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement887() -} - -func (c *current) onListElementContinuationElement890() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement890() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement890() -} - -func (c *current) onListElementContinuationElement826(delimiter, content interface{}) (interface{}, error) { - // Markdown code with fences is a "listing/source" block in Asciidoc - b, err := types.NewDelimitedBlock(types.Listing, content.([]interface{})) - b.AddAttributes(delimiter.(*types.BlockDelimiter).Attributes) - return b, err - -} - -func (p *parser) callonListElementContinuationElement826() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement826(stack["delimiter"], stack["content"]) -} - -func (c *current) onListElementContinuationElement903() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement903() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement903() -} - -func (c *current) onListElementContinuationElement909() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement909() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement909() -} - -func (c *current) onListElementContinuationElement912() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement912() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement912() -} - -func (c *current) onListElementContinuationElement900(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement900() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement900(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement919(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement919() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement919(stack["start"]) -} - -func (c *current) onListElementContinuationElement931() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement931() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement931() -} - -func (c *current) onListElementContinuationElement937() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement937() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement937() -} - -func (c *current) onListElementContinuationElement940() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement940() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement940() -} - -func (c *current) onListElementContinuationElement928(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement928() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement928(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement947(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement947() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement947(stack["end"]) -} - -func (c *current) onListElementContinuationElement957() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement957() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement957() -} - -func (c *current) onListElementContinuationElement961() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement961() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement961() -} - -func (c *current) onListElementContinuationElement951(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement951() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement951(stack["content"]) -} - -func (c *current) onListElementContinuationElement922(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement922() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement922(stack["line"]) -} - -func (c *current) onListElementContinuationElement976() (interface{}, error) { - // sequence of 3 "`" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement976() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement976() -} - -func (c *current) onListElementContinuationElement982() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement982() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement982() -} - -func (c *current) onListElementContinuationElement985() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement985() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement985() -} - -func (c *current) onListElementContinuationElement973(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement973() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement973(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement992(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement992() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement992(stack["end"]) -} - -func (c *current) onListElementContinuationElement897(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Fenced, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement897() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement897(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onListElementContinuationElement1001() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1001() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1001() -} - -func (c *current) onListElementContinuationElement1007() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1007() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1007() -} - -func (c *current) onListElementContinuationElement1010() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1010() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1010() -} - -func (c *current) onListElementContinuationElement998(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement998() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement998(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1017(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1017() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1017(stack["start"]) -} - -func (c *current) onListElementContinuationElement1029() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1029() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1029() -} - -func (c *current) onListElementContinuationElement1035() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1035() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1035() -} - -func (c *current) onListElementContinuationElement1038() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1038() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1038() -} - -func (c *current) onListElementContinuationElement1026(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1026() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1026(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1045(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1045() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1045(stack["end"]) -} - -func (c *current) onListElementContinuationElement1055() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1055() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1055() -} - -func (c *current) onListElementContinuationElement1059() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1059() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1059() -} - -func (c *current) onListElementContinuationElement1049(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1049() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1049(stack["content"]) -} - -func (c *current) onListElementContinuationElement1020(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement1020() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1020(stack["line"]) -} - -func (c *current) onListElementContinuationElement1074() (interface{}, error) { - // sequence of 4 "-" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1074() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1074() -} - -func (c *current) onListElementContinuationElement1080() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1080() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1080() -} - -func (c *current) onListElementContinuationElement1083() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1083() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1083() -} - -func (c *current) onListElementContinuationElement1071(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1071() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1071(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1090(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1090() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1090(stack["end"]) -} - -func (c *current) onListElementContinuationElement995(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Listing, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement995() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement995(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onListElementContinuationElement1099() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1099() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1099() -} - -func (c *current) onListElementContinuationElement1105() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1105() -} - -func (c *current) onListElementContinuationElement1108() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1108() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1108() -} - -func (c *current) onListElementContinuationElement1096(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1096() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1096(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1115(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1115() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1115(stack["start"]) -} - -func (c *current) onListElementContinuationElement1127() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1127() -} - -func (c *current) onListElementContinuationElement1133() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1133() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1133() -} - -func (c *current) onListElementContinuationElement1136() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1136() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1136() -} - -func (c *current) onListElementContinuationElement1124(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1124() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1124(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1143(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1143() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1143(stack["end"]) -} - -func (c *current) onListElementContinuationElement1153() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1153() -} - -func (c *current) onListElementContinuationElement1157() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1157() -} - -func (c *current) onListElementContinuationElement1147(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1147() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1147(stack["content"]) -} - -func (c *current) onListElementContinuationElement1118(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement1118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1118(stack["line"]) -} - -func (c *current) onListElementContinuationElement1172() (interface{}, error) { - // sequence of 4 "." chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1172() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1172() -} - -func (c *current) onListElementContinuationElement1178() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1178() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1178() -} - -func (c *current) onListElementContinuationElement1181() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1181() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1181() -} - -func (c *current) onListElementContinuationElement1169(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1169(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1188(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1188() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1188(stack["end"]) -} - -func (c *current) onListElementContinuationElement1093(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Literal, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1093() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1093(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onListElementContinuationElement1203() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1203() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1203() -} - -func (c *current) onListElementContinuationElement1206() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1206() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1206() -} - -func (c *current) onListElementContinuationElement1197() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement1197() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1197() -} - -func (c *current) onListElementContinuationElement1215() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1215() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1215() -} - -func (c *current) onListElementContinuationElement1219() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1219() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1219() -} - -func (c *current) onListElementContinuationElement1194(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1194() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1194(stack["content"]) -} - -func (c *current) onListElementContinuationElement1238() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1238() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1238() -} - -func (c *current) onListElementContinuationElement1241() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1241() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1241() -} - -func (c *current) onListElementContinuationElement1232() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement1232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1232() -} - -func (c *current) onListElementContinuationElement1250() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1250() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1250() -} - -func (c *current) onListElementContinuationElement1254() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1254() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1254() -} - -func (c *current) onListElementContinuationElement1229(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1229() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1229(stack["content"]) -} - -func (c *current) onListElementContinuationElement1264() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonListElementContinuationElement1264() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1264() -} - -func (c *current) onListElementContinuationElement1267(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonListElementContinuationElement1267() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1267(stack["content"]) -} - -func (c *current) onListElementContinuationElement1269() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1269() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1269() -} - -func (c *current) onListElementContinuationElement1261(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1261(stack["content"]) -} - -func (c *current) onListElementContinuationElement1191(firstLine, otherLines interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.MarkdownQuote, append([]interface{}{firstLine}, otherLines.([]interface{})...)) - -} - -func (p *parser) callonListElementContinuationElement1191() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1191(stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onListElementContinuationElement1282() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1282() -} - -func (c *current) onListElementContinuationElement1288() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1288() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1288() -} - -func (c *current) onListElementContinuationElement1291() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1291() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1291() -} - -func (c *current) onListElementContinuationElement1279(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1279() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1279(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1298(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1298() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1298(stack["start"]) -} - -func (c *current) onListElementContinuationElement1310() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1310() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1310() -} - -func (c *current) onListElementContinuationElement1316() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1316() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1316() -} - -func (c *current) onListElementContinuationElement1319() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1319() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1319() -} - -func (c *current) onListElementContinuationElement1307(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1307() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1307(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1326(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1326() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1326(stack["end"]) -} - -func (c *current) onListElementContinuationElement1336() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1336() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1336() -} - -func (c *current) onListElementContinuationElement1340() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1340() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1340() -} - -func (c *current) onListElementContinuationElement1330(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1330() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1330(stack["content"]) -} - -func (c *current) onListElementContinuationElement1301(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement1301() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1301(stack["line"]) -} - -func (c *current) onListElementContinuationElement1355() (interface{}, error) { - // sequence of 4 "+" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1355() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1355() -} - -func (c *current) onListElementContinuationElement1361() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1361() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1361() -} - -func (c *current) onListElementContinuationElement1364() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1364() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1364() -} - -func (c *current) onListElementContinuationElement1352(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1352() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1352(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1371(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1371() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1371(stack["end"]) -} - -func (c *current) onListElementContinuationElement1276(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Passthrough, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1276() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1276(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onListElementContinuationElement1380() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1380() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1380() -} - -func (c *current) onListElementContinuationElement1386() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1386() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1386() -} - -func (c *current) onListElementContinuationElement1389() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1389() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1389() -} - -func (c *current) onListElementContinuationElement1377(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1377() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1377(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1396(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1396() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1396(stack["start"]) -} - -func (c *current) onListElementContinuationElement1408() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1408() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1408() -} - -func (c *current) onListElementContinuationElement1414() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1414() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1414() -} - -func (c *current) onListElementContinuationElement1417() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1417() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1417() -} - -func (c *current) onListElementContinuationElement1405(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1405() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1405(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1424(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1424() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1424(stack["end"]) -} - -func (c *current) onListElementContinuationElement1434() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1434() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1434() -} - -func (c *current) onListElementContinuationElement1438() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1438() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1438() -} - -func (c *current) onListElementContinuationElement1428(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1428() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1428(stack["content"]) -} - -func (c *current) onListElementContinuationElement1399(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement1399() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1399(stack["line"]) -} - -func (c *current) onListElementContinuationElement1453() (interface{}, error) { - // sequence of 4 "_" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1453() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1453() -} - -func (c *current) onListElementContinuationElement1459() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1459() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1459() -} - -func (c *current) onListElementContinuationElement1462() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1462() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1462() -} - -func (c *current) onListElementContinuationElement1450(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1450() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1450(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1469(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1469() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1469(stack["end"]) -} - -func (c *current) onListElementContinuationElement1374(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Quote, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1374() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1374(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onListElementContinuationElement1478() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1478() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1478() -} - -func (c *current) onListElementContinuationElement1484() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1484() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1484() -} - -func (c *current) onListElementContinuationElement1487() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1487() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1487() -} - -func (c *current) onListElementContinuationElement1475(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1475() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1475(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1494(start interface{}) (bool, error) { - return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1494() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1494(stack["start"]) -} - -func (c *current) onListElementContinuationElement1506() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1506() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1506() -} - -func (c *current) onListElementContinuationElement1512() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1512() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1512() -} - -func (c *current) onListElementContinuationElement1515() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1515() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1515() -} - -func (c *current) onListElementContinuationElement1503(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1503() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1503(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1522(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1522() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1522(stack["end"]) -} - -func (c *current) onListElementContinuationElement1532() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1532() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1532() -} - -func (c *current) onListElementContinuationElement1536() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1536() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1536() -} - -func (c *current) onListElementContinuationElement1526(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1526() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1526(stack["content"]) -} - -func (c *current) onListElementContinuationElement1497(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement1497() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1497(stack["line"]) -} - -func (c *current) onListElementContinuationElement1551() (interface{}, error) { - // sequence of 4 "*" chars or more - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1551() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1551() -} - -func (c *current) onListElementContinuationElement1557() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1557() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1557() -} - -func (c *current) onListElementContinuationElement1560() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1560() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1560() -} - -func (c *current) onListElementContinuationElement1548(delimiter interface{}) (interface{}, error) { - - return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) - -} - -func (p *parser) callonListElementContinuationElement1548() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1548(stack["delimiter"]) -} - -func (c *current) onListElementContinuationElement1567(end interface{}) (bool, error) { - return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) - -} - -func (p *parser) callonListElementContinuationElement1567() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1567(stack["end"]) -} - -func (c *current) onListElementContinuationElement1472(start, content, end interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.Sidebar, content.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1472() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1472(stack["start"], stack["content"], stack["end"]) -} - -func (c *current) onListElementContinuationElement1581() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1581() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1581() -} - -func (c *current) onListElementContinuationElement1584() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1584() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1584() -} - -func (c *current) onListElementContinuationElement1592() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1592() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1592() -} - -func (c *current) onListElementContinuationElement1570() (interface{}, error) { - - return types.NewThematicBreak() - -} - -func (p *parser) callonListElementContinuationElement1570() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1570() -} - -func (c *current) onListElementContinuationElement1604() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1604() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1604() -} - -func (c *current) onListElementContinuationElement1607() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1607() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1607() -} - -func (c *current) onListElementContinuationElement1624() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1624() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1624() -} - -func (c *current) onListElementContinuationElement1630() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1630() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1630() -} - -func (c *current) onListElementContinuationElement1628(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1628() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1628(stack["content"]) -} - -func (c *current) onListElementContinuationElement1620(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonListElementContinuationElement1620() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1620(stack["content"]) -} - -func (c *current) onListElementContinuationElement1634() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1634() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1634() -} - -func (c *current) onListElementContinuationElement1648() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1648() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1648() -} - -func (c *current) onListElementContinuationElement1651() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1651() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1651() -} - -func (c *current) onListElementContinuationElement1642() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement1642() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1642() -} - -func (c *current) onListElementContinuationElement1616(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1616() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1616(stack["cells"]) -} - -func (c *current) onListElementContinuationElement1668() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1668() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1668() -} - -func (c *current) onListElementContinuationElement1671() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1671() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1671() -} - -func (c *current) onListElementContinuationElement1692() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1692() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1692() -} - -func (c *current) onListElementContinuationElement1695() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1695() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1695() -} - -func (c *current) onListElementContinuationElement1711() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1711() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1711() -} - -func (c *current) onListElementContinuationElement1714() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1714() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1714() -} - -func (c *current) onListElementContinuationElement1705() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement1705() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1705() -} - -func (c *current) onListElementContinuationElement1723() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1723() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1723() -} - -func (c *current) onListElementContinuationElement1729() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1729() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1729() -} - -func (c *current) onListElementContinuationElement1727(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1727() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1727(stack["content"]) -} - -func (c *current) onListElementContinuationElement1685(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonListElementContinuationElement1685() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1685(stack["content"]) -} - -func (c *current) onListElementContinuationElement1733() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1733() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1733() -} - -func (c *current) onListElementContinuationElement1682(cell interface{}) (interface{}, error) { - return cell, nil - -} - -func (p *parser) callonListElementContinuationElement1682() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1682(stack["cell"]) -} - -func (c *current) onListElementContinuationElement1748() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1748() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1748() -} - -func (c *current) onListElementContinuationElement1751() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1751() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1751() -} - -func (c *current) onListElementContinuationElement1742() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement1742() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1742() -} - -func (c *current) onListElementContinuationElement1763() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1763() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1763() -} - -func (c *current) onListElementContinuationElement1766() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1766() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1766() -} - -func (c *current) onListElementContinuationElement1661(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1661() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1661(stack["cells"]) -} - -func (c *current) onListElementContinuationElement1782() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1782() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1782() -} - -func (c *current) onListElementContinuationElement1785() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1785() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1785() -} - -func (c *current) onListElementContinuationElement1803() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1803() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1803() -} - -func (c *current) onListElementContinuationElement1806() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1806() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1806() -} - -func (c *current) onListElementContinuationElement1822() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1822() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1822() -} - -func (c *current) onListElementContinuationElement1825() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1825() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1825() -} - -func (c *current) onListElementContinuationElement1816() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement1816() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1816() -} - -func (c *current) onListElementContinuationElement1834() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1834() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1834() -} - -func (c *current) onListElementContinuationElement1840() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1840() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1840() -} - -func (c *current) onListElementContinuationElement1838(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1838() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1838(stack["content"]) -} - -func (c *current) onListElementContinuationElement1796(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonListElementContinuationElement1796() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1796(stack["content"]) -} - -func (c *current) onListElementContinuationElement1844() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1844() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1844() -} - -func (c *current) onListElementContinuationElement1858() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1858() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1858() -} - -func (c *current) onListElementContinuationElement1861() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1861() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1861() -} - -func (c *current) onListElementContinuationElement1852() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonListElementContinuationElement1852() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1852() -} - -func (c *current) onListElementContinuationElement1775(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1775() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1775(stack["cells"]) -} - -func (c *current) onListElementContinuationElement1872() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1872() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1872() -} - -func (c *current) onListElementContinuationElement1875() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1875() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1875() -} - -func (c *current) onListElementContinuationElement1600(header, rows interface{}) (interface{}, error) { - return types.NewTable(header, rows.([]interface{})) - -} - -func (p *parser) callonListElementContinuationElement1600() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1600(stack["header"], stack["rows"]) -} - -func (c *current) onListElementContinuationElement1890() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1890() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1890() -} - -func (c *current) onListElementContinuationElement1894() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1894() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1894() -} - -func (c *current) onListElementContinuationElement1884(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1884() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1884(stack["content"]) -} - -func (c *current) onListElementContinuationElement1905() (interface{}, error) { - return types.Tip, nil -} - -func (p *parser) callonListElementContinuationElement1905() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1905() -} - -func (c *current) onListElementContinuationElement1907() (interface{}, error) { - return types.Note, nil -} - -func (p *parser) callonListElementContinuationElement1907() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1907() -} - -func (c *current) onListElementContinuationElement1909() (interface{}, error) { - return types.Important, nil -} - -func (p *parser) callonListElementContinuationElement1909() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1909() -} - -func (c *current) onListElementContinuationElement1911() (interface{}, error) { - return types.Warning, nil -} - -func (p *parser) callonListElementContinuationElement1911() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1911() -} - -func (c *current) onListElementContinuationElement1913() (interface{}, error) { - return types.Caution, nil -} - -func (p *parser) callonListElementContinuationElement1913() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1913() -} - -func (c *current) onListElementContinuationElement1920() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonListElementContinuationElement1920() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1920() -} - -func (c *current) onListElementContinuationElement1923(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonListElementContinuationElement1923() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1923(stack["content"]) -} - -func (c *current) onListElementContinuationElement1925() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1925() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1925() -} - -func (c *current) onListElementContinuationElement1917(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1917() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1917(stack["content"]) -} - -func (c *current) onListElementContinuationElement1940() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1940() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1940() -} - -func (c *current) onListElementContinuationElement1942() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1942() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1942() -} - -func (c *current) onListElementContinuationElement1955() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1955() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1955() -} - -func (c *current) onListElementContinuationElement1959() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1959() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1959() -} - -func (c *current) onListElementContinuationElement1949(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1949() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1949(stack["content"]) -} - -func (c *current) onListElementContinuationElement1969() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonListElementContinuationElement1969() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1969() -} - -func (c *current) onListElementContinuationElement1972(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonListElementContinuationElement1972() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1972(stack["content"]) -} - -func (c *current) onListElementContinuationElement1974() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1974() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1974() -} - -func (c *current) onListElementContinuationElement1966(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1966() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1966(stack["content"]) -} - -func (c *current) onListElementContinuationElement1934(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonListElementContinuationElement1934() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1934(stack["line"]) -} - -func (c *current) onListElementContinuationElement1901(kind, firstLine, otherLines interface{}) (interface{}, error) { - - return types.NewAdmonitionParagraph(kind.(string), append([]interface{}{firstLine}, otherLines.([]interface{})...)) - -} - -func (p *parser) callonListElementContinuationElement1901() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1901(stack["kind"], stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onListElementContinuationElement1989() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1989() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1989() -} - -func (c *current) onListElementContinuationElement1987() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement1987() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1987() -} - -func (c *current) onListElementContinuationElement1994(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil - -} - -func (p *parser) callonListElementContinuationElement1994() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1994(stack["content"]) -} - -func (c *current) onListElementContinuationElement1996() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement1996() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1996() -} - -func (c *current) onListElementContinuationElement1984(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement1984() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1984(stack["content"]) -} - -func (c *current) onListElementContinuationElement2012() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement2012() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2012() -} - -func (c *current) onListElementContinuationElement2016() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement2016() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2016() -} - -func (c *current) onListElementContinuationElement2006(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement2006() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2006(stack["content"]) -} - -func (c *current) onListElementContinuationElement2026() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonListElementContinuationElement2026() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2026() -} - -func (c *current) onListElementContinuationElement2029(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonListElementContinuationElement2029() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2029(stack["content"]) -} - -func (c *current) onListElementContinuationElement2031() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement2031() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2031() -} - -func (c *current) onListElementContinuationElement2023(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonListElementContinuationElement2023() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2023(stack["content"]) -} - -func (c *current) onListElementContinuationElement1981(firstLine, otherLines interface{}) (interface{}, error) { - - return types.NewLiteralParagraph(types.LiteralBlockWithSpacesOnFirstLine, append([]interface{}{firstLine}, otherLines.([]interface{})...)) - -} - -func (p *parser) callonListElementContinuationElement1981() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1981(stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onListElementContinuationElement2041() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonListElementContinuationElement2041() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2041() -} - -func (c *current) onListElementContinuationElement2045() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElementContinuationElement2045() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2045() -} - -func (c *current) onListElementContinuationElement2038(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewParagraph(types.RawLine(content.(string))) - -} - -func (p *parser) callonListElementContinuationElement2038() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement2038(stack["content"]) -} - -func (c *current) onListElementContinuationElement1(attributes, element interface{}) (interface{}, error) { - if element, ok := element.(types.WithAttributes); ok && attributes != nil { - element.AddAttributes(attributes.(types.Attributes)) - } - // if log.IsLevelEnabled(log.DebugLevel) { - // log.Debugf("returning element '%s'\n", spew.Sdump(element)) - // } - return element, nil - -} - -func (p *parser) callonListElementContinuationElement1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement1(stack["attributes"], stack["element"]) -} - -func (c *current) onCallout3() (bool, error) { - return c.isSubstitutionEnabled(Callouts), nil - -} - -func (p *parser) callonCallout3() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCallout3() -} - -func (c *current) onCallout6() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonCallout6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCallout6() -} - -func (c *current) onCallout11() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonCallout11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCallout11() -} - -func (c *current) onCallout15() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonCallout15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCallout15() -} - -func (c *current) onCallout1(ref interface{}) (interface{}, error) { - return types.NewCallout(ref.(int)) - -} - -func (p *parser) callonCallout1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCallout1(stack["ref"]) -} - -func (c *current) onShortcutParagraph10() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortcutParagraph10() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph10() -} - -func (c *current) onShortcutParagraph17() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonShortcutParagraph17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph17() -} - -func (c *current) onShortcutParagraph20(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonShortcutParagraph20() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph20(stack["depth"]) -} - -func (c *current) onShortcutParagraph14(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewOrderedListElementPrefix(types.Arabic) - case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) - case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) - case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) - default: - return types.NewOrderedListElementPrefix(types.UpperRoman) - } - -} - -func (p *parser) callonShortcutParagraph14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph14(stack["depth"]) -} - -func (c *current) onShortcutParagraph21() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - -} - -func (p *parser) callonShortcutParagraph21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph21() -} - -func (c *current) onShortcutParagraph26() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - -} - -func (p *parser) callonShortcutParagraph26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph26() -} - -func (c *current) onShortcutParagraph30() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - -} - -func (p *parser) callonShortcutParagraph30() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph30() -} - -func (c *current) onShortcutParagraph34() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - -} - -func (p *parser) callonShortcutParagraph34() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph34() -} - -func (c *current) onShortcutParagraph39() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - -} - -func (p *parser) callonShortcutParagraph39() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph39() -} - -func (c *current) onShortcutParagraph44(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonShortcutParagraph44() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph44(stack["prefix"]) -} - -func (c *current) onShortcutParagraph7(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonShortcutParagraph7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph7(stack["prefix"]) -} - -func (c *current) onShortcutParagraph52() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortcutParagraph52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph52() -} - -func (c *current) onShortcutParagraph59() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - -} - -func (p *parser) callonShortcutParagraph59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph59() -} - -func (c *current) onShortcutParagraph62(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil - -} - -func (p *parser) callonShortcutParagraph62() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph62(stack["depth"]) -} - -func (c *current) onShortcutParagraph56(depth interface{}) (interface{}, error) { - switch depth.(int) { - case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) - case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) - case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) - case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) - default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonShortcutParagraph56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph56(stack["depth"]) -} - -func (c *current) onShortcutParagraph64() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonShortcutParagraph64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph64() -} - -func (c *current) onShortcutParagraph66(prefix interface{}) (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonShortcutParagraph66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph66(stack["prefix"]) -} - -func (c *current) onShortcutParagraph49(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonShortcutParagraph49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph49(stack["prefix"]) -} - -func (c *current) onShortcutParagraph72() (interface{}, error) { - return types.Tip, nil -} - -func (p *parser) callonShortcutParagraph72() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph72() -} - -func (c *current) onShortcutParagraph74() (interface{}, error) { - return types.Note, nil -} - -func (p *parser) callonShortcutParagraph74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph74() -} - -func (c *current) onShortcutParagraph76() (interface{}, error) { - return types.Important, nil -} - -func (p *parser) callonShortcutParagraph76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph76() -} - -func (c *current) onShortcutParagraph78() (interface{}, error) { - return types.Warning, nil -} - -func (p *parser) callonShortcutParagraph78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph78() -} - -func (c *current) onShortcutParagraph80() (interface{}, error) { - return types.Caution, nil -} - -func (p *parser) callonShortcutParagraph80() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph80() -} - -func (c *current) onShortcutParagraph86() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonShortcutParagraph86() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph86() -} - -func (c *current) onShortcutParagraph89(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonShortcutParagraph89() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph89(stack["content"]) -} - -func (c *current) onShortcutParagraph91() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonShortcutParagraph91() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph91() -} - -func (c *current) onShortcutParagraph83(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonShortcutParagraph83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph83(stack["content"]) -} - -func (c *current) onShortcutParagraph98(firstLine interface{}) (bool, error) { - // also, make sure that there is no LabeledListElement delimiter (`::` - `::::`) - // in the middle of the line (with space afterwards) - // or at the end of the line - return !strings.Contains(string(firstLine.(types.RawLine)), ":: ") && - !strings.HasSuffix(string(firstLine.(types.RawLine)), "::"), nil - -} - -func (p *parser) callonShortcutParagraph98() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph98(stack["firstLine"]) -} - -func (c *current) onShortcutParagraph113() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortcutParagraph113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph113() -} - -func (c *current) onShortcutParagraph116() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonShortcutParagraph116() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph116() -} - -func (c *current) onShortcutParagraph107() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonShortcutParagraph107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph107() -} - -func (c *current) onShortcutParagraph129() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortcutParagraph129() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph129() -} - -func (c *current) onShortcutParagraph131() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonShortcutParagraph131() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph131() -} - -func (c *current) onShortcutParagraph144() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonShortcutParagraph144() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph144() -} - -func (c *current) onShortcutParagraph148() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonShortcutParagraph148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph148() -} - -func (c *current) onShortcutParagraph138(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonShortcutParagraph138() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph138(stack["content"]) -} - -func (c *current) onShortcutParagraph158() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonShortcutParagraph158() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph158() -} - -func (c *current) onShortcutParagraph161(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonShortcutParagraph161() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph161(stack["content"]) -} - -func (c *current) onShortcutParagraph163() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonShortcutParagraph163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph163() -} - -func (c *current) onShortcutParagraph155(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonShortcutParagraph155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph155(stack["content"]) -} - -func (c *current) onShortcutParagraph101(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonShortcutParagraph101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph101(stack["line"]) -} - -func (c *current) onShortcutParagraph1(firstLine, otherLines interface{}) (interface{}, error) { - return types.NewParagraph(append([]interface{}{firstLine}, otherLines.([]interface{})...)...) - -} - -func (p *parser) callonShortcutParagraph1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onShortcutParagraph1(stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onParagraph7() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonParagraph7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph7() -} - -func (c *current) onParagraph10(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonParagraph10() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph10(stack["content"]) -} - -func (c *current) onParagraph12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonParagraph12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph12() -} - -func (c *current) onParagraph4(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonParagraph4() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph4(stack["content"]) -} - -func (c *current) onParagraph33() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonParagraph33() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph33() -} - -func (c *current) onParagraph36() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonParagraph36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph36() -} - -func (c *current) onParagraph27() (interface{}, error) { - return types.NewBlankLine() - -} - -func (p *parser) callonParagraph27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph27() -} - -func (c *current) onParagraph49() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonParagraph49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph49() -} - -func (c *current) onParagraph51() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonParagraph51() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph51() -} - -func (c *current) onParagraph64() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonParagraph64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph64() -} - -func (c *current) onParagraph68() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonParagraph68() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph68() -} - -func (c *current) onParagraph58(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - -} - -func (p *parser) callonParagraph58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph58(stack["content"]) -} - -func (c *current) onParagraph78() (interface{}, error) { - return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs - -} - -func (p *parser) callonParagraph78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph78() -} - -func (c *current) onParagraph81(content interface{}) (bool, error) { - return len(strings.TrimSpace(content.(string))) > 0, nil - -} - -func (p *parser) callonParagraph81() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph81(stack["content"]) -} - -func (c *current) onParagraph83() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonParagraph83() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph83() -} - -func (c *current) onParagraph75(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonParagraph75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph75(stack["content"]) -} - -func (c *current) onParagraph21(line interface{}) (interface{}, error) { - return line, nil - -} - -func (p *parser) callonParagraph21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph21(stack["line"]) -} - -func (c *current) onParagraph1(firstLine, otherLines interface{}) (interface{}, error) { - return types.NewParagraph(append([]interface{}{firstLine}, otherLines.([]interface{})...)...) - -} - -func (p *parser) callonParagraph1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onParagraph1(stack["firstLine"], stack["otherLines"]) -} - -func (c *current) onQuotedText6() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonQuotedText6() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedText6() -} - -func (c *current) onQuotedText2(attributes, text interface{}) (interface{}, error) { - log.Debugf("matched escaped quoted text") - return append([]interface{}{attributes}, text.([]interface{})...), nil - -} - -func (p *parser) callonQuotedText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedText2(stack["attributes"], stack["text"]) -} - -func (c *current) onQuotedText10(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) - -} - -func (p *parser) callonQuotedText10() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedText10(stack["attributes"], stack["text"]) -} - -func (c *current) onEscapedQuotedText1(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonEscapedQuotedText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedQuotedText1(stack["element"]) -} - -func (c *current) onDoubleQuoteBoldText1(elements interface{}) (interface{}, error) { - return types.NewQuotedText(types.DoubleQuoteBold, elements.([]interface{})) - -} - -func (p *parser) callonDoubleQuoteBoldText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldText1(stack["elements"]) -} - -func (c *current) onDoubleQuoteBoldTextElement13() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement13() -} - -func (c *current) onDoubleQuoteBoldTextElement7() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement7() -} - -func (c *current) onDoubleQuoteBoldTextElement16() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement16() -} - -func (c *current) onDoubleQuoteBoldTextElement20() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteBoldTextElement20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement20() -} - -func (c *current) onDoubleQuoteBoldTextElement26() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteBoldTextElement26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement26() -} - -func (c *current) onDoubleQuoteBoldTextElement33() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement33() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement33() -} - -func (c *current) onDoubleQuoteBoldTextElement40() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement40() -} - -func (c *current) onDoubleQuoteBoldTextElement52() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement52() -} - -func (c *current) onDoubleQuoteBoldTextElement54() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement54() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement54() -} - -func (c *current) onDoubleQuoteBoldTextElement47(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement47(stack["start"]) -} - -func (c *current) onDoubleQuoteBoldTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonDoubleQuoteBoldTextElement36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement36(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuoteBoldTextElement62() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement62() -} - -func (c *current) onDoubleQuoteBoldTextElement74() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement74() -} - -func (c *current) onDoubleQuoteBoldTextElement76() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement76() -} - -func (c *current) onDoubleQuoteBoldTextElement69(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement69(stack["start"]) -} - -func (c *current) onDoubleQuoteBoldTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonDoubleQuoteBoldTextElement58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement58(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuoteBoldTextElement84() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement84() -} - -func (c *current) onDoubleQuoteBoldTextElement80(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement80() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement80(stack["name"]) -} - -func (c *current) onDoubleQuoteBoldTextElement94() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement94() -} - -func (c *current) onDoubleQuoteBoldTextElement90(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement90() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement90(stack["name"]) -} - -func (c *current) onDoubleQuoteBoldTextElement31(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement31(stack["element"]) -} - -func (c *current) onDoubleQuoteBoldTextElement105() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement105() -} - -func (c *current) onDoubleQuoteBoldTextElement107() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement107() -} - -func (c *current) onDoubleQuoteBoldTextElement109() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement109() -} - -func (c *current) onDoubleQuoteBoldTextElement111() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement111() -} - -func (c *current) onDoubleQuoteBoldTextElement113() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement113() -} - -func (c *current) onDoubleQuoteBoldTextElement115() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement115() -} - -func (c *current) onDoubleQuoteBoldTextElement117() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement117() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement117() -} - -func (c *current) onDoubleQuoteBoldTextElement119() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement119() -} - -func (c *current) onDoubleQuoteBoldTextElement121() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement121() -} - -func (c *current) onDoubleQuoteBoldTextElement125() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement125() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement125() -} - -func (c *current) onDoubleQuoteBoldTextElement128() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement128() -} - -func (c *current) onDoubleQuoteBoldTextElement132() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteBoldTextElement132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement132() -} - -func (c *current) onDoubleQuoteBoldTextElement123() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement123() -} - -func (c *current) onDoubleQuoteBoldTextElement141() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement141() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement141() -} - -func (c *current) onDoubleQuoteBoldTextElement146() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteBoldTextElement146() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement146() -} - -func (c *current) onDoubleQuoteBoldTextElement139() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement139() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement139() -} - -func (c *current) onDoubleQuoteBoldTextElement153() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement153() -} - -func (c *current) onDoubleQuoteBoldTextElement155() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement155() -} - -func (c *current) onDoubleQuoteBoldTextElement157() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement157() -} - -func (c *current) onDoubleQuoteBoldTextElement101() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement101() -} - -func (c *current) onDoubleQuoteBoldTextElement159() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement159() -} - -func (c *current) onDoubleQuoteBoldTextElement161() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement161() -} - -func (c *current) onDoubleQuoteBoldTextElement163() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement163() -} - -func (c *current) onDoubleQuoteBoldTextElement165() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement165() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement165() -} - -func (c *current) onDoubleQuoteBoldTextElement167() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement167() -} - -func (c *current) onDoubleQuoteBoldTextElement169() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement169() -} - -func (c *current) onDoubleQuoteBoldTextElement171() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement171() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement171() -} - -func (c *current) onDoubleQuoteBoldTextElement173() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement173() -} - -func (c *current) onDoubleQuoteBoldTextElement177() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement177() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement177() -} - -func (c *current) onDoubleQuoteBoldTextElement180() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement180() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement180() -} - -func (c *current) onDoubleQuoteBoldTextElement184() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteBoldTextElement184() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement184() -} - -func (c *current) onDoubleQuoteBoldTextElement175() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement175() -} - -func (c *current) onDoubleQuoteBoldTextElement193() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement193() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement193() -} - -func (c *current) onDoubleQuoteBoldTextElement198() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteBoldTextElement198() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement198() -} - -func (c *current) onDoubleQuoteBoldTextElement191() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement191() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement191() -} - -func (c *current) onDoubleQuoteBoldTextElement205() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement205() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement205() -} - -func (c *current) onDoubleQuoteBoldTextElement207() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement207() -} - -func (c *current) onDoubleQuoteBoldTextElement209() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement209() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement209() -} - -func (c *current) onDoubleQuoteBoldTextElement211() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonDoubleQuoteBoldTextElement211() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement211() -} - -func (c *current) onDoubleQuoteBoldTextElement213() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char - -} - -func (p *parser) callonDoubleQuoteBoldTextElement213() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement213() -} - -func (c *current) onDoubleQuoteBoldTextElement219() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement219() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement219() -} - -func (c *current) onDoubleQuoteBoldTextElement227() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement227() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement227() -} - -func (c *current) onDoubleQuoteBoldTextElement236() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement236() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement236() -} - -func (c *current) onDoubleQuoteBoldTextElement240() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement240() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement240() -} - -func (c *current) onDoubleQuoteBoldTextElement246() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement246() -} - -func (c *current) onDoubleQuoteBoldTextElement255() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement255() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement255() -} - -func (c *current) onDoubleQuoteBoldTextElement251(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement251(stack["name"]) -} - -func (c *current) onDoubleQuoteBoldTextElement265() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement265() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement265() -} - -func (c *current) onDoubleQuoteBoldTextElement261(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement261(stack["name"]) -} - -func (c *current) onDoubleQuoteBoldTextElement271() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement271() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement271() -} - -func (c *current) onDoubleQuoteBoldTextElement232(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement232(stack["id"], stack["label"]) -} - -func (c *current) onDoubleQuoteBoldTextElement278() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement278() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement278() -} - -func (c *current) onDoubleQuoteBoldTextElement274(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement274() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement274(stack["id"]) -} - -func (c *current) onDoubleQuoteBoldTextElement230() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement230() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement230() -} - -func (c *current) onDoubleQuoteBoldTextElement282() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement282() -} - -func (c *current) onDoubleQuoteBoldTextElement225(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement225(stack["element"]) -} - -func (c *current) onDoubleQuoteBoldTextElement289() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteBoldTextElement289() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement289() -} - -func (c *current) onDoubleQuoteBoldTextElement285(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonDoubleQuoteBoldTextElement285() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement285(stack["ref"]) -} - -func (c *current) onDoubleQuoteBoldTextElement297() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement297() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement297() -} - -func (c *current) onDoubleQuoteBoldTextElement294() (interface{}, error) { - // or a bold delimiter when immediately followed by an alphanum (ie, in the middle of some text) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteBoldTextElement294() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement294() -} - -func (c *current) onDoubleQuoteBoldTextElement1(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteBoldTextElement1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteBoldTextElement1(stack["element"]) -} - -func (c *current) onQuotedTextInDoubleQuoteBoldText1(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) - -} - -func (p *parser) callonQuotedTextInDoubleQuoteBoldText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInDoubleQuoteBoldText1(stack["attributes"], stack["text"]) -} - -func (c *current) onSingleQuoteBoldText1(elements interface{}) (interface{}, error) { - return types.NewQuotedText(types.SingleQuoteBold, elements.([]interface{})) - -} - -func (p *parser) callonSingleQuoteBoldText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldText1(stack["elements"]) -} - -func (c *current) onSingleQuoteBoldTextElements7() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElements7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElements7() -} - -func (c *current) onSingleQuoteBoldTextElements12(elements interface{}) (bool, error) { - return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces - -} - -func (p *parser) callonSingleQuoteBoldTextElements12() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElements12(stack["elements"]) -} - -func (c *current) onSingleQuoteBoldTextElements1(elements interface{}) (interface{}, error) { - return elements, nil - -} - -func (p *parser) callonSingleQuoteBoldTextElements1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElements1(stack["elements"]) -} - -func (c *current) onSingleQuoteBoldTextElement8() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement8() -} - -func (c *current) onSingleQuoteBoldTextElement2() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement2() -} - -func (c *current) onSingleQuoteBoldTextElement11() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement11() -} - -func (c *current) onSingleQuoteBoldTextElement15() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteBoldTextElement15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement15() -} - -func (c *current) onSingleQuoteBoldTextElement21() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteBoldTextElement21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement21() -} - -func (c *current) onSingleQuoteBoldTextElement28() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement28() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement28() -} - -func (c *current) onSingleQuoteBoldTextElement35() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement35() -} - -func (c *current) onSingleQuoteBoldTextElement47() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement47() -} - -func (c *current) onSingleQuoteBoldTextElement49() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement49() -} - -func (c *current) onSingleQuoteBoldTextElement42(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement42() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement42(stack["start"]) -} - -func (c *current) onSingleQuoteBoldTextElement31(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonSingleQuoteBoldTextElement31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement31(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuoteBoldTextElement57() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement57() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement57() -} - -func (c *current) onSingleQuoteBoldTextElement69() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement69() -} - -func (c *current) onSingleQuoteBoldTextElement71() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement71() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement71() -} - -func (c *current) onSingleQuoteBoldTextElement64(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement64(stack["start"]) -} - -func (c *current) onSingleQuoteBoldTextElement53(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonSingleQuoteBoldTextElement53() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement53(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuoteBoldTextElement79() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement79() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement79() -} - -func (c *current) onSingleQuoteBoldTextElement75(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement75(stack["name"]) -} - -func (c *current) onSingleQuoteBoldTextElement89() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement89() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement89() -} - -func (c *current) onSingleQuoteBoldTextElement85(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement85() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement85(stack["name"]) -} - -func (c *current) onSingleQuoteBoldTextElement26(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement26(stack["element"]) -} - -func (c *current) onSingleQuoteBoldTextElement100() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonSingleQuoteBoldTextElement100() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement100() -} - -func (c *current) onSingleQuoteBoldTextElement102() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonSingleQuoteBoldTextElement102() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement102() -} - -func (c *current) onSingleQuoteBoldTextElement104() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonSingleQuoteBoldTextElement104() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement104() -} - -func (c *current) onSingleQuoteBoldTextElement106() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonSingleQuoteBoldTextElement106() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement106() -} - -func (c *current) onSingleQuoteBoldTextElement108() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonSingleQuoteBoldTextElement108() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement108() -} - -func (c *current) onSingleQuoteBoldTextElement110() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonSingleQuoteBoldTextElement110() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement110() -} - -func (c *current) onSingleQuoteBoldTextElement112() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonSingleQuoteBoldTextElement112() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement112() -} - -func (c *current) onSingleQuoteBoldTextElement114() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonSingleQuoteBoldTextElement114() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement114() -} - -func (c *current) onSingleQuoteBoldTextElement116() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonSingleQuoteBoldTextElement116() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement116() -} - -func (c *current) onSingleQuoteBoldTextElement120() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement120() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement120() -} - -func (c *current) onSingleQuoteBoldTextElement123() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement123() -} - -func (c *current) onSingleQuoteBoldTextElement127() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteBoldTextElement127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement127() -} - -func (c *current) onSingleQuoteBoldTextElement118() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonSingleQuoteBoldTextElement118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement118() -} - -func (c *current) onSingleQuoteBoldTextElement136() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement136() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement136() -} - -func (c *current) onSingleQuoteBoldTextElement141() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteBoldTextElement141() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement141() -} - -func (c *current) onSingleQuoteBoldTextElement134() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonSingleQuoteBoldTextElement134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement134() -} - -func (c *current) onSingleQuoteBoldTextElement148() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonSingleQuoteBoldTextElement148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement148() -} - -func (c *current) onSingleQuoteBoldTextElement150() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonSingleQuoteBoldTextElement150() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement150() -} - -func (c *current) onSingleQuoteBoldTextElement152() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonSingleQuoteBoldTextElement152() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement152() -} - -func (c *current) onSingleQuoteBoldTextElement96() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement96() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement96() -} - -func (c *current) onSingleQuoteBoldTextElement154() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonSingleQuoteBoldTextElement154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement154() -} - -func (c *current) onSingleQuoteBoldTextElement156() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonSingleQuoteBoldTextElement156() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement156() -} - -func (c *current) onSingleQuoteBoldTextElement158() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonSingleQuoteBoldTextElement158() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement158() -} - -func (c *current) onSingleQuoteBoldTextElement160() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonSingleQuoteBoldTextElement160() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement160() -} - -func (c *current) onSingleQuoteBoldTextElement162() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonSingleQuoteBoldTextElement162() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement162() -} - -func (c *current) onSingleQuoteBoldTextElement164() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonSingleQuoteBoldTextElement164() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement164() -} - -func (c *current) onSingleQuoteBoldTextElement166() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonSingleQuoteBoldTextElement166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement166() -} - -func (c *current) onSingleQuoteBoldTextElement168() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonSingleQuoteBoldTextElement168() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement168() -} - -func (c *current) onSingleQuoteBoldTextElement172() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement172() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement172() -} - -func (c *current) onSingleQuoteBoldTextElement175() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement175() -} - -func (c *current) onSingleQuoteBoldTextElement179() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteBoldTextElement179() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement179() -} - -func (c *current) onSingleQuoteBoldTextElement170() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonSingleQuoteBoldTextElement170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement170() -} - -func (c *current) onSingleQuoteBoldTextElement188() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement188() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement188() -} - -func (c *current) onSingleQuoteBoldTextElement193() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteBoldTextElement193() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement193() -} - -func (c *current) onSingleQuoteBoldTextElement186() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonSingleQuoteBoldTextElement186() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement186() -} - -func (c *current) onSingleQuoteBoldTextElement200() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonSingleQuoteBoldTextElement200() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement200() -} - -func (c *current) onSingleQuoteBoldTextElement202() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonSingleQuoteBoldTextElement202() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement202() -} - -func (c *current) onSingleQuoteBoldTextElement204() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonSingleQuoteBoldTextElement204() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement204() -} - -func (c *current) onSingleQuoteBoldTextElement206() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonSingleQuoteBoldTextElement206() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement206() -} - -func (c *current) onSingleQuoteBoldTextElement208() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char - -} - -func (p *parser) callonSingleQuoteBoldTextElement208() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement208() -} - -func (c *current) onSingleQuoteBoldTextElement214() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement214() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement214() -} - -func (c *current) onSingleQuoteBoldTextElement222() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement222() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement222() -} - -func (c *current) onSingleQuoteBoldTextElement231() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement231() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement231() -} - -func (c *current) onSingleQuoteBoldTextElement235() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement235() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement235() -} - -func (c *current) onSingleQuoteBoldTextElement241() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement241() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement241() -} - -func (c *current) onSingleQuoteBoldTextElement250() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement250() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement250() -} - -func (c *current) onSingleQuoteBoldTextElement246(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement246(stack["name"]) -} - -func (c *current) onSingleQuoteBoldTextElement260() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement260() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement260() -} - -func (c *current) onSingleQuoteBoldTextElement256(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement256() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement256(stack["name"]) -} - -func (c *current) onSingleQuoteBoldTextElement266() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement266() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement266() -} - -func (c *current) onSingleQuoteBoldTextElement227(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonSingleQuoteBoldTextElement227() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement227(stack["id"], stack["label"]) -} - -func (c *current) onSingleQuoteBoldTextElement273() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement273() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement273() -} - -func (c *current) onSingleQuoteBoldTextElement269(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonSingleQuoteBoldTextElement269() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement269(stack["id"]) -} - -func (c *current) onSingleQuoteBoldTextElement225() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement225() -} - -func (c *current) onSingleQuoteBoldTextElement277() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement277() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement277() -} - -func (c *current) onSingleQuoteBoldTextElement220(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement220() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement220(stack["element"]) -} - -func (c *current) onSingleQuoteBoldTextElement284() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteBoldTextElement284() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement284() -} - -func (c *current) onSingleQuoteBoldTextElement280(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonSingleQuoteBoldTextElement280() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement280(stack["ref"]) -} - -func (c *current) onSingleQuoteBoldTextElement292() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteBoldTextElement292() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement292() -} - -func (c *current) onSingleQuoteBoldTextElement289() (interface{}, error) { - // or a bold delimiter when immediately followed by an alphanum (ie, in the middle of some text) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteBoldTextElement289() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteBoldTextElement289() -} - -func (c *current) onQuotedTextInSingleQuoteBoldText2(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonQuotedTextInSingleQuoteBoldText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInSingleQuoteBoldText2(stack["element"]) -} - -func (c *current) onQuotedTextInSingleQuoteBoldText13(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) - -} - -func (p *parser) callonQuotedTextInSingleQuoteBoldText13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInSingleQuoteBoldText13(stack["attributes"], stack["text"]) -} - -func (c *current) onEscapedBoldText5() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonEscapedBoldText5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedBoldText5() -} - -func (c *current) onEscapedBoldText2(backslashes, elements interface{}) (interface{}, error) { - - return types.NewEscapedQuotedText(backslashes.(string), "**", elements.([]interface{})) - -} - -func (p *parser) callonEscapedBoldText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedBoldText2(stack["backslashes"], stack["elements"]) -} - -func (c *current) onEscapedBoldText17() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonEscapedBoldText17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedBoldText17() -} - -func (c *current) onEscapedBoldText14(backslashes, elements interface{}) (interface{}, error) { - - result := append([]interface{}{"*"}, elements.([]interface{})) - return types.NewEscapedQuotedText(backslashes.(string), "*", result) - -} - -func (p *parser) callonEscapedBoldText14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedBoldText14(stack["backslashes"], stack["elements"]) -} - -func (c *current) onEscapedBoldText27() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonEscapedBoldText27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedBoldText27() -} - -func (c *current) onEscapedBoldText24(backslashes, elements interface{}) (interface{}, error) { - - return types.NewEscapedQuotedText(backslashes.(string), "*", elements.([]interface{})) - -} - -func (p *parser) callonEscapedBoldText24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedBoldText24(stack["backslashes"], stack["elements"]) -} - -func (c *current) onDoubleQuoteItalicText1(elements interface{}) (interface{}, error) { - // double punctuation must be evaluated first - return types.NewQuotedText(types.DoubleQuoteItalic, elements.([]interface{})) - -} - -func (p *parser) callonDoubleQuoteItalicText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicText1(stack["elements"]) -} - -func (c *current) onDoubleQuoteItalicTextElement13() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement13() -} - -func (c *current) onDoubleQuoteItalicTextElement7() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement7() -} - -func (c *current) onDoubleQuoteItalicTextElement16() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement16() -} - -func (c *current) onDoubleQuoteItalicTextElement20() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteItalicTextElement20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement20() -} - -func (c *current) onDoubleQuoteItalicTextElement26() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteItalicTextElement26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement26() -} - -func (c *current) onDoubleQuoteItalicTextElement33() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement33() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement33() -} - -func (c *current) onDoubleQuoteItalicTextElement40() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement40() -} - -func (c *current) onDoubleQuoteItalicTextElement52() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement52() -} - -func (c *current) onDoubleQuoteItalicTextElement54() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement54() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement54() -} - -func (c *current) onDoubleQuoteItalicTextElement47(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement47(stack["start"]) -} - -func (c *current) onDoubleQuoteItalicTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonDoubleQuoteItalicTextElement36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement36(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuoteItalicTextElement62() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement62() -} - -func (c *current) onDoubleQuoteItalicTextElement74() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement74() -} - -func (c *current) onDoubleQuoteItalicTextElement76() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement76() -} - -func (c *current) onDoubleQuoteItalicTextElement69(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement69(stack["start"]) -} - -func (c *current) onDoubleQuoteItalicTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonDoubleQuoteItalicTextElement58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement58(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuoteItalicTextElement84() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement84() -} - -func (c *current) onDoubleQuoteItalicTextElement80(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement80() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement80(stack["name"]) -} - -func (c *current) onDoubleQuoteItalicTextElement94() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement94() -} - -func (c *current) onDoubleQuoteItalicTextElement90(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement90() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement90(stack["name"]) -} - -func (c *current) onDoubleQuoteItalicTextElement31(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement31(stack["element"]) -} - -func (c *current) onDoubleQuoteItalicTextElement105() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement105() -} - -func (c *current) onDoubleQuoteItalicTextElement107() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement107() -} - -func (c *current) onDoubleQuoteItalicTextElement109() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement109() -} - -func (c *current) onDoubleQuoteItalicTextElement111() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement111() -} - -func (c *current) onDoubleQuoteItalicTextElement113() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement113() -} - -func (c *current) onDoubleQuoteItalicTextElement115() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement115() -} - -func (c *current) onDoubleQuoteItalicTextElement117() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement117() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement117() -} - -func (c *current) onDoubleQuoteItalicTextElement119() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement119() -} - -func (c *current) onDoubleQuoteItalicTextElement121() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement121() -} - -func (c *current) onDoubleQuoteItalicTextElement125() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement125() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement125() -} - -func (c *current) onDoubleQuoteItalicTextElement128() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement128() -} - -func (c *current) onDoubleQuoteItalicTextElement132() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteItalicTextElement132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement132() -} - -func (c *current) onDoubleQuoteItalicTextElement123() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement123() -} - -func (c *current) onDoubleQuoteItalicTextElement141() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement141() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement141() -} - -func (c *current) onDoubleQuoteItalicTextElement146() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteItalicTextElement146() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement146() -} - -func (c *current) onDoubleQuoteItalicTextElement139() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement139() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement139() -} - -func (c *current) onDoubleQuoteItalicTextElement153() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement153() -} - -func (c *current) onDoubleQuoteItalicTextElement155() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement155() -} - -func (c *current) onDoubleQuoteItalicTextElement157() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement157() -} - -func (c *current) onDoubleQuoteItalicTextElement101() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement101() -} - -func (c *current) onDoubleQuoteItalicTextElement159() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement159() -} - -func (c *current) onDoubleQuoteItalicTextElement161() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement161() -} - -func (c *current) onDoubleQuoteItalicTextElement163() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement163() -} - -func (c *current) onDoubleQuoteItalicTextElement165() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement165() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement165() -} - -func (c *current) onDoubleQuoteItalicTextElement167() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement167() -} - -func (c *current) onDoubleQuoteItalicTextElement169() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement169() -} - -func (c *current) onDoubleQuoteItalicTextElement171() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement171() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement171() -} - -func (c *current) onDoubleQuoteItalicTextElement173() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement173() -} - -func (c *current) onDoubleQuoteItalicTextElement177() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement177() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement177() -} - -func (c *current) onDoubleQuoteItalicTextElement180() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement180() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement180() -} - -func (c *current) onDoubleQuoteItalicTextElement184() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteItalicTextElement184() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement184() -} - -func (c *current) onDoubleQuoteItalicTextElement175() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement175() -} - -func (c *current) onDoubleQuoteItalicTextElement193() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement193() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement193() -} - -func (c *current) onDoubleQuoteItalicTextElement198() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteItalicTextElement198() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement198() -} - -func (c *current) onDoubleQuoteItalicTextElement191() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement191() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement191() -} - -func (c *current) onDoubleQuoteItalicTextElement205() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement205() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement205() -} - -func (c *current) onDoubleQuoteItalicTextElement207() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement207() -} - -func (c *current) onDoubleQuoteItalicTextElement209() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement209() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement209() -} - -func (c *current) onDoubleQuoteItalicTextElement211() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonDoubleQuoteItalicTextElement211() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement211() -} - -func (c *current) onDoubleQuoteItalicTextElement213() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char - -} - -func (p *parser) callonDoubleQuoteItalicTextElement213() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement213() -} - -func (c *current) onDoubleQuoteItalicTextElement219() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement219() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement219() -} - -func (c *current) onDoubleQuoteItalicTextElement227() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement227() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement227() -} - -func (c *current) onDoubleQuoteItalicTextElement236() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement236() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement236() -} - -func (c *current) onDoubleQuoteItalicTextElement240() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement240() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement240() -} - -func (c *current) onDoubleQuoteItalicTextElement246() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement246() -} - -func (c *current) onDoubleQuoteItalicTextElement255() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement255() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement255() -} - -func (c *current) onDoubleQuoteItalicTextElement251(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement251(stack["name"]) -} - -func (c *current) onDoubleQuoteItalicTextElement265() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement265() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement265() -} - -func (c *current) onDoubleQuoteItalicTextElement261(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement261(stack["name"]) -} - -func (c *current) onDoubleQuoteItalicTextElement271() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement271() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement271() -} - -func (c *current) onDoubleQuoteItalicTextElement232(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement232(stack["id"], stack["label"]) -} - -func (c *current) onDoubleQuoteItalicTextElement278() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement278() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement278() -} - -func (c *current) onDoubleQuoteItalicTextElement274(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement274() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement274(stack["id"]) -} - -func (c *current) onDoubleQuoteItalicTextElement230() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement230() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement230() -} - -func (c *current) onDoubleQuoteItalicTextElement282() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement282() -} - -func (c *current) onDoubleQuoteItalicTextElement225(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement225(stack["element"]) -} - -func (c *current) onDoubleQuoteItalicTextElement289() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteItalicTextElement289() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement289() -} - -func (c *current) onDoubleQuoteItalicTextElement285(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonDoubleQuoteItalicTextElement285() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement285(stack["ref"]) -} - -func (c *current) onDoubleQuoteItalicTextElement297() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement297() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement297() -} - -func (c *current) onDoubleQuoteItalicTextElement294() (interface{}, error) { - // or a italic delimiter when immediately followed by an alphanum (ie, in the middle of some text) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteItalicTextElement294() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement294() -} - -func (c *current) onDoubleQuoteItalicTextElement1(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteItalicTextElement1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteItalicTextElement1(stack["element"]) -} - -func (c *current) onQuotedTextInDoubleQuoteItalicText2(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonQuotedTextInDoubleQuoteItalicText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInDoubleQuoteItalicText2(stack["element"]) -} - -func (c *current) onQuotedTextInDoubleQuoteItalicText13(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) - -} - -func (p *parser) callonQuotedTextInDoubleQuoteItalicText13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInDoubleQuoteItalicText13(stack["attributes"], stack["text"]) -} - -func (c *current) onSingleQuoteItalicText1(elements interface{}) (interface{}, error) { - - return types.NewQuotedText(types.SingleQuoteItalic, elements.([]interface{})) - -} - -func (p *parser) callonSingleQuoteItalicText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicText1(stack["elements"]) -} - -func (c *current) onSingleQuoteItalicTextElements7() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElements7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElements7() -} - -func (c *current) onSingleQuoteItalicTextElements12(elements interface{}) (bool, error) { - return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces - -} - -func (p *parser) callonSingleQuoteItalicTextElements12() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElements12(stack["elements"]) -} - -func (c *current) onSingleQuoteItalicTextElements1(elements interface{}) (interface{}, error) { - return elements, nil - -} - -func (p *parser) callonSingleQuoteItalicTextElements1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElements1(stack["elements"]) -} - -func (c *current) onSingleQuoteItalicTextElement8() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement8() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement8() -} - -func (c *current) onSingleQuoteItalicTextElement2() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement2() -} - -func (c *current) onSingleQuoteItalicTextElement11() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement11() -} - -func (c *current) onSingleQuoteItalicTextElement15() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteItalicTextElement15() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement15() -} - -func (c *current) onSingleQuoteItalicTextElement21() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteItalicTextElement21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement21() -} - -func (c *current) onSingleQuoteItalicTextElement28() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement28() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement28() -} - -func (c *current) onSingleQuoteItalicTextElement35() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement35() -} - -func (c *current) onSingleQuoteItalicTextElement47() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement47() -} - -func (c *current) onSingleQuoteItalicTextElement49() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement49() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement49() -} - -func (c *current) onSingleQuoteItalicTextElement42(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement42() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement42(stack["start"]) -} - -func (c *current) onSingleQuoteItalicTextElement31(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonSingleQuoteItalicTextElement31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement31(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuoteItalicTextElement57() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement57() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement57() -} - -func (c *current) onSingleQuoteItalicTextElement69() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement69() -} - -func (c *current) onSingleQuoteItalicTextElement71() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement71() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement71() -} - -func (c *current) onSingleQuoteItalicTextElement64(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement64() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement64(stack["start"]) -} - -func (c *current) onSingleQuoteItalicTextElement53(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonSingleQuoteItalicTextElement53() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement53(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuoteItalicTextElement79() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement79() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement79() -} - -func (c *current) onSingleQuoteItalicTextElement75(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement75() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement75(stack["name"]) -} - -func (c *current) onSingleQuoteItalicTextElement89() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement89() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement89() -} - -func (c *current) onSingleQuoteItalicTextElement85(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement85() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement85(stack["name"]) -} - -func (c *current) onSingleQuoteItalicTextElement26(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement26(stack["element"]) -} - -func (c *current) onSingleQuoteItalicTextElement100() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonSingleQuoteItalicTextElement100() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement100() -} - -func (c *current) onSingleQuoteItalicTextElement102() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonSingleQuoteItalicTextElement102() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement102() -} - -func (c *current) onSingleQuoteItalicTextElement104() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonSingleQuoteItalicTextElement104() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement104() -} - -func (c *current) onSingleQuoteItalicTextElement106() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonSingleQuoteItalicTextElement106() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement106() -} - -func (c *current) onSingleQuoteItalicTextElement108() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonSingleQuoteItalicTextElement108() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement108() -} - -func (c *current) onSingleQuoteItalicTextElement110() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonSingleQuoteItalicTextElement110() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement110() -} - -func (c *current) onSingleQuoteItalicTextElement112() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonSingleQuoteItalicTextElement112() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement112() -} - -func (c *current) onSingleQuoteItalicTextElement114() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonSingleQuoteItalicTextElement114() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement114() -} - -func (c *current) onSingleQuoteItalicTextElement116() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonSingleQuoteItalicTextElement116() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement116() -} - -func (c *current) onSingleQuoteItalicTextElement120() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement120() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement120() -} - -func (c *current) onSingleQuoteItalicTextElement123() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement123() -} - -func (c *current) onSingleQuoteItalicTextElement127() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteItalicTextElement127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement127() -} - -func (c *current) onSingleQuoteItalicTextElement118() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonSingleQuoteItalicTextElement118() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement118() -} - -func (c *current) onSingleQuoteItalicTextElement136() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement136() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement136() -} - -func (c *current) onSingleQuoteItalicTextElement141() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteItalicTextElement141() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement141() -} - -func (c *current) onSingleQuoteItalicTextElement134() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonSingleQuoteItalicTextElement134() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement134() -} - -func (c *current) onSingleQuoteItalicTextElement148() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonSingleQuoteItalicTextElement148() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement148() -} - -func (c *current) onSingleQuoteItalicTextElement150() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonSingleQuoteItalicTextElement150() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement150() -} - -func (c *current) onSingleQuoteItalicTextElement152() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonSingleQuoteItalicTextElement152() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement152() -} - -func (c *current) onSingleQuoteItalicTextElement96() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement96() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement96() -} - -func (c *current) onSingleQuoteItalicTextElement154() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonSingleQuoteItalicTextElement154() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement154() -} - -func (c *current) onSingleQuoteItalicTextElement156() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonSingleQuoteItalicTextElement156() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement156() -} - -func (c *current) onSingleQuoteItalicTextElement158() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonSingleQuoteItalicTextElement158() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement158() -} - -func (c *current) onSingleQuoteItalicTextElement160() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonSingleQuoteItalicTextElement160() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement160() -} - -func (c *current) onSingleQuoteItalicTextElement162() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonSingleQuoteItalicTextElement162() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement162() -} - -func (c *current) onSingleQuoteItalicTextElement164() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonSingleQuoteItalicTextElement164() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement164() -} - -func (c *current) onSingleQuoteItalicTextElement166() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonSingleQuoteItalicTextElement166() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement166() -} - -func (c *current) onSingleQuoteItalicTextElement168() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonSingleQuoteItalicTextElement168() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement168() -} - -func (c *current) onSingleQuoteItalicTextElement172() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement172() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement172() -} - -func (c *current) onSingleQuoteItalicTextElement175() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement175() -} - -func (c *current) onSingleQuoteItalicTextElement179() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteItalicTextElement179() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement179() -} - -func (c *current) onSingleQuoteItalicTextElement170() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonSingleQuoteItalicTextElement170() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement170() -} - -func (c *current) onSingleQuoteItalicTextElement188() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement188() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement188() -} - -func (c *current) onSingleQuoteItalicTextElement193() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteItalicTextElement193() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement193() -} - -func (c *current) onSingleQuoteItalicTextElement186() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonSingleQuoteItalicTextElement186() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement186() -} - -func (c *current) onSingleQuoteItalicTextElement200() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonSingleQuoteItalicTextElement200() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement200() -} - -func (c *current) onSingleQuoteItalicTextElement202() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonSingleQuoteItalicTextElement202() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement202() -} - -func (c *current) onSingleQuoteItalicTextElement204() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonSingleQuoteItalicTextElement204() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement204() -} - -func (c *current) onSingleQuoteItalicTextElement206() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonSingleQuoteItalicTextElement206() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement206() -} - -func (c *current) onSingleQuoteItalicTextElement208() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char - -} - -func (p *parser) callonSingleQuoteItalicTextElement208() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement208() -} - -func (c *current) onSingleQuoteItalicTextElement214() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement214() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement214() -} - -func (c *current) onSingleQuoteItalicTextElement222() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement222() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement222() -} - -func (c *current) onSingleQuoteItalicTextElement231() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement231() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement231() -} - -func (c *current) onSingleQuoteItalicTextElement235() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement235() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement235() -} - -func (c *current) onSingleQuoteItalicTextElement241() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement241() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement241() -} - -func (c *current) onSingleQuoteItalicTextElement250() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement250() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement250() -} - -func (c *current) onSingleQuoteItalicTextElement246(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement246(stack["name"]) -} - -func (c *current) onSingleQuoteItalicTextElement260() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement260() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement260() -} - -func (c *current) onSingleQuoteItalicTextElement256(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement256() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement256(stack["name"]) -} - -func (c *current) onSingleQuoteItalicTextElement266() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement266() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement266() -} - -func (c *current) onSingleQuoteItalicTextElement227(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonSingleQuoteItalicTextElement227() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement227(stack["id"], stack["label"]) -} - -func (c *current) onSingleQuoteItalicTextElement273() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement273() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement273() -} - -func (c *current) onSingleQuoteItalicTextElement269(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonSingleQuoteItalicTextElement269() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement269(stack["id"]) -} - -func (c *current) onSingleQuoteItalicTextElement225() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement225() -} - -func (c *current) onSingleQuoteItalicTextElement277() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement277() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement277() -} - -func (c *current) onSingleQuoteItalicTextElement220(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement220() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement220(stack["element"]) -} - -func (c *current) onSingleQuoteItalicTextElement284() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteItalicTextElement284() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement284() -} - -func (c *current) onSingleQuoteItalicTextElement280(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonSingleQuoteItalicTextElement280() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement280(stack["ref"]) -} - -func (c *current) onSingleQuoteItalicTextElement292() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteItalicTextElement292() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement292() -} - -func (c *current) onSingleQuoteItalicTextElement289() (interface{}, error) { - // or an italic delimiter when immediately followed by an alphanum (ie, in the middle of some text) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteItalicTextElement289() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteItalicTextElement289() -} - -func (c *current) onQuotedTextInSingleQuoteItalicText2(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonQuotedTextInSingleQuoteItalicText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInSingleQuoteItalicText2(stack["element"]) -} - -func (c *current) onQuotedTextInSingleQuoteItalicText13(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) - -} - -func (p *parser) callonQuotedTextInSingleQuoteItalicText13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInSingleQuoteItalicText13(stack["attributes"], stack["text"]) -} - -func (c *current) onEscapedItalicText5() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonEscapedItalicText5() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedItalicText5() -} - -func (c *current) onEscapedItalicText2(backslashes, elements interface{}) (interface{}, error) { - return types.NewEscapedQuotedText(backslashes.(string), "__", elements.([]interface{})) - -} - -func (p *parser) callonEscapedItalicText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedItalicText2(stack["backslashes"], stack["elements"]) -} - -func (c *current) onEscapedItalicText17() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonEscapedItalicText17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedItalicText17() -} - -func (c *current) onEscapedItalicText14(backslashes, elements interface{}) (interface{}, error) { - // unbalanced `__` vs `_` punctuation - result := append([]interface{}{"_"}, elements.([]interface{})) - return types.NewEscapedQuotedText(backslashes.(string), "_", result) - -} - -func (p *parser) callonEscapedItalicText14() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedItalicText14(stack["backslashes"], stack["elements"]) -} - -func (c *current) onEscapedItalicText27() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonEscapedItalicText27() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedItalicText27() -} - -func (c *current) onEscapedItalicText24(backslashes, elements interface{}) (interface{}, error) { - // simple punctuation must be evaluated last - return types.NewEscapedQuotedText(backslashes.(string), "_", elements.([]interface{})) - -} - -func (p *parser) callonEscapedItalicText24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onEscapedItalicText24(stack["backslashes"], stack["elements"]) -} - -func (c *current) onDoubleQuoteMonospaceText1(elements interface{}) (interface{}, error) { - - return types.NewQuotedText(types.DoubleQuoteMonospace, elements.([]interface{})) - -} - -func (p *parser) callonDoubleQuoteMonospaceText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceText1(stack["elements"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement13() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement13() -} - -func (c *current) onDoubleQuoteMonospaceTextElement7() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement7() -} - -func (c *current) onDoubleQuoteMonospaceTextElement16() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement16() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement16() -} - -func (c *current) onDoubleQuoteMonospaceTextElement20() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement20() -} - -func (c *current) onDoubleQuoteMonospaceTextElement26() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement26() -} - -func (c *current) onDoubleQuoteMonospaceTextElement33() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement33() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement33() -} - -func (c *current) onDoubleQuoteMonospaceTextElement40() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement40() -} - -func (c *current) onDoubleQuoteMonospaceTextElement52() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement52() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement52() -} - -func (c *current) onDoubleQuoteMonospaceTextElement54() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement54() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement54() -} - -func (c *current) onDoubleQuoteMonospaceTextElement47(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement47(stack["start"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement36() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement36(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement62() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement62() -} - -func (c *current) onDoubleQuoteMonospaceTextElement74() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement74() -} - -func (c *current) onDoubleQuoteMonospaceTextElement76() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement76() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement76() -} - -func (c *current) onDoubleQuoteMonospaceTextElement69(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement69() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement69(stack["start"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement58(stack["name"], stack["start"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement84() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement84() -} - -func (c *current) onDoubleQuoteMonospaceTextElement80(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement80() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement80(stack["name"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement94() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement94() -} - -func (c *current) onDoubleQuoteMonospaceTextElement90(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement90() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement90(stack["name"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement31(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement31() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement31(stack["element"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement105() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement105() -} - -func (c *current) onDoubleQuoteMonospaceTextElement107() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement107() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement107() -} - -func (c *current) onDoubleQuoteMonospaceTextElement109() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement109() -} - -func (c *current) onDoubleQuoteMonospaceTextElement111() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement111() -} - -func (c *current) onDoubleQuoteMonospaceTextElement113() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement113() -} - -func (c *current) onDoubleQuoteMonospaceTextElement115() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement115() -} - -func (c *current) onDoubleQuoteMonospaceTextElement117() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement117() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement117() -} - -func (c *current) onDoubleQuoteMonospaceTextElement119() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement119() -} - -func (c *current) onDoubleQuoteMonospaceTextElement121() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement121() -} - -func (c *current) onDoubleQuoteMonospaceTextElement125() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement125() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement125() -} - -func (c *current) onDoubleQuoteMonospaceTextElement128() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement128() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement128() -} - -func (c *current) onDoubleQuoteMonospaceTextElement132() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement132() -} - -func (c *current) onDoubleQuoteMonospaceTextElement123() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement123() -} - -func (c *current) onDoubleQuoteMonospaceTextElement141() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement141() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement141() -} - -func (c *current) onDoubleQuoteMonospaceTextElement146() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement146() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement146() -} - -func (c *current) onDoubleQuoteMonospaceTextElement139() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement139() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement139() -} - -func (c *current) onDoubleQuoteMonospaceTextElement153() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement153() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement153() -} - -func (c *current) onDoubleQuoteMonospaceTextElement155() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement155() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement155() -} - -func (c *current) onDoubleQuoteMonospaceTextElement157() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement157() -} - -func (c *current) onDoubleQuoteMonospaceTextElement101() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement101() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement101() -} - -func (c *current) onDoubleQuoteMonospaceTextElement159() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement159() -} - -func (c *current) onDoubleQuoteMonospaceTextElement161() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement161() -} - -func (c *current) onDoubleQuoteMonospaceTextElement163() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement163() -} - -func (c *current) onDoubleQuoteMonospaceTextElement165() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement165() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement165() -} - -func (c *current) onDoubleQuoteMonospaceTextElement167() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement167() -} - -func (c *current) onDoubleQuoteMonospaceTextElement169() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement169() -} - -func (c *current) onDoubleQuoteMonospaceTextElement171() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement171() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement171() -} - -func (c *current) onDoubleQuoteMonospaceTextElement173() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement173() -} - -func (c *current) onDoubleQuoteMonospaceTextElement177() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement177() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement177() -} - -func (c *current) onDoubleQuoteMonospaceTextElement180() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement180() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement180() -} - -func (c *current) onDoubleQuoteMonospaceTextElement184() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement184() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement184() -} - -func (c *current) onDoubleQuoteMonospaceTextElement175() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement175() -} - -func (c *current) onDoubleQuoteMonospaceTextElement193() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement193() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement193() -} - -func (c *current) onDoubleQuoteMonospaceTextElement198() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement198() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement198() -} - -func (c *current) onDoubleQuoteMonospaceTextElement191() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement191() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement191() -} - -func (c *current) onDoubleQuoteMonospaceTextElement205() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement205() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement205() -} - -func (c *current) onDoubleQuoteMonospaceTextElement207() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement207() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement207() -} - -func (c *current) onDoubleQuoteMonospaceTextElement209() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement209() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement209() -} - -func (c *current) onDoubleQuoteMonospaceTextElement211() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement211() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement211() -} - -func (c *current) onDoubleQuoteMonospaceTextElement213() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement213() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement213() -} - -func (c *current) onDoubleQuoteMonospaceTextElement219() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement219() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement219() -} - -func (c *current) onDoubleQuoteMonospaceTextElement227() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement227() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement227() -} - -func (c *current) onDoubleQuoteMonospaceTextElement236() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement236() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement236() -} - -func (c *current) onDoubleQuoteMonospaceTextElement240() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement240() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement240() -} - -func (c *current) onDoubleQuoteMonospaceTextElement246() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement246() -} - -func (c *current) onDoubleQuoteMonospaceTextElement255() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement255() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement255() -} - -func (c *current) onDoubleQuoteMonospaceTextElement251(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement251() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement251(stack["name"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement265() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement265() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement265() -} - -func (c *current) onDoubleQuoteMonospaceTextElement261(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement261() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement261(stack["name"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement271() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement271() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement271() -} - -func (c *current) onDoubleQuoteMonospaceTextElement232(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement232() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement232(stack["id"], stack["label"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement278() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement278() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement278() -} - -func (c *current) onDoubleQuoteMonospaceTextElement274(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement274() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement274(stack["id"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement230() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement230() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement230() -} - -func (c *current) onDoubleQuoteMonospaceTextElement282() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement282() -} - -func (c *current) onDoubleQuoteMonospaceTextElement225(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement225() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement225(stack["element"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement290() (interface{}, error) { - return string(c.text), nil -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement290() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement290() -} - -func (c *current) onDoubleQuoteMonospaceTextElement286(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement286() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement286(stack["ref"]) -} - -func (c *current) onDoubleQuoteMonospaceTextElement298() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement298() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement298() -} - -func (c *current) onDoubleQuoteMonospaceTextElement295() (interface{}, error) { - // ` or a monospace delimiter when immediately followed by an alphanum (ie, in the middle of some text) - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement295() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement295() -} - -func (c *current) onDoubleQuoteMonospaceTextElement1(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonDoubleQuoteMonospaceTextElement1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMonospaceTextElement1(stack["element"]) -} - -func (c *current) onQuotedTextInDoubleQuoteMonospaceText2(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonQuotedTextInDoubleQuoteMonospaceText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInDoubleQuoteMonospaceText2(stack["element"]) -} - -func (c *current) onQuotedTextInDoubleQuoteMonospaceText13(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) - -} - -func (p *parser) callonQuotedTextInDoubleQuoteMonospaceText13() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInDoubleQuoteMonospaceText13(stack["attributes"], stack["text"]) -} - -func (c *current) onSingleQuoteMonospaceText1(elements interface{}) (interface{}, error) { - - return types.NewQuotedText(types.SingleQuoteMonospace, elements.([]interface{})) - -} - -func (p *parser) callonSingleQuoteMonospaceText1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceText1(stack["elements"]) -} - -func (c *current) onSingleQuoteMonospaceTextElements7() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElements7() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElements7() -} - -func (c *current) onSingleQuoteMonospaceTextElements12(elements interface{}) (bool, error) { - return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces - -} - -func (p *parser) callonSingleQuoteMonospaceTextElements12() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElements12(stack["elements"]) -} - -func (c *current) onSingleQuoteMonospaceTextElements1(elements interface{}) (interface{}, error) { - return elements, nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElements1() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElements1(stack["elements"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement2() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement2() -} - -func (c *current) onSingleQuoteMonospaceTextElement11() (interface{}, error) { - // allow ` - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement11() -} - -func (c *current) onSingleQuoteMonospaceTextElement20() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement20() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement20() -} - -func (c *current) onSingleQuoteMonospaceTextElement24() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteMonospaceTextElement24() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement24() -} - -func (c *current) onSingleQuoteMonospaceTextElement30() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteMonospaceTextElement30() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement30() -} - -func (c *current) onSingleQuoteMonospaceTextElement37() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement37() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement37() -} - -func (c *current) onSingleQuoteMonospaceTextElement44() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement44() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement44() -} - -func (c *current) onSingleQuoteMonospaceTextElement56() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement56() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement56() -} - -func (c *current) onSingleQuoteMonospaceTextElement58() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement58() -} - -func (c *current) onSingleQuoteMonospaceTextElement51(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement51() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement51(stack["start"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement40(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) -} - -func (p *parser) callonSingleQuoteMonospaceTextElement40() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement40(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement66() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement66() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement66() -} - -func (c *current) onSingleQuoteMonospaceTextElement78() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement78() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement78() -} - -func (c *current) onSingleQuoteMonospaceTextElement80() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement80() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement80() -} - -func (c *current) onSingleQuoteMonospaceTextElement73(start interface{}) (interface{}, error) { - return start, nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement73() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement73(stack["start"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement62(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonSingleQuoteMonospaceTextElement62() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement62(stack["name"], stack["start"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement88() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement88() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement88() -} - -func (c *current) onSingleQuoteMonospaceTextElement84(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement84() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement84(stack["name"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement98() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement98() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement98() -} - -func (c *current) onSingleQuoteMonospaceTextElement94(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement94() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement94(stack["name"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement35(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement35() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement35(stack["element"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement109() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement109() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement109() -} - -func (c *current) onSingleQuoteMonospaceTextElement111() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement111() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement111() -} - -func (c *current) onSingleQuoteMonospaceTextElement113() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement113() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement113() -} - -func (c *current) onSingleQuoteMonospaceTextElement115() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement115() -} - -func (c *current) onSingleQuoteMonospaceTextElement117() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement117() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement117() -} - -func (c *current) onSingleQuoteMonospaceTextElement119() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement119() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement119() -} - -func (c *current) onSingleQuoteMonospaceTextElement121() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement121() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement121() -} - -func (c *current) onSingleQuoteMonospaceTextElement123() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement123() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement123() -} - -func (c *current) onSingleQuoteMonospaceTextElement125() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement125() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement125() -} - -func (c *current) onSingleQuoteMonospaceTextElement129() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement129() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement129() -} - -func (c *current) onSingleQuoteMonospaceTextElement132() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement132() -} - -func (c *current) onSingleQuoteMonospaceTextElement136() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteMonospaceTextElement136() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement136() -} - -func (c *current) onSingleQuoteMonospaceTextElement127() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement127() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement127() -} - -func (c *current) onSingleQuoteMonospaceTextElement145() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement145() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement145() -} - -func (c *current) onSingleQuoteMonospaceTextElement150() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteMonospaceTextElement150() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement150() -} - -func (c *current) onSingleQuoteMonospaceTextElement143() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement143() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement143() -} - -func (c *current) onSingleQuoteMonospaceTextElement157() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement157() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement157() -} - -func (c *current) onSingleQuoteMonospaceTextElement159() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement159() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement159() -} - -func (c *current) onSingleQuoteMonospaceTextElement161() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement161() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement161() -} - -func (c *current) onSingleQuoteMonospaceTextElement105() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement105() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement105() -} - -func (c *current) onSingleQuoteMonospaceTextElement163() (interface{}, error) { - return types.NewSymbol("\"`") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement163() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement163() -} - -func (c *current) onSingleQuoteMonospaceTextElement165() (interface{}, error) { - return types.NewSymbol("`\"") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement165() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement165() -} - -func (c *current) onSingleQuoteMonospaceTextElement167() (interface{}, error) { - return types.NewSymbol("'`") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement167() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement167() -} - -func (c *current) onSingleQuoteMonospaceTextElement169() (interface{}, error) { - return types.NewSymbol("`'") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement169() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement169() -} - -func (c *current) onSingleQuoteMonospaceTextElement171() (interface{}, error) { - return types.NewSymbol("(C)") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement171() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement171() -} - -func (c *current) onSingleQuoteMonospaceTextElement173() (interface{}, error) { - return types.NewSymbol("(TM)") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement173() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement173() -} - -func (c *current) onSingleQuoteMonospaceTextElement175() (interface{}, error) { - return types.NewSymbol("(R)") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement175() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement175() -} - -func (c *current) onSingleQuoteMonospaceTextElement177() (interface{}, error) { - return types.NewSymbol("...") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement177() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement177() -} - -func (c *current) onSingleQuoteMonospaceTextElement181() (bool, error) { - return c.isPreceededBySpace(), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement181() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement181() -} - -func (c *current) onSingleQuoteMonospaceTextElement184() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement184() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement184() -} - -func (c *current) onSingleQuoteMonospaceTextElement188() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteMonospaceTextElement188() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement188() -} - -func (c *current) onSingleQuoteMonospaceTextElement179() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement179() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement179() -} - -func (c *current) onSingleQuoteMonospaceTextElement197() (bool, error) { - return c.isPreceededByAlphanum(), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement197() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement197() -} - -func (c *current) onSingleQuoteMonospaceTextElement202() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonSingleQuoteMonospaceTextElement202() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement202() -} - -func (c *current) onSingleQuoteMonospaceTextElement195() (interface{}, error) { - return types.NewSymbol("--") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement195() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement195() -} - -func (c *current) onSingleQuoteMonospaceTextElement209() (interface{}, error) { - return types.NewSymbol("->") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement209() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement209() -} - -func (c *current) onSingleQuoteMonospaceTextElement211() (interface{}, error) { - return types.NewSymbol("<-") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement211() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement211() -} - -func (c *current) onSingleQuoteMonospaceTextElement213() (interface{}, error) { - return types.NewSymbol("=>") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement213() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement213() -} - -func (c *current) onSingleQuoteMonospaceTextElement215() (interface{}, error) { - return types.NewSymbol("<=") - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement215() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement215() -} - -func (c *current) onSingleQuoteMonospaceTextElement217() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement217() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement217() -} - -func (c *current) onSingleQuoteMonospaceTextElement223() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement223() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement223() -} - -func (c *current) onSingleQuoteMonospaceTextElement231() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement231() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement231() -} - -func (c *current) onSingleQuoteMonospaceTextElement240() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement240() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement240() -} - -func (c *current) onSingleQuoteMonospaceTextElement244() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement244() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement244() -} - -func (c *current) onSingleQuoteMonospaceTextElement250() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement250() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement250() -} - -func (c *current) onSingleQuoteMonospaceTextElement259() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement259() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement259() -} - -func (c *current) onSingleQuoteMonospaceTextElement255(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement255() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement255(stack["name"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement269() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement269() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement269() -} - -func (c *current) onSingleQuoteMonospaceTextElement265(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement265() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement265(stack["name"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement275() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement275() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement275() -} - -func (c *current) onSingleQuoteMonospaceTextElement236(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement236() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement236(stack["id"], stack["label"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement282() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement282() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement282() -} - -func (c *current) onSingleQuoteMonospaceTextElement278(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement278() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement278(stack["id"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement234() (interface{}, error) { - return types.NewStringElement(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement234() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement234() -} - -func (c *current) onSingleQuoteMonospaceTextElement286() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - -} - -func (p *parser) callonSingleQuoteMonospaceTextElement286() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement286() + { + name: "SingleRightArrow", + pos: position{line: 2859, col: 1, offset: 92953}, + expr: &actionExpr{ + pos: position{line: 2859, col: 21, offset: 92973}, + run: (*parser).callonSingleRightArrow1, + expr: &litMatcher{ + pos: position{line: 2859, col: 21, offset: 92973}, + val: "->", + ignoreCase: false, + want: "\"->\"", + }, + }, + }, + { + name: "SingleLeftArrow", + pos: position{line: 2863, col: 1, offset: 93024}, + expr: &actionExpr{ + pos: position{line: 2863, col: 20, offset: 93043}, + run: (*parser).callonSingleLeftArrow1, + expr: &litMatcher{ + pos: position{line: 2863, col: 20, offset: 93043}, + val: "<-", + ignoreCase: false, + want: "\"<-\"", + }, + }, + }, + { + name: "DoubleRightArrow", + pos: position{line: 2867, col: 1, offset: 93094}, + expr: &actionExpr{ + pos: position{line: 2867, col: 21, offset: 93114}, + run: (*parser).callonDoubleRightArrow1, + expr: &litMatcher{ + pos: position{line: 2867, col: 21, offset: 93114}, + val: "=>", + ignoreCase: false, + want: "\"=>\"", + }, + }, + }, + { + name: "DoubleLeftArrow", + pos: position{line: 2871, col: 1, offset: 93165}, + expr: &actionExpr{ + pos: position{line: 2871, col: 20, offset: 93184}, + run: (*parser).callonDoubleLeftArrow1, + expr: &litMatcher{ + pos: position{line: 2871, col: 20, offset: 93184}, + val: "<=", + ignoreCase: false, + want: "\"<=\"", + }, + }, + }, + { + name: "TypographicQuote", + pos: position{line: 2880, col: 1, offset: 93452}, + expr: &choiceExpr{ + pos: position{line: 2882, col: 5, offset: 93492}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2882, col: 5, offset: 93492}, + run: (*parser).callonTypographicQuote2, + expr: &seqExpr{ + pos: position{line: 2882, col: 5, offset: 93492}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2882, col: 5, offset: 93492}, + name: "Alphanum", + }, + &litMatcher{ + pos: position{line: 2882, col: 14, offset: 93501}, + val: "\\'", + ignoreCase: false, + want: "\"\\\\'\"", + }, + &andExpr{ + pos: position{line: 2882, col: 19, offset: 93506}, + expr: &charClassMatcher{ + pos: position{line: 2882, col: 20, offset: 93507}, + val: "[\\pL]", + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2888, col: 5, offset: 93738}, + run: (*parser).callonTypographicQuote8, + expr: &seqExpr{ + pos: position{line: 2888, col: 5, offset: 93738}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2888, col: 5, offset: 93738}, + name: "Alphanum", + }, + &litMatcher{ + pos: position{line: 2888, col: 14, offset: 93747}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + &andExpr{ + pos: position{line: 2888, col: 18, offset: 93751}, + expr: &charClassMatcher{ + pos: position{line: 2888, col: 19, offset: 93752}, + val: "[\\pL]", + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "Table", + pos: position{line: 2895, col: 1, offset: 94045}, + expr: &actionExpr{ + pos: position{line: 2896, col: 5, offset: 94059}, + run: (*parser).callonTable1, + expr: &seqExpr{ + pos: position{line: 2896, col: 5, offset: 94059}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2896, col: 5, offset: 94059}, + name: "TableStartDelimiter", + }, + &labeledExpr{ + pos: position{line: 2897, col: 5, offset: 94083}, + label: "header", + expr: &zeroOrOneExpr{ + pos: position{line: 2897, col: 12, offset: 94090}, + expr: &ruleRefExpr{ + pos: position{line: 2897, col: 13, offset: 94091}, + name: "TableHeader", + }, + }, + }, + &labeledExpr{ + pos: position{line: 2898, col: 5, offset: 94109}, + label: "rows", + expr: &zeroOrMoreExpr{ + pos: position{line: 2898, col: 10, offset: 94114}, + expr: &ruleRefExpr{ + pos: position{line: 2898, col: 11, offset: 94115}, + name: "TableRow", + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2899, col: 5, offset: 94130}, + name: "TableEndDelimiter", + }, + }, + }, + }, + }, + { + name: "TableDelimiter", + pos: position{line: 2904, col: 1, offset: 94218}, + expr: &seqExpr{ + pos: position{line: 2904, col: 19, offset: 94236}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2904, col: 19, offset: 94236}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2904, col: 26, offset: 94243}, + expr: &ruleRefExpr{ + pos: position{line: 2904, col: 26, offset: 94243}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 2904, col: 33, offset: 94250}, + name: "EOL", + }, + }, + }, + }, + { + name: "TableStartDelimiter", + pos: position{line: 2906, col: 1, offset: 94256}, + expr: &ruleRefExpr{ + pos: position{line: 2906, col: 24, offset: 94279}, + name: "TableDelimiter", + }, + }, + { + name: "TableEndDelimiter", + pos: position{line: 2908, col: 1, offset: 94295}, + expr: &choiceExpr{ + pos: position{line: 2908, col: 22, offset: 94316}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2908, col: 22, offset: 94316}, + name: "TableDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 2908, col: 39, offset: 94333}, + name: "EOF", + }, + }, + }, + }, + { + name: "TableHeader", + pos: position{line: 2910, col: 1, offset: 94338}, + expr: &actionExpr{ + pos: position{line: 2912, col: 5, offset: 94403}, + run: (*parser).callonTableHeader1, + expr: &seqExpr{ + pos: position{line: 2912, col: 5, offset: 94403}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2912, col: 5, offset: 94403}, + label: "cells", + expr: &oneOrMoreExpr{ + pos: position{line: 2912, col: 11, offset: 94409}, + expr: &ruleRefExpr{ + pos: position{line: 2912, col: 12, offset: 94410}, + name: "HeaderCell", + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2912, col: 25, offset: 94423}, + name: "EOL", + }, + &oneOrMoreExpr{ + pos: position{line: 2913, col: 5, offset: 94431}, + expr: &ruleRefExpr{ + pos: position{line: 2913, col: 5, offset: 94431}, + name: "BlankLine", + }, + }, + }, + }, + }, + }, + { + name: "HeaderCell", + pos: position{line: 2917, col: 1, offset: 94507}, + expr: &actionExpr{ + pos: position{line: 2918, col: 5, offset: 94526}, + run: (*parser).callonHeaderCell1, + expr: &seqExpr{ + pos: position{line: 2918, col: 5, offset: 94526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2918, col: 5, offset: 94526}, + val: "|", + ignoreCase: false, + want: "\"|\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2918, col: 9, offset: 94530}, + expr: &ruleRefExpr{ + pos: position{line: 2918, col: 9, offset: 94530}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 2919, col: 5, offset: 94542}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 2919, col: 14, offset: 94551}, + expr: &ruleRefExpr{ + pos: position{line: 2919, col: 14, offset: 94551}, + name: "CellContent", + }, + }, + }, + }, + }, + }, + }, + { + name: "TableRow", + pos: position{line: 2923, col: 1, offset: 94636}, + expr: &choiceExpr{ + pos: position{line: 2923, col: 13, offset: 94648}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2923, col: 13, offset: 94648}, + name: "MultiLineTableRow", + }, + &ruleRefExpr{ + pos: position{line: 2923, col: 33, offset: 94668}, + name: "SingleLineTableRow", + }, + }, + }, + }, + { + name: "SingleLineTableRow", + pos: position{line: 2925, col: 1, offset: 94688}, + expr: &actionExpr{ + pos: position{line: 2926, col: 5, offset: 94715}, + run: (*parser).callonSingleLineTableRow1, + expr: &seqExpr{ + pos: position{line: 2926, col: 5, offset: 94715}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2926, col: 5, offset: 94715}, + expr: &ruleRefExpr{ + pos: position{line: 2926, col: 6, offset: 94716}, + name: "TableEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 2927, col: 5, offset: 94738}, + label: "cells", + expr: &oneOrMoreExpr{ + pos: position{line: 2927, col: 11, offset: 94744}, + expr: &ruleRefExpr{ + pos: position{line: 2927, col: 12, offset: 94745}, + name: "TableCell", + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2927, col: 24, offset: 94757}, + name: "EOL", + }, + &zeroOrMoreExpr{ + pos: position{line: 2928, col: 5, offset: 94765}, + expr: &ruleRefExpr{ + pos: position{line: 2928, col: 5, offset: 94765}, + name: "BlankLine", + }, + }, + }, + }, + }, + }, + { + name: "MultiLineTableRow", + pos: position{line: 2932, col: 1, offset: 94841}, + expr: &actionExpr{ + pos: position{line: 2933, col: 5, offset: 94867}, + run: (*parser).callonMultiLineTableRow1, + expr: &seqExpr{ + pos: position{line: 2933, col: 5, offset: 94867}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2933, col: 5, offset: 94867}, + expr: &ruleRefExpr{ + pos: position{line: 2933, col: 6, offset: 94868}, + name: "TableEndDelimiter", + }, + }, + &labeledExpr{ + pos: position{line: 2934, col: 5, offset: 94890}, + label: "cells", + expr: &oneOrMoreExpr{ + pos: position{line: 2934, col: 11, offset: 94896}, + expr: &actionExpr{ + pos: position{line: 2934, col: 12, offset: 94897}, + run: (*parser).callonMultiLineTableRow7, + expr: &seqExpr{ + pos: position{line: 2934, col: 12, offset: 94897}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2934, col: 12, offset: 94897}, + label: "cell", + expr: &ruleRefExpr{ + pos: position{line: 2934, col: 18, offset: 94903}, + name: "TableCell", + }, + }, + &ruleRefExpr{ + pos: position{line: 2934, col: 29, offset: 94914}, + name: "EOL", + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2937, col: 6, offset: 94959}, + alternatives: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 2937, col: 6, offset: 94959}, + expr: &ruleRefExpr{ + pos: position{line: 2937, col: 6, offset: 94959}, + name: "BlankLine", + }, + }, + &andExpr{ + pos: position{line: 2937, col: 19, offset: 94972}, + expr: &ruleRefExpr{ + pos: position{line: 2937, col: 20, offset: 94973}, + name: "TableEndDelimiter", + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "TableCell", + pos: position{line: 2942, col: 1, offset: 95120}, + expr: &actionExpr{ + pos: position{line: 2943, col: 5, offset: 95138}, + run: (*parser).callonTableCell1, + expr: &seqExpr{ + pos: position{line: 2943, col: 5, offset: 95138}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2943, col: 5, offset: 95138}, + expr: &ruleRefExpr{ + pos: position{line: 2943, col: 6, offset: 95139}, + name: "TableEndDelimiter", + }, + }, + ¬Expr{ + pos: position{line: 2944, col: 5, offset: 95161}, + expr: &ruleRefExpr{ + pos: position{line: 2944, col: 6, offset: 95162}, + name: "BlankLine", + }, + }, + &litMatcher{ + pos: position{line: 2945, col: 5, offset: 95176}, + val: "|", + ignoreCase: false, + want: "\"|\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2945, col: 9, offset: 95180}, + expr: &ruleRefExpr{ + pos: position{line: 2945, col: 9, offset: 95180}, + name: "Space", + }, + }, + &labeledExpr{ + pos: position{line: 2945, col: 16, offset: 95187}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 2945, col: 25, offset: 95196}, + expr: &ruleRefExpr{ + pos: position{line: 2945, col: 25, offset: 95196}, + name: "CellContent", + }, + }, + }, + }, + }, + }, + }, + { + name: "CellContent", + pos: position{line: 2950, col: 1, offset: 95319}, + expr: &actionExpr{ + pos: position{line: 2951, col: 5, offset: 95339}, + run: (*parser).callonCellContent1, + expr: &labeledExpr{ + pos: position{line: 2951, col: 5, offset: 95339}, + label: "content", + expr: &actionExpr{ + pos: position{line: 2951, col: 14, offset: 95348}, + run: (*parser).callonCellContent3, + expr: &oneOrMoreExpr{ + pos: position{line: 2951, col: 14, offset: 95348}, + expr: &charClassMatcher{ + pos: position{line: 2951, col: 14, offset: 95348}, + val: "[^\\r\\n|]", + chars: []rune{'\r', '\n', '|'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + { + name: "TableColumnsAttribute", + pos: position{line: 2958, col: 1, offset: 95517}, + expr: &actionExpr{ + pos: position{line: 2958, col: 26, offset: 95542}, + run: (*parser).callonTableColumnsAttribute1, + expr: &seqExpr{ + pos: position{line: 2958, col: 26, offset: 95542}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2958, col: 26, offset: 95542}, + label: "cols", + expr: &zeroOrMoreExpr{ + pos: position{line: 2958, col: 31, offset: 95547}, + expr: &ruleRefExpr{ + pos: position{line: 2958, col: 32, offset: 95548}, + name: "Column", + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 2958, col: 41, offset: 95557}, + name: "EOF", + }, + }, + }, + }, + }, + { + name: "Column", + pos: position{line: 2962, col: 1, offset: 95595}, + expr: &actionExpr{ + pos: position{line: 2963, col: 5, offset: 95610}, + run: (*parser).callonColumn1, + expr: &seqExpr{ + pos: position{line: 2963, col: 5, offset: 95610}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2963, col: 5, offset: 95610}, + expr: &ruleRefExpr{ + pos: position{line: 2963, col: 6, offset: 95611}, + name: "EOF", + }, + }, + &labeledExpr{ + pos: position{line: 2966, col: 5, offset: 95734}, + label: "multiplier", + expr: &zeroOrOneExpr{ + pos: position{line: 2966, col: 16, offset: 95745}, + expr: &actionExpr{ + pos: position{line: 2966, col: 17, offset: 95746}, + run: (*parser).callonColumn7, + expr: &seqExpr{ + pos: position{line: 2966, col: 17, offset: 95746}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2966, col: 17, offset: 95746}, + label: "n", + expr: &ruleRefExpr{ + pos: position{line: 2966, col: 19, offset: 95748}, + name: "Integer", + }, + }, + &litMatcher{ + pos: position{line: 2966, col: 27, offset: 95756}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2967, col: 5, offset: 95784}, + label: "halign", + expr: &zeroOrOneExpr{ + pos: position{line: 2967, col: 12, offset: 95791}, + expr: &choiceExpr{ + pos: position{line: 2968, col: 9, offset: 95801}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2968, col: 9, offset: 95801}, + run: (*parser).callonColumn15, + expr: &litMatcher{ + pos: position{line: 2968, col: 9, offset: 95801}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + }, + &actionExpr{ + pos: position{line: 2969, col: 11, offset: 95848}, + run: (*parser).callonColumn17, + expr: &litMatcher{ + pos: position{line: 2969, col: 11, offset: 95848}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + }, + &actionExpr{ + pos: position{line: 2970, col: 11, offset: 95896}, + run: (*parser).callonColumn19, + expr: &litMatcher{ + pos: position{line: 2970, col: 11, offset: 95896}, + val: "^", + ignoreCase: false, + want: "\"^\"", + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2972, col: 5, offset: 95946}, + label: "valign", + expr: &zeroOrOneExpr{ + pos: position{line: 2972, col: 12, offset: 95953}, + expr: &choiceExpr{ + pos: position{line: 2973, col: 9, offset: 95963}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2973, col: 9, offset: 95963}, + run: (*parser).callonColumn24, + expr: &litMatcher{ + pos: position{line: 2973, col: 9, offset: 95963}, + val: ".<", + ignoreCase: false, + want: "\".<\"", + }, + }, + &actionExpr{ + pos: position{line: 2974, col: 11, offset: 96010}, + run: (*parser).callonColumn26, + expr: &litMatcher{ + pos: position{line: 2974, col: 11, offset: 96010}, + val: ".>", + ignoreCase: false, + want: "\".>\"", + }, + }, + &actionExpr{ + pos: position{line: 2975, col: 11, offset: 96060}, + run: (*parser).callonColumn28, + expr: &litMatcher{ + pos: position{line: 2975, col: 11, offset: 96060}, + val: ".^", + ignoreCase: false, + want: "\".^\"", + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2977, col: 5, offset: 96111}, + label: "weight", + expr: &zeroOrOneExpr{ + pos: position{line: 2977, col: 12, offset: 96118}, + expr: &choiceExpr{ + pos: position{line: 2977, col: 13, offset: 96119}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 2977, col: 13, offset: 96119}, + name: "Integer", + }, + &actionExpr{ + pos: position{line: 2977, col: 24, offset: 96130}, + run: (*parser).callonColumn34, + expr: &litMatcher{ + pos: position{line: 2977, col: 24, offset: 96130}, + val: "~", + ignoreCase: false, + want: "\"~\"", + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2978, col: 5, offset: 96172}, + label: "style", + expr: &zeroOrOneExpr{ + pos: position{line: 2978, col: 11, offset: 96178}, + expr: &actionExpr{ + pos: position{line: 2978, col: 12, offset: 96179}, + run: (*parser).callonColumn38, + expr: &charClassMatcher{ + pos: position{line: 2978, col: 12, offset: 96179}, + val: "[adehlms]", + chars: []rune{'a', 'd', 'e', 'h', 'l', 'm', 's'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2980, col: 5, offset: 96309}, + label: "comma", + expr: &zeroOrOneExpr{ + pos: position{line: 2980, col: 11, offset: 96315}, + expr: &litMatcher{ + pos: position{line: 2980, col: 12, offset: 96316}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 2981, col: 5, offset: 96326}, + run: (*parser).callonColumn43, + }, + }, + }, + }, + }, + { + name: "ThematicBreak", + pos: position{line: 2998, col: 1, offset: 96913}, + expr: &actionExpr{ + pos: position{line: 2998, col: 18, offset: 96930}, + run: (*parser).callonThematicBreak1, + expr: &seqExpr{ + pos: position{line: 2998, col: 18, offset: 96930}, + exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 2999, col: 9, offset: 96940}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2999, col: 9, offset: 96940}, + val: "'''", + ignoreCase: false, + want: "\"'''\"", + }, + &litMatcher{ + pos: position{line: 3000, col: 11, offset: 96976}, + val: "***", + ignoreCase: false, + want: "\"***\"", + }, + &litMatcher{ + pos: position{line: 3000, col: 19, offset: 96984}, + val: "* * *", + ignoreCase: false, + want: "\"* * *\"", + }, + &litMatcher{ + pos: position{line: 3000, col: 29, offset: 96994}, + val: "---", + ignoreCase: false, + want: "\"---\"", + }, + &litMatcher{ + pos: position{line: 3000, col: 37, offset: 97002}, + val: "- - -", + ignoreCase: false, + want: "\"- - -\"", + }, + &litMatcher{ + pos: position{line: 3000, col: 47, offset: 97012}, + val: "___", + ignoreCase: false, + want: "\"___\"", + }, + &litMatcher{ + pos: position{line: 3000, col: 55, offset: 97020}, + val: "_ _ _", + ignoreCase: false, + want: "\"_ _ _\"", + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 3001, col: 11, offset: 97078}, + expr: &ruleRefExpr{ + pos: position{line: 3001, col: 11, offset: 97078}, + name: "Space", + }, + }, + &ruleRefExpr{ + pos: position{line: 3001, col: 18, offset: 97085}, + name: "EOL", + }, + &ruleRefExpr{ + pos: position{line: 3001, col: 22, offset: 97089}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "UserMacroBlock", + pos: position{line: 3008, col: 1, offset: 97335}, + expr: &actionExpr{ + pos: position{line: 3009, col: 5, offset: 97358}, + run: (*parser).callonUserMacroBlock1, + expr: &seqExpr{ + pos: position{line: 3009, col: 5, offset: 97358}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 3009, col: 5, offset: 97358}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 3009, col: 11, offset: 97364}, + name: "UserMacroName", + }, + }, + &andCodeExpr{ + pos: position{line: 3010, col: 5, offset: 97384}, + run: (*parser).callonUserMacroBlock5, + }, + &litMatcher{ + pos: position{line: 3014, col: 5, offset: 97524}, + val: "::", + ignoreCase: false, + want: "\"::\"", + }, + &labeledExpr{ + pos: position{line: 3015, col: 5, offset: 97534}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 3015, col: 12, offset: 97541}, + name: "UserMacroValue", + }, + }, + &labeledExpr{ + pos: position{line: 3016, col: 5, offset: 97562}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 3016, col: 17, offset: 97574}, + name: "InlineAttributes", + }, + }, + &ruleRefExpr{ + pos: position{line: 3016, col: 35, offset: 97592}, + name: "EOL", + }, + }, + }, + }, + }, + { + name: "InlineUserMacro", + pos: position{line: 3020, col: 1, offset: 97722}, + expr: &actionExpr{ + pos: position{line: 3021, col: 5, offset: 97746}, + run: (*parser).callonInlineUserMacro1, + expr: &seqExpr{ + pos: position{line: 3021, col: 5, offset: 97746}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 3021, col: 5, offset: 97746}, + label: "name", + expr: &ruleRefExpr{ + pos: position{line: 3021, col: 11, offset: 97752}, + name: "UserMacroName", + }, + }, + &andCodeExpr{ + pos: position{line: 3022, col: 5, offset: 97772}, + run: (*parser).callonInlineUserMacro5, + }, + &litMatcher{ + pos: position{line: 3026, col: 5, offset: 97912}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 3027, col: 5, offset: 97921}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 3027, col: 12, offset: 97928}, + name: "UserMacroValue", + }, + }, + &labeledExpr{ + pos: position{line: 3028, col: 5, offset: 97949}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 3028, col: 17, offset: 97961}, + name: "InlineAttributes", + }, + }, + }, + }, + }, + }, + { + name: "UserMacroName", + pos: position{line: 3032, col: 1, offset: 98106}, + expr: &actionExpr{ + pos: position{line: 3032, col: 18, offset: 98123}, + run: (*parser).callonUserMacroName1, + expr: &oneOrMoreExpr{ + pos: position{line: 3032, col: 19, offset: 98124}, + expr: &charClassMatcher{ + pos: position{line: 3032, col: 19, offset: 98124}, + val: "[\\pL0-9_-]", + chars: []rune{'_', '-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + { + name: "UserMacroValue", + pos: position{line: 3036, col: 1, offset: 98181}, + expr: &actionExpr{ + pos: position{line: 3036, col: 19, offset: 98199}, + run: (*parser).callonUserMacroValue1, + expr: &zeroOrMoreExpr{ + pos: position{line: 3036, col: 19, offset: 98199}, + expr: &charClassMatcher{ + pos: position{line: 3036, col: 19, offset: 98199}, + val: "[^:[ \\r\\n]", + chars: []rune{':', '[', ' ', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "Alphanum", + pos: position{line: 3043, col: 1, offset: 98447}, + expr: &charClassMatcher{ + pos: position{line: 3043, col: 13, offset: 98459}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + { + name: "Parenthesis", + pos: position{line: 3045, col: 1, offset: 98469}, + expr: &choiceExpr{ + pos: position{line: 3045, col: 16, offset: 98484}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 3045, col: 16, offset: 98484}, + val: "(", + ignoreCase: false, + want: "\"(\"", + }, + &litMatcher{ + pos: position{line: 3045, col: 22, offset: 98490}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + &litMatcher{ + pos: position{line: 3045, col: 28, offset: 98496}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + &litMatcher{ + pos: position{line: 3045, col: 34, offset: 98502}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + &litMatcher{ + pos: position{line: 3045, col: 40, offset: 98508}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &litMatcher{ + pos: position{line: 3045, col: 46, offset: 98514}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + { + name: "Alphanums", + pos: position{line: 3047, col: 1, offset: 98520}, + expr: &actionExpr{ + pos: position{line: 3047, col: 14, offset: 98533}, + run: (*parser).callonAlphanums1, + expr: &oneOrMoreExpr{ + pos: position{line: 3047, col: 14, offset: 98533}, + expr: &charClassMatcher{ + pos: position{line: 3047, col: 14, offset: 98533}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + { + name: "Word", + pos: position{line: 3051, col: 1, offset: 98587}, + expr: &choiceExpr{ + pos: position{line: 3055, col: 5, offset: 98914}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 3055, col: 5, offset: 98914}, + run: (*parser).callonWord2, + expr: &seqExpr{ + pos: position{line: 3055, col: 5, offset: 98914}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 3055, col: 5, offset: 98914}, + expr: &charClassMatcher{ + pos: position{line: 3055, col: 5, offset: 98914}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + &andExpr{ + pos: position{line: 3055, col: 15, offset: 98924}, + expr: &choiceExpr{ + pos: position{line: 3055, col: 17, offset: 98926}, + alternatives: []interface{}{ + &charClassMatcher{ + pos: position{line: 3055, col: 17, offset: 98926}, + val: "[\\r\\n ,\\]]", + chars: []rune{'\r', '\n', ' ', ',', ']'}, + ignoreCase: false, + inverted: false, + }, + &ruleRefExpr{ + pos: position{line: 3055, col: 30, offset: 98939}, + name: "EOF", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 3057, col: 9, offset: 99008}, + run: (*parser).callonWord10, + expr: &seqExpr{ + pos: position{line: 3057, col: 9, offset: 99008}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 3057, col: 9, offset: 99008}, + expr: &charClassMatcher{ + pos: position{line: 3057, col: 9, offset: 99008}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + &oneOrMoreExpr{ + pos: position{line: 3057, col: 19, offset: 99018}, + expr: &seqExpr{ + pos: position{line: 3057, col: 20, offset: 99019}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 3057, col: 20, offset: 99019}, + val: "[=*_`]", + chars: []rune{'=', '*', '_', '`'}, + ignoreCase: false, + inverted: false, + }, + &oneOrMoreExpr{ + pos: position{line: 3057, col: 27, offset: 99026}, + expr: &charClassMatcher{ + pos: position{line: 3057, col: 27, offset: 99026}, + val: "[\\pL0-9]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "InlineWord", + pos: position{line: 3061, col: 1, offset: 99113}, + expr: &actionExpr{ + pos: position{line: 3062, col: 5, offset: 99132}, + run: (*parser).callonInlineWord1, + expr: &seqExpr{ + pos: position{line: 3062, col: 5, offset: 99132}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 3062, col: 5, offset: 99132}, + expr: &charClassMatcher{ + pos: position{line: 3062, col: 5, offset: 99132}, + val: "[\\pL0-9,;!?]", + chars: []rune{',', ';', '!', '?'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + &choiceExpr{ + pos: position{line: 3063, col: 6, offset: 99182}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3063, col: 6, offset: 99182}, + name: "Space", + }, + &andExpr{ + pos: position{line: 3063, col: 14, offset: 99190}, + expr: &choiceExpr{ + pos: position{line: 3063, col: 16, offset: 99192}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 3063, col: 16, offset: 99192}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + &ruleRefExpr{ + pos: position{line: 3063, col: 22, offset: 99198}, + name: "ElementPlaceHolderDelimiter", + }, + &ruleRefExpr{ + pos: position{line: 3063, col: 52, offset: 99228}, + name: "EOL", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "Punctuation", + pos: position{line: 3068, col: 1, offset: 99351}, + expr: &actionExpr{ + pos: position{line: 3068, col: 16, offset: 99366}, + run: (*parser).callonPunctuation1, + expr: &seqExpr{ + pos: position{line: 3068, col: 16, offset: 99366}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 3068, col: 16, offset: 99366}, + label: "char", + expr: &ruleRefExpr{ + pos: position{line: 3068, col: 22, offset: 99372}, + name: "PunctuationCharacter", + }, + }, + &andExpr{ + pos: position{line: 3068, col: 44, offset: 99394}, + expr: &choiceExpr{ + pos: position{line: 3068, col: 46, offset: 99396}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3068, col: 46, offset: 99396}, + name: "Space", + }, + &ruleRefExpr{ + pos: position{line: 3068, col: 54, offset: 99404}, + name: "EOL", + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "PunctuationCharacter", + pos: position{line: 3075, col: 1, offset: 99533}, + expr: &actionExpr{ + pos: position{line: 3075, col: 25, offset: 99557}, + run: (*parser).callonPunctuationCharacter1, + expr: &charClassMatcher{ + pos: position{line: 3075, col: 25, offset: 99557}, + val: "[.,;?!]", + chars: []rune{'.', ',', ';', '?', '!'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + { + name: "AnyChar", + pos: position{line: 3081, col: 1, offset: 99817}, + expr: &actionExpr{ + pos: position{line: 3081, col: 12, offset: 99828}, + run: (*parser).callonAnyChar1, + expr: &anyMatcher{ + line: 3081, col: 12, offset: 99828, + }, + }, + }, + { + name: "FileLocation", + pos: position{line: 3085, col: 1, offset: 99895}, + expr: &actionExpr{ + pos: position{line: 3085, col: 17, offset: 99911}, + run: (*parser).callonFileLocation1, + expr: &labeledExpr{ + pos: position{line: 3085, col: 17, offset: 99911}, + label: "path", + expr: &oneOrMoreExpr{ + pos: position{line: 3085, col: 22, offset: 99916}, + expr: &choiceExpr{ + pos: position{line: 3085, col: 23, offset: 99917}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3085, col: 23, offset: 99917}, + name: "Filename", + }, + &ruleRefExpr{ + pos: position{line: 3085, col: 34, offset: 99928}, + name: "ElementPlaceHolder", + }, + }, + }, + }, + }, + }, + }, + { + name: "Location", + pos: position{line: 3089, col: 1, offset: 100017}, + expr: &actionExpr{ + pos: position{line: 3089, col: 13, offset: 100029}, + run: (*parser).callonLocation1, + expr: &seqExpr{ + pos: position{line: 3089, col: 13, offset: 100029}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 3089, col: 13, offset: 100029}, + label: "scheme", + expr: &zeroOrOneExpr{ + pos: position{line: 3089, col: 20, offset: 100036}, + expr: &ruleRefExpr{ + pos: position{line: 3089, col: 21, offset: 100037}, + name: "Scheme", + }, + }, + }, + &labeledExpr{ + pos: position{line: 3089, col: 30, offset: 100046}, + label: "path", + expr: &oneOrMoreExpr{ + pos: position{line: 3089, col: 35, offset: 100051}, + expr: &choiceExpr{ + pos: position{line: 3089, col: 36, offset: 100052}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3089, col: 36, offset: 100052}, + name: "Filename", + }, + &ruleRefExpr{ + pos: position{line: 3089, col: 47, offset: 100063}, + name: "ElementPlaceHolder", + }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "LocationWithScheme", + pos: position{line: 3093, col: 1, offset: 100156}, + expr: &actionExpr{ + pos: position{line: 3093, col: 23, offset: 100178}, + run: (*parser).callonLocationWithScheme1, + expr: &seqExpr{ + pos: position{line: 3093, col: 23, offset: 100178}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 3093, col: 23, offset: 100178}, + expr: &litMatcher{ + pos: position{line: 3093, col: 24, offset: 100179}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + }, + &labeledExpr{ + pos: position{line: 3093, col: 28, offset: 100183}, + label: "scheme", + expr: &ruleRefExpr{ + pos: position{line: 3093, col: 36, offset: 100191}, + name: "Scheme", + }, + }, + &labeledExpr{ + pos: position{line: 3093, col: 44, offset: 100199}, + label: "path", + expr: &oneOrMoreExpr{ + pos: position{line: 3093, col: 49, offset: 100204}, + expr: &ruleRefExpr{ + pos: position{line: 3093, col: 50, offset: 100205}, + name: "Filename", + }, + }, + }, + }, + }, + }, + }, + { + name: "Scheme", + pos: position{line: 3097, col: 1, offset: 100288}, + expr: &choiceExpr{ + pos: position{line: 3097, col: 11, offset: 100298}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 3097, col: 11, offset: 100298}, + val: "http://", + ignoreCase: false, + want: "\"http://\"", + }, + &litMatcher{ + pos: position{line: 3097, col: 23, offset: 100310}, + val: "https://", + ignoreCase: false, + want: "\"https://\"", + }, + &litMatcher{ + pos: position{line: 3097, col: 36, offset: 100323}, + val: "ftp://", + ignoreCase: false, + want: "\"ftp://\"", + }, + &litMatcher{ + pos: position{line: 3097, col: 47, offset: 100334}, + val: "irc://", + ignoreCase: false, + want: "\"irc://\"", + }, + &litMatcher{ + pos: position{line: 3097, col: 58, offset: 100345}, + val: "mailto:", + ignoreCase: false, + want: "\"mailto:\"", + }, + }, + }, + }, + { + name: "Filename", + pos: position{line: 3099, col: 1, offset: 100356}, + expr: &actionExpr{ + pos: position{line: 3100, col: 5, offset: 100373}, + run: (*parser).callonFilename1, + expr: &seqExpr{ + pos: position{line: 3100, col: 5, offset: 100373}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 3100, col: 5, offset: 100373}, + expr: &litMatcher{ + pos: position{line: 3100, col: 6, offset: 100374}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + }, + &labeledExpr{ + pos: position{line: 3101, col: 5, offset: 100398}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 3101, col: 14, offset: 100407}, + expr: &choiceExpr{ + pos: position{line: 3102, col: 9, offset: 100417}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 3102, col: 9, offset: 100417}, + run: (*parser).callonFilename8, + expr: &oneOrMoreExpr{ + pos: position{line: 3102, col: 9, offset: 100417}, + expr: &charClassMatcher{ + pos: position{line: 3102, col: 10, offset: 100418}, + val: "[^\\r\\n[\\]\\uFFFD{.,;?!<> ]", + chars: []rune{'\r', '\n', '[', ']', '�', '{', '.', ',', ';', '?', '!', '<', '>', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &seqExpr{ + pos: position{line: 3105, col: 11, offset: 100683}, + exprs: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3105, col: 11, offset: 100683}, + name: "PunctuationCharacter", + }, + &andExpr{ + pos: position{line: 3105, col: 32, offset: 100704}, + expr: ¬Expr{ + pos: position{line: 3105, col: 34, offset: 100706}, + expr: &choiceExpr{ + pos: position{line: 3105, col: 36, offset: 100708}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3105, col: 36, offset: 100708}, + name: "EOF", + }, + &ruleRefExpr{ + pos: position{line: 3105, col: 42, offset: 100714}, + name: "Space", + }, + }, + }, + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 3106, col: 11, offset: 100732}, + name: "AttributeReference", + }, + &ruleRefExpr{ + pos: position{line: 3107, col: 11, offset: 100762}, + name: "SpecialCharacter", + }, + &actionExpr{ + pos: position{line: 3108, col: 11, offset: 100789}, + run: (*parser).callonFilename20, + expr: &litMatcher{ + pos: position{line: 3108, col: 11, offset: 100789}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "Id", + pos: position{line: 3114, col: 1, offset: 100939}, + expr: &actionExpr{ + pos: position{line: 3114, col: 7, offset: 100945}, + run: (*parser).callonId1, + expr: &oneOrMoreExpr{ + pos: position{line: 3114, col: 7, offset: 100945}, + expr: &charClassMatcher{ + pos: position{line: 3114, col: 7, offset: 100945}, + val: "[^[\\]<>,]", + chars: []rune{'[', ']', '<', '>', ','}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + { + name: "Number", + pos: position{line: 3118, col: 1, offset: 101078}, + expr: &choiceExpr{ + pos: position{line: 3118, col: 11, offset: 101088}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3118, col: 11, offset: 101088}, + name: "Float", + }, + &ruleRefExpr{ + pos: position{line: 3119, col: 7, offset: 101100}, + name: "Integer", + }, + }, + }, + }, + { + name: "Integer", + pos: position{line: 3121, col: 1, offset: 101109}, + expr: &actionExpr{ + pos: position{line: 3121, col: 12, offset: 101120}, + run: (*parser).callonInteger1, + expr: &seqExpr{ + pos: position{line: 3121, col: 13, offset: 101121}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 3121, col: 13, offset: 101121}, + expr: &litMatcher{ + pos: position{line: 3121, col: 13, offset: 101121}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 3121, col: 18, offset: 101126}, + expr: &charClassMatcher{ + pos: position{line: 3121, col: 18, offset: 101126}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + { + name: "Float", + pos: position{line: 3125, col: 1, offset: 101187}, + expr: &actionExpr{ + pos: position{line: 3125, col: 10, offset: 101196}, + run: (*parser).callonFloat1, + expr: &seqExpr{ + pos: position{line: 3125, col: 11, offset: 101197}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 3125, col: 11, offset: 101197}, + expr: &litMatcher{ + pos: position{line: 3125, col: 11, offset: 101197}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 3125, col: 16, offset: 101202}, + expr: &charClassMatcher{ + pos: position{line: 3125, col: 16, offset: 101202}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 3125, col: 23, offset: 101209}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + &oneOrMoreExpr{ + pos: position{line: 3125, col: 27, offset: 101213}, + expr: &charClassMatcher{ + pos: position{line: 3125, col: 27, offset: 101213}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + { + name: "Space", + pos: position{line: 3129, col: 1, offset: 101284}, + expr: &actionExpr{ + pos: position{line: 3129, col: 10, offset: 101293}, + run: (*parser).callonSpace1, + expr: &choiceExpr{ + pos: position{line: 3129, col: 11, offset: 101294}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 3129, col: 11, offset: 101294}, + val: " ", + ignoreCase: false, + want: "\" \"", + }, + &litMatcher{ + pos: position{line: 3129, col: 17, offset: 101300}, + val: "\t", + ignoreCase: false, + want: "\"\\t\"", + }, + }, + }, + }, + }, + { + name: "Spaces", + pos: position{line: 3133, col: 1, offset: 101350}, + expr: &actionExpr{ + pos: position{line: 3133, col: 11, offset: 101360}, + run: (*parser).callonSpaces1, + expr: &oneOrMoreExpr{ + pos: position{line: 3133, col: 11, offset: 101360}, + expr: &choiceExpr{ + pos: position{line: 3133, col: 12, offset: 101361}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 3133, col: 12, offset: 101361}, + val: " ", + ignoreCase: false, + want: "\" \"", + }, + &litMatcher{ + pos: position{line: 3133, col: 18, offset: 101367}, + val: "\t", + ignoreCase: false, + want: "\"\\t\"", + }, + }, + }, + }, + }, + }, + { + name: "Newline", + pos: position{line: 3138, col: 1, offset: 101466}, + expr: &actionExpr{ + pos: position{line: 3138, col: 12, offset: 101477}, + run: (*parser).callonNewline1, + expr: &choiceExpr{ + pos: position{line: 3138, col: 13, offset: 101478}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 3138, col: 13, offset: 101478}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 3138, col: 20, offset: 101485}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 3138, col: 29, offset: 101494}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + }, + { + name: "EOF", + pos: position{line: 3142, col: 1, offset: 101560}, + expr: ¬Expr{ + pos: position{line: 3142, col: 8, offset: 101567}, + expr: &anyMatcher{ + line: 3142, col: 9, offset: 101568, + }, + }, + }, + { + name: "EOL", + pos: position{line: 3145, col: 1, offset: 101610}, + expr: &choiceExpr{ + pos: position{line: 3145, col: 8, offset: 101617}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 3145, col: 8, offset: 101617}, + name: "Newline", + }, + &ruleRefExpr{ + pos: position{line: 3145, col: 18, offset: 101627}, + name: "EOF", + }, + }, + }, + }, + }, } -func (c *current) onSingleQuoteMonospaceTextElement229(element interface{}) (interface{}, error) { +func (c *current) onDocumentRawLine1(element interface{}) (interface{}, error) { + // in case of parse error, we'll keep the rawline content as-is return element, nil } -func (p *parser) callonSingleQuoteMonospaceTextElement229() (interface{}, error) { +func (p *parser) callonDocumentRawLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMonospaceTextElement229(stack["element"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement294() (interface{}, error) { - return string(c.text), nil + return p.cur.onDocumentRawLine1(stack["element"]) } -func (p *parser) callonSingleQuoteMonospaceTextElement294() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement294() -} +func (c *current) onRawSection3() (bool, error) { + // should only be enabled when reading files to include, not the main (root) file + return c.isSectionEnabled(), nil -func (c *current) onSingleQuoteMonospaceTextElement290(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonSingleQuoteMonospaceTextElement290() (interface{}, error) { +func (p *parser) callonRawSection3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMonospaceTextElement290(stack["ref"]) -} - -func (c *current) onSingleQuoteMonospaceTextElement303() (interface{}, error) { - return string(c.text), nil - + return p.cur.onRawSection3() } -func (p *parser) callonSingleQuoteMonospaceTextElement303() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMonospaceTextElement303() -} +func (c *current) onRawSection4() (bool, error) { -func (c *current) onSingleQuoteMonospaceTextElement298() (interface{}, error) { - // or an monospace delimiter when immediately followed by an alphanum (ie, in the middle of some text) - return types.NewStringElement(string(c.text)) + return !c.isWithinDelimitedBlock(), nil } -func (p *parser) callonSingleQuoteMonospaceTextElement298() (interface{}, error) { +func (p *parser) callonRawSection4() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMonospaceTextElement298() + return p.cur.onRawSection4() } -func (c *current) onQuotedTextInSingleQuoteMonospaceText2(element interface{}) (interface{}, error) { - return element, nil - -} - -func (p *parser) callonQuotedTextInSingleQuoteMonospaceText2() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onQuotedTextInSingleQuoteMonospaceText2(stack["element"]) -} +func (c *current) onRawSection6() (interface{}, error) { -func (c *current) onQuotedTextInSingleQuoteMonospaceText13(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) + // `=` is level 0, `==` is level 1, etc. + return (len(c.text) - 1), nil } -func (p *parser) callonQuotedTextInSingleQuoteMonospaceText13() (interface{}, error) { +func (p *parser) callonRawSection6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuotedTextInSingleQuoteMonospaceText13(stack["attributes"], stack["text"]) + return p.cur.onRawSection6() } -func (c *current) onEscapedMonospaceText5() (interface{}, error) { - return string(c.text), nil +func (c *current) onRawSection9(level interface{}) (bool, error) { + + // use a predicate to make sure that only `=` (level 0) to `======` (level 5) are allowed + return level.(int) <= 5, nil } -func (p *parser) callonEscapedMonospaceText5() (interface{}, error) { +func (p *parser) callonRawSection9() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMonospaceText5() + return p.cur.onRawSection9(stack["level"]) } -func (c *current) onEscapedMonospaceText2(backslashes, elements interface{}) (interface{}, error) { - return types.NewEscapedQuotedText(backslashes.(string), "``", elements.([]interface{})) +func (c *current) onRawSection1(level interface{}) (interface{}, error) { + return types.NewRawSection(level.(int), string(c.text)) // just retain the raw content } -func (p *parser) callonEscapedMonospaceText2() (interface{}, error) { +func (p *parser) callonRawSection1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMonospaceText2(stack["backslashes"], stack["elements"]) + return p.cur.onRawSection1(stack["level"]) } -func (c *current) onEscapedMonospaceText17() (interface{}, error) { - return string(c.text), nil +func (c *current) onIfdef1(name, attr interface{}) (interface{}, error) { + return types.NewIfdefCondition(name.(string), attr) } -func (p *parser) callonEscapedMonospaceText17() (interface{}, error) { +func (p *parser) callonIfdef1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMonospaceText17() + return p.cur.onIfdef1(stack["name"], stack["attr"]) } -func (c *current) onEscapedMonospaceText14(backslashes, elements interface{}) (interface{}, error) { - result := append([]interface{}{"`"}, elements.([]interface{})) - return types.NewEscapedQuotedText(backslashes.(string), "`", result) +func (c *current) onIfndef1(name, attr interface{}) (interface{}, error) { + return types.NewIfndefCondition(name.(string), attr) } -func (p *parser) callonEscapedMonospaceText14() (interface{}, error) { +func (p *parser) callonIfndef1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMonospaceText14(stack["backslashes"], stack["elements"]) + return p.cur.onIfndef1(stack["name"], stack["attr"]) } -func (c *current) onEscapedMonospaceText27() (interface{}, error) { +func (c *current) onConditionalInclusionAttribute1() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonEscapedMonospaceText27() (interface{}, error) { +func (p *parser) callonConditionalInclusionAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMonospaceText27() + return p.cur.onConditionalInclusionAttribute1() } -func (c *current) onEscapedMonospaceText24(backslashes, elements interface{}) (interface{}, error) { - return types.NewEscapedQuotedText(backslashes.(string), "`", elements.([]interface{})) +func (c *current) onIfeval1(left, operand, right interface{}) (interface{}, error) { + return types.NewIfevalCondition(left, right, operand.(types.IfevalOperand)) } -func (p *parser) callonEscapedMonospaceText24() (interface{}, error) { +func (p *parser) callonIfeval1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMonospaceText24(stack["backslashes"], stack["elements"]) + return p.cur.onIfeval1(stack["left"], stack["operand"], stack["right"]) } -func (c *current) onDoubleQuoteMarkedText1(elements interface{}) (interface{}, error) { - - return types.NewQuotedText(types.DoubleQuoteMarked, elements.([]interface{})) - +func (c *current) onIfevalExpressionMember2(s interface{}) (interface{}, error) { + return s, nil } -func (p *parser) callonDoubleQuoteMarkedText1() (interface{}, error) { +func (p *parser) callonIfevalExpressionMember2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedText1(stack["elements"]) + return p.cur.onIfevalExpressionMember2(stack["s"]) } -func (c *current) onDoubleQuoteMarkedTextElement13() (interface{}, error) { - return string(c.text), nil - +func (c *current) onIfevalExpressionMember8(s interface{}) (interface{}, error) { + return s, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement13() (interface{}, error) { +func (p *parser) callonIfevalExpressionMember8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement13() + return p.cur.onIfevalExpressionMember8(stack["s"]) } -func (c *current) onDoubleQuoteMarkedTextElement7() (interface{}, error) { - return types.NewStringElement(string(c.text)) - +func (c *current) onIfevalExpressionMember14(s interface{}) (interface{}, error) { + return s, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement7() (interface{}, error) { +func (p *parser) callonIfevalExpressionMember14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement7() + return p.cur.onIfevalExpressionMember14(stack["s"]) } -func (c *current) onDoubleQuoteMarkedTextElement16() (interface{}, error) { - // log.Debug("matched multiple spaces") +func (c *current) onIfevalExpressionMember21() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonDoubleQuoteMarkedTextElement16() (interface{}, error) { +func (p *parser) callonIfevalExpressionMember21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement16() + return p.cur.onIfevalExpressionMember21() } -func (c *current) onDoubleQuoteMarkedTextElement20() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onIfevalExpressionMember17(w interface{}) (interface{}, error) { + return w, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement20() (interface{}, error) { +func (p *parser) callonIfevalExpressionMember17() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement20() + return p.cur.onIfevalExpressionMember17(stack["w"]) } -func (c *current) onDoubleQuoteMarkedTextElement26() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onIfevalExpressionMember29() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement26() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMarkedTextElement26() -} - -func (c *current) onDoubleQuoteMarkedTextElement33() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - -} - -func (p *parser) callonDoubleQuoteMarkedTextElement33() (bool, error) { +func (p *parser) callonIfevalExpressionMember29() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement33() + return p.cur.onIfevalExpressionMember29() } -func (c *current) onDoubleQuoteMarkedTextElement40() (interface{}, error) { - return string(c.text), nil - +func (c *current) onIfevalExpressionMember25(w interface{}) (interface{}, error) { + return w, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement40() (interface{}, error) { +func (p *parser) callonIfevalExpressionMember25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement40() + return p.cur.onIfevalExpressionMember25(stack["w"]) } -func (c *current) onDoubleQuoteMarkedTextElement52() (interface{}, error) { - return string(c.text), nil +func (c *current) onIfevalExpressionOperand2() (interface{}, error) { + return types.NewEqualOperand() } -func (p *parser) callonDoubleQuoteMarkedTextElement52() (interface{}, error) { +func (p *parser) callonIfevalExpressionOperand2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement52() + return p.cur.onIfevalExpressionOperand2() } -func (c *current) onDoubleQuoteMarkedTextElement54() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onIfevalExpressionOperand4() (interface{}, error) { + return types.NewNotEqualOperand() } -func (p *parser) callonDoubleQuoteMarkedTextElement54() (interface{}, error) { +func (p *parser) callonIfevalExpressionOperand4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement54() -} - -func (c *current) onDoubleQuoteMarkedTextElement47(start interface{}) (interface{}, error) { - return start, nil - + return p.cur.onIfevalExpressionOperand4() } -func (p *parser) callonDoubleQuoteMarkedTextElement47() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMarkedTextElement47(stack["start"]) -} +func (c *current) onIfevalExpressionOperand6() (interface{}, error) { + return types.NewLessThanOperand() -func (c *current) onDoubleQuoteMarkedTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement36() (interface{}, error) { +func (p *parser) callonIfevalExpressionOperand6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement36(stack["name"], stack["start"]) + return p.cur.onIfevalExpressionOperand6() } -func (c *current) onDoubleQuoteMarkedTextElement62() (interface{}, error) { - return string(c.text), nil +func (c *current) onIfevalExpressionOperand8() (interface{}, error) { + return types.NewLessOrEqualOperand() } -func (p *parser) callonDoubleQuoteMarkedTextElement62() (interface{}, error) { +func (p *parser) callonIfevalExpressionOperand8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement62() + return p.cur.onIfevalExpressionOperand8() } -func (c *current) onDoubleQuoteMarkedTextElement74() (interface{}, error) { - return string(c.text), nil +func (c *current) onIfevalExpressionOperand10() (interface{}, error) { + return types.NewGreaterThanOperand() } -func (p *parser) callonDoubleQuoteMarkedTextElement74() (interface{}, error) { +func (p *parser) callonIfevalExpressionOperand10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement74() + return p.cur.onIfevalExpressionOperand10() } -func (c *current) onDoubleQuoteMarkedTextElement76() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onIfevalExpressionOperand12() (interface{}, error) { + return types.NewGreaterOrEqualOperand() } -func (p *parser) callonDoubleQuoteMarkedTextElement76() (interface{}, error) { +func (p *parser) callonIfevalExpressionOperand12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement76() + return p.cur.onIfevalExpressionOperand12() } -func (c *current) onDoubleQuoteMarkedTextElement69(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onEndIf1(name, attr interface{}) (interface{}, error) { + return types.NewEndOfCondition() // name and attributes are parsed but ignored } -func (p *parser) callonDoubleQuoteMarkedTextElement69() (interface{}, error) { +func (p *parser) callonEndIf1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement69(stack["start"]) + return p.cur.onEndIf1(stack["name"], stack["attr"]) } -func (c *current) onDoubleQuoteMarkedTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) -} - -func (p *parser) callonDoubleQuoteMarkedTextElement58() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMarkedTextElement58(stack["name"], stack["start"]) -} +func (c *current) onConditionalVariableName1() (interface{}, error) { -func (c *current) onDoubleQuoteMarkedTextElement84() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement84() (interface{}, error) { +func (p *parser) callonConditionalVariableName1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement84() + return p.cur.onConditionalVariableName1() } -func (c *current) onDoubleQuoteMarkedTextElement80(name interface{}) (interface{}, error) { +func (c *current) onFileInclusion4(path, attributes interface{}) (interface{}, error) { - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) + return types.NewFileInclusion(path.(*types.Location), attributes.(types.Attributes), string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement80() (interface{}, error) { +func (p *parser) callonFileInclusion4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement80(stack["name"]) + return p.cur.onFileInclusion4(stack["path"], stack["attributes"]) } -func (c *current) onDoubleQuoteMarkedTextElement94() (interface{}, error) { - return string(c.text), nil +func (c *current) onFileInclusion1(incl interface{}) (interface{}, error) { + return incl.(*types.FileInclusion), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement94() (interface{}, error) { +func (p *parser) callonFileInclusion1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement94() + return p.cur.onFileInclusion1(stack["incl"]) } -func (c *current) onDoubleQuoteMarkedTextElement90(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) +func (c *current) onLineRanges1(value interface{}) (interface{}, error) { + // must make sure that the whole content is parsed + return value, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement90() (interface{}, error) { +func (p *parser) callonLineRanges1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement90(stack["name"]) + return p.cur.onLineRanges1(stack["value"]) } -func (c *current) onDoubleQuoteMarkedTextElement31(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onMultipleLineRanges9(other interface{}) (interface{}, error) { + return other, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement31() (interface{}, error) { +func (p *parser) callonMultipleLineRanges9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement31(stack["element"]) + return p.cur.onMultipleLineRanges9(stack["other"]) } -func (c *current) onDoubleQuoteMarkedTextElement105() (interface{}, error) { - return types.NewSymbol("\"`") +func (c *current) onMultipleLineRanges1(first, others interface{}) (interface{}, error) { + return append([]interface{}{first}, others.([]interface{})...), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement105() (interface{}, error) { +func (p *parser) callonMultipleLineRanges1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement105() + return p.cur.onMultipleLineRanges1(stack["first"], stack["others"]) } -func (c *current) onDoubleQuoteMarkedTextElement107() (interface{}, error) { - return types.NewSymbol("`\"") +func (c *current) onMultiLineRange1(start, end interface{}) (interface{}, error) { + // eg: lines=12..14 + return types.NewLineRange(start.(int), end.(int)) } -func (p *parser) callonDoubleQuoteMarkedTextElement107() (interface{}, error) { +func (p *parser) callonMultiLineRange1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement107() + return p.cur.onMultiLineRange1(stack["start"], stack["end"]) } -func (c *current) onDoubleQuoteMarkedTextElement109() (interface{}, error) { - return types.NewSymbol("'`") +func (c *current) onSingleLineRange1(singleline interface{}) (interface{}, error) { + // eg: lines=12 + return types.NewLineRange(singleline.(int), singleline.(int)) } -func (p *parser) callonDoubleQuoteMarkedTextElement109() (interface{}, error) { +func (p *parser) callonSingleLineRange1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement109() + return p.cur.onSingleLineRange1(stack["singleline"]) } -func (c *current) onDoubleQuoteMarkedTextElement111() (interface{}, error) { - return types.NewSymbol("`'") +func (c *current) onTagRanges1(value interface{}) (interface{}, error) { + // must make sure that the whole content is parsed + return value, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement111() (interface{}, error) { +func (p *parser) callonTagRanges1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement111() + return p.cur.onTagRanges1(stack["value"]) } -func (c *current) onDoubleQuoteMarkedTextElement113() (interface{}, error) { - return types.NewSymbol("(C)") +func (c *current) onMultipleTagRanges7(other interface{}) (interface{}, error) { + return other, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement113() (interface{}, error) { +func (p *parser) callonMultipleTagRanges7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement113() + return p.cur.onMultipleTagRanges7(stack["other"]) } -func (c *current) onDoubleQuoteMarkedTextElement115() (interface{}, error) { - return types.NewSymbol("(TM)") +func (c *current) onMultipleTagRanges1(first, others interface{}) (interface{}, error) { + return append([]interface{}{first}, others.([]interface{})...), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement115() (interface{}, error) { +func (p *parser) callonMultipleTagRanges1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement115() + return p.cur.onMultipleTagRanges1(stack["first"], stack["others"]) } -func (c *current) onDoubleQuoteMarkedTextElement117() (interface{}, error) { - return types.NewSymbol("(R)") +func (c *current) onTagRange2(tag interface{}) (interface{}, error) { + return types.NewTagRange(tag.(string), true) } -func (p *parser) callonDoubleQuoteMarkedTextElement117() (interface{}, error) { +func (p *parser) callonTagRange2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement117() + return p.cur.onTagRange2(stack["tag"]) } -func (c *current) onDoubleQuoteMarkedTextElement119() (interface{}, error) { - return types.NewSymbol("...") +func (c *current) onTagRange7(tag interface{}) (interface{}, error) { + return types.NewTagRange(tag.(string), false) } -func (p *parser) callonDoubleQuoteMarkedTextElement119() (interface{}, error) { +func (p *parser) callonTagRange7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement119() + return p.cur.onTagRange7(stack["tag"]) } -func (c *current) onDoubleQuoteMarkedTextElement121() (interface{}, error) { - return types.NewSymbol("->") +func (c *current) onTagWildcard4() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement121() (interface{}, error) { +func (p *parser) callonTagWildcard4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement121() + return p.cur.onTagWildcard4() } -func (c *current) onDoubleQuoteMarkedTextElement125() (bool, error) { - return c.isPreceededBySpace(), nil +func (c *current) onTagWildcard7(stars interface{}) (bool, error) { + + // use a predicate to make sure that only `*` and `**` are allowed + return len(stars.(string)) <= 2, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement125() (bool, error) { +func (p *parser) callonTagWildcard7() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement125() + return p.cur.onTagWildcard7(stack["stars"]) } -func (c *current) onDoubleQuoteMarkedTextElement128() (interface{}, error) { - return string(c.text), nil +func (c *current) onTagWildcard1(stars interface{}) (interface{}, error) { + return stars, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement128() (interface{}, error) { +func (p *parser) callonTagWildcard1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement128() + return p.cur.onTagWildcard1(stack["stars"]) } -func (c *current) onDoubleQuoteMarkedTextElement132() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onIncludedFileLine8() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement132() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMarkedTextElement132() -} - -func (c *current) onDoubleQuoteMarkedTextElement123() (interface{}, error) { - return types.NewSymbol(" -- ") - -} - -func (p *parser) callonDoubleQuoteMarkedTextElement123() (interface{}, error) { +func (p *parser) callonIncludedFileLine8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement123() + return p.cur.onIncludedFileLine8() } -func (c *current) onDoubleQuoteMarkedTextElement141() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onIncludedFileLine1(content interface{}) (interface{}, error) { + return types.NewIncludedFileLine(content.([]interface{})) } -func (p *parser) callonDoubleQuoteMarkedTextElement141() (bool, error) { +func (p *parser) callonIncludedFileLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement141() + return p.cur.onIncludedFileLine1(stack["content"]) } -func (c *current) onDoubleQuoteMarkedTextElement146() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onIncludedFileStartTag5() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement146() (interface{}, error) { +func (p *parser) callonIncludedFileStartTag5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement146() + return p.cur.onIncludedFileStartTag5() } -func (c *current) onDoubleQuoteMarkedTextElement139() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onIncludedFileStartTag1(tag interface{}) (interface{}, error) { + return types.NewIncludedFileStartTag(tag.(string)) } -func (p *parser) callonDoubleQuoteMarkedTextElement139() (interface{}, error) { +func (p *parser) callonIncludedFileStartTag1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement139() + return p.cur.onIncludedFileStartTag1(stack["tag"]) } -func (c *current) onDoubleQuoteMarkedTextElement153() (interface{}, error) { - return types.NewSymbol("<-") - +func (c *current) onIncludedFileEndTag5() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement153() (interface{}, error) { +func (p *parser) callonIncludedFileEndTag5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement153() + return p.cur.onIncludedFileEndTag5() } -func (c *current) onDoubleQuoteMarkedTextElement155() (interface{}, error) { - return types.NewSymbol("=>") +func (c *current) onIncludedFileEndTag1(tag interface{}) (interface{}, error) { + return types.NewIncludedFileEndTag(tag.(string)) } -func (p *parser) callonDoubleQuoteMarkedTextElement155() (interface{}, error) { +func (p *parser) callonIncludedFileEndTag1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement155() + return p.cur.onIncludedFileEndTag1(stack["tag"]) } -func (c *current) onDoubleQuoteMarkedTextElement157() (interface{}, error) { - return types.NewSymbol("<=") +func (c *current) onDocumentFragment1(attributes, element interface{}) (interface{}, error) { + c.disableFrontMatterRule() // not allowed as soon as a single element is found + c.disableDocumentHeaderRule() // not allowed anymore, based on element that was found + + if element, ok := element.(types.WithAttributes); ok && attributes != nil { + element.AddAttributes(attributes.(types.Attributes)) + } + return element, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement157() (interface{}, error) { +func (p *parser) callonDocumentFragment1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement157() + return p.cur.onDocumentFragment1(stack["attributes"], stack["element"]) } -func (c *current) onDoubleQuoteMarkedTextElement101() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onRawLine6() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement101() (interface{}, error) { +func (p *parser) callonRawLine6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement101() + return p.cur.onRawLine6() } -func (c *current) onDoubleQuoteMarkedTextElement159() (interface{}, error) { - return types.NewSymbol("\"`") +func (c *current) onRawLine1(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonDoubleQuoteMarkedTextElement159() (interface{}, error) { +func (p *parser) callonRawLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement159() + return p.cur.onRawLine1(stack["content"]) } -func (c *current) onDoubleQuoteMarkedTextElement161() (interface{}, error) { - return types.NewSymbol("`\"") +func (c *current) onDelimitedBlockElements1(elements interface{}) (interface{}, error) { + return elements, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement161() (interface{}, error) { +func (p *parser) callonDelimitedBlockElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement161() + return p.cur.onDelimitedBlockElements1(stack["elements"]) } -func (c *current) onDoubleQuoteMarkedTextElement163() (interface{}, error) { - return types.NewSymbol("'`") - +func (c *current) onAdmonitionKind2() (interface{}, error) { + return types.Tip, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement163() (interface{}, error) { +func (p *parser) callonAdmonitionKind2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement163() + return p.cur.onAdmonitionKind2() } -func (c *current) onDoubleQuoteMarkedTextElement165() (interface{}, error) { - return types.NewSymbol("`'") - +func (c *current) onAdmonitionKind4() (interface{}, error) { + return types.Note, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement165() (interface{}, error) { +func (p *parser) callonAdmonitionKind4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement165() + return p.cur.onAdmonitionKind4() } -func (c *current) onDoubleQuoteMarkedTextElement167() (interface{}, error) { - return types.NewSymbol("(C)") - +func (c *current) onAdmonitionKind6() (interface{}, error) { + return types.Important, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement167() (interface{}, error) { +func (p *parser) callonAdmonitionKind6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement167() + return p.cur.onAdmonitionKind6() } -func (c *current) onDoubleQuoteMarkedTextElement169() (interface{}, error) { - return types.NewSymbol("(TM)") - +func (c *current) onAdmonitionKind8() (interface{}, error) { + return types.Warning, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement169() (interface{}, error) { +func (p *parser) callonAdmonitionKind8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement169() + return p.cur.onAdmonitionKind8() } -func (c *current) onDoubleQuoteMarkedTextElement171() (interface{}, error) { - return types.NewSymbol("(R)") - +func (c *current) onAdmonitionKind10() (interface{}, error) { + return types.Caution, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement171() (interface{}, error) { +func (p *parser) callonAdmonitionKind10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement171() + return p.cur.onAdmonitionKind10() } -func (c *current) onDoubleQuoteMarkedTextElement173() (interface{}, error) { - return types.NewSymbol("...") +func (c *current) onAttributeDeclaration9(value interface{}) (interface{}, error) { + return value, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement173() (interface{}, error) { +func (p *parser) callonAttributeDeclaration9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement173() + return p.cur.onAttributeDeclaration9(stack["value"]) } -func (c *current) onDoubleQuoteMarkedTextElement177() (bool, error) { - return c.isPreceededBySpace(), nil +func (c *current) onAttributeDeclaration1(name, value interface{}) (interface{}, error) { + return types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace), string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement177() (bool, error) { +func (p *parser) callonAttributeDeclaration1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement177() + return p.cur.onAttributeDeclaration1(stack["name"], stack["value"]) } -func (c *current) onDoubleQuoteMarkedTextElement180() (interface{}, error) { +func (c *current) onAttributeName1() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement180() (interface{}, error) { +func (p *parser) callonAttributeName1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement180() + return p.cur.onAttributeName1() } -func (c *current) onDoubleQuoteMarkedTextElement184() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onAttributeDeclarationValue7(elements interface{}) (interface{}, error) { + return elements, nil + } -func (p *parser) callonDoubleQuoteMarkedTextElement184() (interface{}, error) { +func (p *parser) callonAttributeDeclarationValue7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement184() + return p.cur.onAttributeDeclarationValue7(stack["elements"]) } -func (c *current) onDoubleQuoteMarkedTextElement175() (interface{}, error) { - return types.NewSymbol(" -- ") +func (c *current) onAttributeDeclarationValue1(elements, otherElements interface{}) (interface{}, error) { + if otherElements, ok := otherElements.([]interface{}); ok { + return types.Reduce(append(elements.([]interface{}), otherElements...), strings.TrimSpace), nil + } + return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement175() (interface{}, error) { +func (p *parser) callonAttributeDeclarationValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement175() + return p.cur.onAttributeDeclarationValue1(stack["elements"], stack["otherElements"]) } -func (c *current) onDoubleQuoteMarkedTextElement193() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onAttributeDeclarationValueElements1(elements interface{}) (interface{}, error) { + return elements.([]interface{}), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement193() (bool, error) { +func (p *parser) callonAttributeDeclarationValueElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement193() + return p.cur.onAttributeDeclarationValueElements1(stack["elements"]) } -func (c *current) onDoubleQuoteMarkedTextElement198() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onAttributeDeclarationValueElement12() (interface{}, error) { + return types.NewStringElement(string(c.text)) + } -func (p *parser) callonDoubleQuoteMarkedTextElement198() (interface{}, error) { +func (p *parser) callonAttributeDeclarationValueElement12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement198() + return p.cur.onAttributeDeclarationValueElement12() } -func (c *current) onDoubleQuoteMarkedTextElement191() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onAttributeDeclarationValueElement17() (interface{}, error) { + // standalone '{' + return types.NewStringElement(string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement191() (interface{}, error) { +func (p *parser) callonAttributeDeclarationValueElement17() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement191() + return p.cur.onAttributeDeclarationValueElement17() } -func (c *current) onDoubleQuoteMarkedTextElement205() (interface{}, error) { - return types.NewSymbol("->") +func (c *current) onAttributeDeclarationValueElement1(element interface{}) (interface{}, error) { + + return element, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement205() (interface{}, error) { +func (p *parser) callonAttributeDeclarationValueElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement205() + return p.cur.onAttributeDeclarationValueElement1(stack["element"]) } -func (c *current) onDoubleQuoteMarkedTextElement207() (interface{}, error) { - return types.NewSymbol("<-") +func (c *current) onAttributeReset2(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement207() (interface{}, error) { +func (p *parser) callonAttributeReset2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement207() + return p.cur.onAttributeReset2(stack["name"]) } -func (c *current) onDoubleQuoteMarkedTextElement209() (interface{}, error) { - return types.NewSymbol("=>") +func (c *current) onAttributeReset11(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement209() (interface{}, error) { +func (p *parser) callonAttributeReset11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement209() + return p.cur.onAttributeReset11(stack["name"]) } -func (c *current) onDoubleQuoteMarkedTextElement211() (interface{}, error) { - return types.NewSymbol("<=") +func (c *current) onBlockAttributes5(anchor interface{}) (interface{}, error) { + return anchor, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement211() (interface{}, error) { +func (p *parser) callonBlockAttributes5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement211() + return p.cur.onBlockAttributes5(stack["anchor"]) } -func (c *current) onDoubleQuoteMarkedTextElement213() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char +func (c *current) onBlockAttributes14(title interface{}) (interface{}, error) { + return title, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement213() (interface{}, error) { +func (p *parser) callonBlockAttributes14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement213() + return p.cur.onBlockAttributes14(stack["title"]) } -func (c *current) onDoubleQuoteMarkedTextElement219() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) +func (c *current) onBlockAttributes23(attributes interface{}) (interface{}, error) { + return attributes, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement219() (interface{}, error) { +func (p *parser) callonBlockAttributes23() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement219() + return p.cur.onBlockAttributes23(stack["attributes"]) } -func (c *current) onDoubleQuoteMarkedTextElement227() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil +func (c *current) onBlockAttributes1(attributes interface{}) (interface{}, error) { + // c.unsetCurrentSubstitution() + return types.MergeAttributes(attributes.([]interface{})...) } -func (p *parser) callonDoubleQuoteMarkedTextElement227() (bool, error) { +func (p *parser) callonBlockAttributes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement227() + return p.cur.onBlockAttributes1(stack["attributes"]) } -func (c *current) onDoubleQuoteMarkedTextElement236() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onInlineAttributes6(attribute interface{}) (interface{}, error) { + return attribute, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement236() (interface{}, error) { +func (p *parser) callonInlineAttributes6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement236() + return p.cur.onInlineAttributes6(stack["attribute"]) } -func (c *current) onDoubleQuoteMarkedTextElement240() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineAttributes1(attributes interface{}) (interface{}, error) { + return types.NewAttributes(attributes.([]interface{})...) } -func (p *parser) callonDoubleQuoteMarkedTextElement240() (interface{}, error) { +func (p *parser) callonInlineAttributes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement240() + return p.cur.onInlineAttributes1(stack["attributes"]) } -func (c *current) onDoubleQuoteMarkedTextElement246() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references +func (c *current) onLegacyElementID9() (interface{}, error) { + // spaces, commas and dots are allowed in this syntax return types.NewStringElement(string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement246() (interface{}, error) { +func (p *parser) callonLegacyElementID9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement246() + return p.cur.onLegacyElementID9() } -func (c *current) onDoubleQuoteMarkedTextElement255() (interface{}, error) { - return string(c.text), nil +func (c *current) onLegacyElementID14() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement255() (interface{}, error) { +func (p *parser) callonLegacyElementID14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement255() + return p.cur.onLegacyElementID14() } -func (c *current) onDoubleQuoteMarkedTextElement251(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onLegacyElementID5(elements interface{}) (interface{}, error) { + return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement251() (interface{}, error) { +func (p *parser) callonLegacyElementID5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement251(stack["name"]) + return p.cur.onLegacyElementID5(stack["elements"]) } -func (c *current) onDoubleQuoteMarkedTextElement265() (interface{}, error) { - return string(c.text), nil +func (c *current) onLegacyElementID1(id interface{}) (interface{}, error) { + return types.NewIDAttribute(id) } -func (p *parser) callonDoubleQuoteMarkedTextElement265() (interface{}, error) { +func (p *parser) callonLegacyElementID1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement265() + return p.cur.onLegacyElementID1(stack["id"]) } -func (c *current) onDoubleQuoteMarkedTextElement261(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - +func (c *current) onShortHandTitle12() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDoubleQuoteMarkedTextElement261() (interface{}, error) { +func (p *parser) callonShortHandTitle12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement261(stack["name"]) + return p.cur.onShortHandTitle12() } -func (c *current) onDoubleQuoteMarkedTextElement271() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onShortHandTitle1(elements interface{}) (interface{}, error) { + return types.NewTitleAttribute(types.Reduce(elements, strings.TrimSpace)) } -func (p *parser) callonDoubleQuoteMarkedTextElement271() (interface{}, error) { +func (p *parser) callonShortHandTitle1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement271() + return p.cur.onShortHandTitle1(stack["elements"]) } -func (c *current) onDoubleQuoteMarkedTextElement232(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onLongHandAttributes1(firstPositionalAttributes, otherAttributes interface{}) (interface{}, error) { + attributes := []interface{}{} + if firstPositionalAttributes != nil { + attributes = append(attributes, firstPositionalAttributes.([]interface{})...) + } + if len(otherAttributes.([]interface{})) > 0 { + attributes = append(attributes, otherAttributes.([]interface{})...) + } + return types.NewAttributes(attributes...) } -func (p *parser) callonDoubleQuoteMarkedTextElement232() (interface{}, error) { +func (p *parser) callonLongHandAttributes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement232(stack["id"], stack["label"]) + return p.cur.onLongHandAttributes1(stack["firstPositionalAttributes"], stack["otherAttributes"]) } -func (c *current) onDoubleQuoteMarkedTextElement278() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onFirstPositionalAttributes8(extra interface{}) (interface{}, error) { + return extra, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement278() (interface{}, error) { +func (p *parser) callonFirstPositionalAttributes8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement278() + return p.cur.onFirstPositionalAttributes8(stack["extra"]) } -func (c *current) onDoubleQuoteMarkedTextElement274(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onFirstPositionalAttributes24(main, extras interface{}) (bool, error) { + // make sure there was a match + return main != nil || len(extras.([]interface{})) > 0, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement274() (interface{}, error) { +func (p *parser) callonFirstPositionalAttributes24() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement274(stack["id"]) + return p.cur.onFirstPositionalAttributes24(stack["main"], stack["extras"]) } -func (c *current) onDoubleQuoteMarkedTextElement230() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onFirstPositionalAttributes1(main, extras interface{}) (interface{}, error) { + attrs := []interface{}{} + if main != nil { + attrs = append(attrs, main) + } + if len(extras.([]interface{})) > 0 { + attrs = append(attrs, extras.([]interface{})...) + } + return attrs, nil } -func (p *parser) callonDoubleQuoteMarkedTextElement230() (interface{}, error) { +func (p *parser) callonFirstPositionalAttributes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement230() + return p.cur.onFirstPositionalAttributes1(stack["main"], stack["extras"]) } -func (c *current) onDoubleQuoteMarkedTextElement282() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onShortHandIDAttribute1(id interface{}) (interface{}, error) { + return types.NewIDAttribute(id) } -func (p *parser) callonDoubleQuoteMarkedTextElement282() (interface{}, error) { +func (p *parser) callonShortHandIDAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement282() + return p.cur.onShortHandIDAttribute1(stack["id"]) } -func (c *current) onDoubleQuoteMarkedTextElement225(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onShortHandAttribute1(value interface{}) (interface{}, error) { + return types.NewPositionalAttribute(value) } -func (p *parser) callonDoubleQuoteMarkedTextElement225() (interface{}, error) { +func (p *parser) callonShortHandAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement225(stack["element"]) -} - -func (c *current) onDoubleQuoteMarkedTextElement289() (interface{}, error) { - return string(c.text), nil + return p.cur.onShortHandAttribute1(stack["value"]) } -func (p *parser) callonDoubleQuoteMarkedTextElement289() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDoubleQuoteMarkedTextElement289() -} +func (c *current) onShortHandDotRoleAttribute1(role interface{}) (interface{}, error) { + return types.NewRoleAttribute(role) -func (c *current) onDoubleQuoteMarkedTextElement285(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonDoubleQuoteMarkedTextElement285() (interface{}, error) { +func (p *parser) callonShortHandDotRoleAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement285(stack["ref"]) + return p.cur.onShortHandDotRoleAttribute1(stack["role"]) } -func (c *current) onDoubleQuoteMarkedTextElement297() (interface{}, error) { - return string(c.text), nil +func (c *current) onShortHandOptionAttribute1(option interface{}) (interface{}, error) { + return types.NewOptionAttribute(option) } -func (p *parser) callonDoubleQuoteMarkedTextElement297() (interface{}, error) { +func (p *parser) callonShortHandOptionAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement297() + return p.cur.onShortHandOptionAttribute1(stack["option"]) } -func (c *current) onDoubleQuoteMarkedTextElement294() (interface{}, error) { - // or a marked delimiter when immediately followed by an alphanum (ie, in the middle of some text) +func (c *current) onShortHandAttributeValue10() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement294() (interface{}, error) { +func (p *parser) callonShortHandAttributeValue10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement294() + return p.cur.onShortHandAttributeValue10() } -func (c *current) onDoubleQuoteMarkedTextElement1(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onShortHandAttributeValue14() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonDoubleQuoteMarkedTextElement1() (interface{}, error) { +func (p *parser) callonShortHandAttributeValue14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDoubleQuoteMarkedTextElement1(stack["element"]) + return p.cur.onShortHandAttributeValue14() } -func (c *current) onQuotedTextInDoubleMarkedBoldText2(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onShortHandAttributeValue4(elements interface{}) (interface{}, error) { + return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonQuotedTextInDoubleMarkedBoldText2() (interface{}, error) { +func (p *parser) callonShortHandAttributeValue4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuotedTextInDoubleMarkedBoldText2(stack["element"]) + return p.cur.onShortHandAttributeValue4(stack["elements"]) } -func (c *current) onQuotedTextInDoubleMarkedBoldText13(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) +func (c *current) onPositionalAttribute2(value interface{}) (interface{}, error) { + // TODO: see if we can just use `((",")? / &"]")` instead (ie, no need to check for Space*) + return types.NewPositionalAttribute(value) } -func (p *parser) callonQuotedTextInDoubleMarkedBoldText13() (interface{}, error) { +func (p *parser) callonPositionalAttribute2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuotedTextInDoubleMarkedBoldText13(stack["attributes"], stack["text"]) + return p.cur.onPositionalAttribute2(stack["value"]) } -func (c *current) onSingleQuoteMarkedText1(elements interface{}) (interface{}, error) { - - return types.NewQuotedText(types.SingleQuoteMarked, elements.([]interface{})) +func (c *current) onPositionalAttribute27(value interface{}) (bool, error) { + // here we can't rely on `c.text` if the content is empty + // (in such a case, `c.text` contains the char sequence of the previous + // rule that matched) + return !types.AllNilEntries(value.([]interface{})), nil } -func (p *parser) callonSingleQuoteMarkedText1() (interface{}, error) { +func (p *parser) callonPositionalAttribute27() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedText1(stack["elements"]) + return p.cur.onPositionalAttribute27(stack["value"]) } -func (c *current) onSingleQuoteMarkedTextElements7() (interface{}, error) { - return string(c.text), nil +func (c *current) onPositionalAttribute14(value interface{}) (interface{}, error) { + + return types.NewPositionalAttribute(nil) } -func (p *parser) callonSingleQuoteMarkedTextElements7() (interface{}, error) { +func (p *parser) callonPositionalAttribute14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElements7() + return p.cur.onPositionalAttribute14(stack["value"]) } -func (c *current) onSingleQuoteMarkedTextElements12(elements interface{}) (bool, error) { - return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces +func (c *current) onNamedAttribute1(key, value interface{}) (interface{}, error) { + return types.NewNamedAttribute(key.(string), value) } -func (p *parser) callonSingleQuoteMarkedTextElements12() (bool, error) { +func (p *parser) callonNamedAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElements12(stack["elements"]) + return p.cur.onNamedAttribute1(stack["key"], stack["value"]) } -func (c *current) onSingleQuoteMarkedTextElements1(elements interface{}) (interface{}, error) { - return elements, nil +func (c *current) onNamedAttributeKey1() (interface{}, error) { + return strings.TrimSpace(string(c.text)), nil } -func (p *parser) callonSingleQuoteMarkedTextElements1() (interface{}, error) { +func (p *parser) callonNamedAttributeKey1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElements1(stack["elements"]) + return p.cur.onNamedAttributeKey1() } -func (c *current) onSingleQuoteMarkedTextElement8() (interface{}, error) { - return string(c.text), nil +func (c *current) onAttributeValue1(value interface{}) (interface{}, error) { + return value, nil } -func (p *parser) callonSingleQuoteMarkedTextElement8() (interface{}, error) { +func (p *parser) callonAttributeValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement8() + return p.cur.onAttributeValue1(stack["value"]) } -func (c *current) onSingleQuoteMarkedTextElement2() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onSingleQuotedAttributeValue1(content interface{}) (interface{}, error) { + return content, nil } -func (p *parser) callonSingleQuoteMarkedTextElement2() (interface{}, error) { +func (p *parser) callonSingleQuotedAttributeValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement2() + return p.cur.onSingleQuotedAttributeValue1(stack["content"]) } -func (c *current) onSingleQuoteMarkedTextElement11() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil - -} +func (c *current) onSingleQuotedAttributeValueContent10() (interface{}, error) { -func (p *parser) callonSingleQuoteMarkedTextElement11() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMarkedTextElement11() -} + return types.NewStringElement(`'`) // escaped single quote -func (c *current) onSingleQuoteMarkedTextElement15() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement15() (interface{}, error) { +func (p *parser) callonSingleQuotedAttributeValueContent10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement15() + return p.cur.onSingleQuotedAttributeValueContent10() } -func (c *current) onSingleQuoteMarkedTextElement21() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onSingleQuotedAttributeValueContent15() (interface{}, error) { + // quoted string delimiters or standalone backslash + return types.NewStringElement(string(c.text)) // keep as-is for now + } -func (p *parser) callonSingleQuoteMarkedTextElement21() (interface{}, error) { +func (p *parser) callonSingleQuotedAttributeValueContent15() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement21() + return p.cur.onSingleQuotedAttributeValueContent15() } -func (c *current) onSingleQuoteMarkedTextElement28() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil +func (c *current) onSingleQuotedAttributeValueContent17() (interface{}, error) { + // = and , signs are allowed within '' quoted values + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement28() (bool, error) { +func (p *parser) callonSingleQuotedAttributeValueContent17() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement28() + return p.cur.onSingleQuotedAttributeValueContent17() } -func (c *current) onSingleQuoteMarkedTextElement35() (interface{}, error) { - return string(c.text), nil +func (c *current) onSingleQuotedAttributeValueContent1(elements interface{}) (interface{}, error) { + return types.Reduce(elements), nil } -func (p *parser) callonSingleQuoteMarkedTextElement35() (interface{}, error) { +func (p *parser) callonSingleQuotedAttributeValueContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement35() + return p.cur.onSingleQuotedAttributeValueContent1(stack["elements"]) } -func (c *current) onSingleQuoteMarkedTextElement47() (interface{}, error) { - return string(c.text), nil +func (c *current) onDoubleQuotedAttributeValue1(content interface{}) (interface{}, error) { + return content, nil } -func (p *parser) callonSingleQuoteMarkedTextElement47() (interface{}, error) { +func (p *parser) callonDoubleQuotedAttributeValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement47() + return p.cur.onDoubleQuotedAttributeValue1(stack["content"]) } -func (c *current) onSingleQuoteMarkedTextElement49() (interface{}, error) { +func (c *current) onDoubleQuotedAttributeValueContent10() (interface{}, error) { - return strconv.Atoi(string(c.text)) + return types.NewStringElement(`"`) // escaped double quote } -func (p *parser) callonSingleQuoteMarkedTextElement49() (interface{}, error) { +func (p *parser) callonDoubleQuotedAttributeValueContent10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement49() + return p.cur.onDoubleQuotedAttributeValueContent10() } -func (c *current) onSingleQuoteMarkedTextElement42(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDoubleQuotedAttributeValueContent16() (interface{}, error) { + // quoted string delimiters or standalone backslash or standalone backtick + return types.NewStringElement(string(c.text)) // keep as-is for now } -func (p *parser) callonSingleQuoteMarkedTextElement42() (interface{}, error) { +func (p *parser) callonDoubleQuotedAttributeValueContent16() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement42(stack["start"]) + return p.cur.onDoubleQuotedAttributeValueContent16() } -func (c *current) onSingleQuoteMarkedTextElement31(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +func (c *current) onDoubleQuotedAttributeValueContent18() (interface{}, error) { + // = and , signs are allowed within " quoted values + return types.NewStringElement(string(c.text)) + } -func (p *parser) callonSingleQuoteMarkedTextElement31() (interface{}, error) { +func (p *parser) callonDoubleQuotedAttributeValueContent18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement31(stack["name"], stack["start"]) + return p.cur.onDoubleQuotedAttributeValueContent18() } -func (c *current) onSingleQuoteMarkedTextElement57() (interface{}, error) { - return string(c.text), nil +func (c *current) onDoubleQuotedAttributeValueContent1(elements interface{}) (interface{}, error) { + return types.Reduce(elements), nil } -func (p *parser) callonSingleQuoteMarkedTextElement57() (interface{}, error) { +func (p *parser) callonDoubleQuotedAttributeValueContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement57() + return p.cur.onDoubleQuotedAttributeValueContent1(stack["elements"]) } -func (c *current) onSingleQuoteMarkedTextElement69() (interface{}, error) { +func (c *current) onUnquotedAttributeValue12() (interface{}, error) { + // not within brackets and stop on space and quotation marks (`"') return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement69() (interface{}, error) { +func (p *parser) callonUnquotedAttributeValue12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement69() + return p.cur.onUnquotedAttributeValue12() } -func (c *current) onSingleQuoteMarkedTextElement71() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onUnquotedAttributeValue18() (interface{}, error) { + // standalone characters not used in quotation marks + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement71() (interface{}, error) { +func (p *parser) callonUnquotedAttributeValue18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement71() + return p.cur.onUnquotedAttributeValue18() } -func (c *current) onSingleQuoteMarkedTextElement64(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onUnquotedAttributeValue1(elements interface{}) (interface{}, error) { + return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonSingleQuoteMarkedTextElement64() (interface{}, error) { +func (p *parser) callonUnquotedAttributeValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement64(stack["start"]) + return p.cur.onUnquotedAttributeValue1(stack["elements"]) } -func (c *current) onSingleQuoteMarkedTextElement53(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +func (c *current) onAttributeReference3() (bool, error) { + return c.isSubstitutionEnabled(AttributeRefs), nil + } -func (p *parser) callonSingleQuoteMarkedTextElement53() (interface{}, error) { +func (p *parser) callonAttributeReference3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement53(stack["name"], stack["start"]) + return p.cur.onAttributeReference3() } -func (c *current) onSingleQuoteMarkedTextElement79() (interface{}, error) { - return string(c.text), nil +func (c *current) onAttributeReference1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonSingleQuoteMarkedTextElement79() (interface{}, error) { +func (p *parser) callonAttributeReference1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement79() + return p.cur.onAttributeReference1(stack["element"]) } -func (c *current) onSingleQuoteMarkedTextElement75(name interface{}) (interface{}, error) { +func (c *current) onAttributeReferenceValue2(name interface{}) (interface{}, error) { log.Debug("matching escaped attribute reference") // return types.NewStringElement("{"+name.(string)+"}") @@ -103755,3359 +17265,3393 @@ func (c *current) onSingleQuoteMarkedTextElement75(name interface{}) (interface{ } -func (p *parser) callonSingleQuoteMarkedTextElement75() (interface{}, error) { +func (p *parser) callonAttributeReferenceValue2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement75(stack["name"]) + return p.cur.onAttributeReferenceValue2(stack["name"]) } -func (c *current) onSingleQuoteMarkedTextElement89() (interface{}, error) { - return string(c.text), nil - -} - -func (p *parser) callonSingleQuoteMarkedTextElement89() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onSingleQuoteMarkedTextElement89() -} - -func (c *current) onSingleQuoteMarkedTextElement85(name interface{}) (interface{}, error) { +func (c *current) onAttributeReferenceValue9(name interface{}) (interface{}, error) { return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement85() (interface{}, error) { +func (p *parser) callonAttributeReferenceValue9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement85(stack["name"]) + return p.cur.onAttributeReferenceValue9(stack["name"]) } -func (c *current) onSingleQuoteMarkedTextElement26(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onCounterSubstitution11(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement26() (interface{}, error) { +func (p *parser) callonCounterSubstitution11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement26(stack["element"]) + return p.cur.onCounterSubstitution11(stack["name"], stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement100() (interface{}, error) { - return types.NewSymbol("\"`") - +func (c *current) onCounterSubstitution21(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement100() (interface{}, error) { +func (p *parser) callonCounterSubstitution21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement100() + return p.cur.onCounterSubstitution21(stack["name"], stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement102() (interface{}, error) { - return types.NewSymbol("`\"") +func (c *current) onCounterStart6() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement102() (interface{}, error) { +func (p *parser) callonCounterStart6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement102() + return p.cur.onCounterStart6() } -func (c *current) onSingleQuoteMarkedTextElement104() (interface{}, error) { - return types.NewSymbol("'`") +func (c *current) onCounterStart8() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement104() (interface{}, error) { +func (p *parser) callonCounterStart8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement104() + return p.cur.onCounterStart8() } -func (c *current) onSingleQuoteMarkedTextElement106() (interface{}, error) { - return types.NewSymbol("`'") +func (c *current) onCounterStart1(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonSingleQuoteMarkedTextElement106() (interface{}, error) { +func (p *parser) callonCounterStart1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement106() + return p.cur.onCounterStart1(stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement108() (interface{}, error) { - return types.NewSymbol("(C)") +func (c *current) onBlankLine1() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonSingleQuoteMarkedTextElement108() (interface{}, error) { +func (p *parser) callonBlankLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement108() + return p.cur.onBlankLine1() } -func (c *current) onSingleQuoteMarkedTextElement110() (interface{}, error) { - return types.NewSymbol("(TM)") +func (c *current) onInternalCrossReference2(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) } -func (p *parser) callonSingleQuoteMarkedTextElement110() (interface{}, error) { +func (p *parser) callonInternalCrossReference2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement110() + return p.cur.onInternalCrossReference2(stack["id"], stack["label"]) } -func (c *current) onSingleQuoteMarkedTextElement112() (interface{}, error) { - return types.NewSymbol("(R)") +func (c *current) onInternalCrossReference13(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) } -func (p *parser) callonSingleQuoteMarkedTextElement112() (interface{}, error) { +func (p *parser) callonInternalCrossReference13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement112() + return p.cur.onInternalCrossReference13(stack["id"]) } -func (c *current) onSingleQuoteMarkedTextElement114() (interface{}, error) { - return types.NewSymbol("...") +func (c *current) onExternalCrossReference1(url, attributes interface{}) (interface{}, error) { + return types.NewExternalCrossReference(url.(*types.Location), attributes.(types.Attributes)) } -func (p *parser) callonSingleQuoteMarkedTextElement114() (interface{}, error) { +func (p *parser) callonExternalCrossReference1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement114() + return p.cur.onExternalCrossReference1(stack["url"], stack["attributes"]) } -func (c *current) onSingleQuoteMarkedTextElement116() (interface{}, error) { - return types.NewSymbol("->") +func (c *current) onCrossReferenceLabel3() (interface{}, error) { + // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement116() (interface{}, error) { +func (p *parser) callonCrossReferenceLabel3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement116() + return p.cur.onCrossReferenceLabel3() } -func (c *current) onSingleQuoteMarkedTextElement120() (bool, error) { - return c.isPreceededBySpace(), nil +func (c *current) onCrossReferenceLabel9() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement120() (bool, error) { +func (p *parser) callonCrossReferenceLabel9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement120() + return p.cur.onCrossReferenceLabel9() } -func (c *current) onSingleQuoteMarkedTextElement123() (interface{}, error) { - return string(c.text), nil +func (c *current) onBlockDelimiter1(delimiter interface{}) (interface{}, error) { + return delimiter, nil } -func (p *parser) callonSingleQuoteMarkedTextElement123() (interface{}, error) { +func (p *parser) callonBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement123() + return p.cur.onBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement127() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onCommentBlockDelimiter4() (interface{}, error) { + // sequence of 4 "/" chars or more return string(c.text), nil + } -func (p *parser) callonSingleQuoteMarkedTextElement127() (interface{}, error) { +func (p *parser) callonCommentBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement127() + return p.cur.onCommentBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement118() (interface{}, error) { - return types.NewSymbol(" -- ") +func (c *current) onCommentBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Comment, len(delimiter.(string)), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement118() (interface{}, error) { +func (p *parser) callonCommentBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement118() + return p.cur.onCommentBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement136() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onExampleBlockDelimiter4() (interface{}, error) { + // sequence of 4 "=" chars or more + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement136() (bool, error) { +func (p *parser) callonExampleBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement136() + return p.cur.onExampleBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement141() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExampleBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Example, len(delimiter.(string)), string(c.text)) + } -func (p *parser) callonSingleQuoteMarkedTextElement141() (interface{}, error) { +func (p *parser) callonExampleBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement141() + return p.cur.onExampleBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement134() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onFencedBlockDelimiter4() (interface{}, error) { + // sequence of 3 "`" chars or more + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement134() (interface{}, error) { +func (p *parser) callonFencedBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement134() + return p.cur.onFencedBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement148() (interface{}, error) { - return types.NewSymbol("<-") +func (c *current) onFencedBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Fenced, len(delimiter.(string)), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement148() (interface{}, error) { +func (p *parser) callonFencedBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement148() + return p.cur.onFencedBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement150() (interface{}, error) { - return types.NewSymbol("=>") - +func (c *current) onMarkdownCodeDelimiter1(language interface{}) (interface{}, error) { + return types.NewMarkdownCodeBlockDelimiter(language.(string), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement150() (interface{}, error) { +func (p *parser) callonMarkdownCodeDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement150() + return p.cur.onMarkdownCodeDelimiter1(stack["language"]) } -func (c *current) onSingleQuoteMarkedTextElement152() (interface{}, error) { - return types.NewSymbol("<=") - +func (c *current) onLanguage1() (interface{}, error) { + // exclude ` to avoid matching fenced blocks with more than 3 "`" delimter chars + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement152() (interface{}, error) { +func (p *parser) callonLanguage1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement152() + return p.cur.onLanguage1() } -func (c *current) onSingleQuoteMarkedTextElement96() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onListingBlockDelimiter4() (interface{}, error) { + // sequence of 4 "-" chars or more + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement96() (interface{}, error) { +func (p *parser) callonListingBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement96() + return p.cur.onListingBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement154() (interface{}, error) { - return types.NewSymbol("\"`") +func (c *current) onListingBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement154() (interface{}, error) { +func (p *parser) callonListingBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement154() + return p.cur.onListingBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement156() (interface{}, error) { - return types.NewSymbol("`\"") +func (c *current) onLiteralBlockDelimiter4() (interface{}, error) { + // sequence of 4 "." chars or more + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement156() (interface{}, error) { +func (p *parser) callonLiteralBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement156() + return p.cur.onLiteralBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement158() (interface{}, error) { - return types.NewSymbol("'`") +func (c *current) onLiteralBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Listing, len(delimiter.(string)), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement158() (interface{}, error) { +func (p *parser) callonLiteralBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement158() + return p.cur.onLiteralBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement160() (interface{}, error) { - return types.NewSymbol("`'") +func (c *current) onPassthroughBlockDelimiter4() (interface{}, error) { + // sequence of 4 "+" chars or more + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement160() (interface{}, error) { +func (p *parser) callonPassthroughBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement160() + return p.cur.onPassthroughBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement162() (interface{}, error) { - return types.NewSymbol("(C)") +func (c *current) onPassthroughBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Passthrough, len(delimiter.(string)), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement162() (interface{}, error) { +func (p *parser) callonPassthroughBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement162() + return p.cur.onPassthroughBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement164() (interface{}, error) { - return types.NewSymbol("(TM)") +func (c *current) onQuoteBlockDelimiter4() (interface{}, error) { + // sequence of 4 "_" chars or more + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement164() (interface{}, error) { +func (p *parser) callonQuoteBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement164() + return p.cur.onQuoteBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement166() (interface{}, error) { - return types.NewSymbol("(R)") +func (c *current) onQuoteBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Quote, len(delimiter.(string)), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement166() (interface{}, error) { +func (p *parser) callonQuoteBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement166() + return p.cur.onQuoteBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement168() (interface{}, error) { - return types.NewSymbol("...") +func (c *current) onSidebarBlockDelimiter4() (interface{}, error) { + // sequence of 4 "*" chars or more + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement168() (interface{}, error) { +func (p *parser) callonSidebarBlockDelimiter4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement168() + return p.cur.onSidebarBlockDelimiter4() } -func (c *current) onSingleQuoteMarkedTextElement172() (bool, error) { - return c.isPreceededBySpace(), nil +func (c *current) onSidebarBlockDelimiter1(delimiter interface{}) (interface{}, error) { + + return types.NewBlockDelimiter(types.Sidebar, len(delimiter.(string)), string(c.text)) } -func (p *parser) callonSingleQuoteMarkedTextElement172() (bool, error) { +func (p *parser) callonSidebarBlockDelimiter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement172() + return p.cur.onSidebarBlockDelimiter1(stack["delimiter"]) } -func (c *current) onSingleQuoteMarkedTextElement175() (interface{}, error) { +func (c *current) onDelimitedBlockRawLine6() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement175() (interface{}, error) { +func (p *parser) callonDelimitedBlockRawLine6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement175() + return p.cur.onDelimitedBlockRawLine6() } -func (c *current) onSingleQuoteMarkedTextElement179() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDelimitedBlockRawLine1(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) + } -func (p *parser) callonSingleQuoteMarkedTextElement179() (interface{}, error) { +func (p *parser) callonDelimitedBlockRawLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement179() + return p.cur.onDelimitedBlockRawLine1(stack["content"]) } -func (c *current) onSingleQuoteMarkedTextElement170() (interface{}, error) { - return types.NewSymbol(" -- ") +func (c *current) onCommentBlock1(content interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Comment, content.([]interface{})) } -func (p *parser) callonSingleQuoteMarkedTextElement170() (interface{}, error) { +func (p *parser) callonCommentBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement170() + return p.cur.onCommentBlock1(stack["content"]) } -func (c *current) onSingleQuoteMarkedTextElement188() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onCommentBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonSingleQuoteMarkedTextElement188() (bool, error) { +func (p *parser) callonCommentBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement188() + return p.cur.onCommentBlockContent2(stack["line"]) } -func (c *current) onSingleQuoteMarkedTextElement193() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExampleBlock5(start interface{}) (bool, error) { + return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) + } -func (p *parser) callonSingleQuoteMarkedTextElement193() (interface{}, error) { +func (p *parser) callonExampleBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement193() + return p.cur.onExampleBlock5(stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement186() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onExampleBlock1(start, content, end interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Example, content.([]interface{})) } -func (p *parser) callonSingleQuoteMarkedTextElement186() (interface{}, error) { +func (p *parser) callonExampleBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement186() + return p.cur.onExampleBlock1(stack["start"], stack["content"], stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement200() (interface{}, error) { - return types.NewSymbol("->") +func (c *current) onExampleBlockEndDelimiter5(end interface{}) (bool, error) { + return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement200() (interface{}, error) { +func (p *parser) callonExampleBlockEndDelimiter5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement200() + return p.cur.onExampleBlockEndDelimiter5(stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement202() (interface{}, error) { - return types.NewSymbol("<-") +func (c *current) onExampleBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonSingleQuoteMarkedTextElement202() (interface{}, error) { +func (p *parser) callonExampleBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement202() + return p.cur.onExampleBlockContent2(stack["line"]) } -func (c *current) onSingleQuoteMarkedTextElement204() (interface{}, error) { - return types.NewSymbol("=>") +func (c *current) onFencedBlock5(start interface{}) (bool, error) { + return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement204() (interface{}, error) { +func (p *parser) callonFencedBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement204() + return p.cur.onFencedBlock5(stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement206() (interface{}, error) { - return types.NewSymbol("<=") +func (c *current) onFencedBlock1(start, content, end interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Fenced, content.([]interface{})) } -func (p *parser) callonSingleQuoteMarkedTextElement206() (interface{}, error) { +func (p *parser) callonFencedBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement206() + return p.cur.onFencedBlock1(stack["start"], stack["content"], stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement208() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char +func (c *current) onFencedBlockEndDelimiter5(end interface{}) (bool, error) { + return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement208() (interface{}, error) { +func (p *parser) callonFencedBlockEndDelimiter5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement208() + return p.cur.onFencedBlockEndDelimiter5(stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement214() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) +func (c *current) onFencedBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonSingleQuoteMarkedTextElement214() (interface{}, error) { +func (p *parser) callonFencedBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement214() + return p.cur.onFencedBlockContent2(stack["line"]) } -func (c *current) onSingleQuoteMarkedTextElement222() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil +func (c *current) onListingBlock5(start interface{}) (bool, error) { + return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement222() (bool, error) { +func (p *parser) callonListingBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement222() + return p.cur.onListingBlock5(stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement231() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onListingBlock1(start, content, end interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Listing, content.([]interface{})) } -func (p *parser) callonSingleQuoteMarkedTextElement231() (interface{}, error) { +func (p *parser) callonListingBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement231() + return p.cur.onListingBlock1(stack["start"], stack["content"], stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement235() (interface{}, error) { - return string(c.text), nil +func (c *current) onListingBlockEndDelimiter5(end interface{}) (bool, error) { + return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement235() (interface{}, error) { +func (p *parser) callonListingBlockEndDelimiter5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement235() + return p.cur.onListingBlockEndDelimiter5(stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement241() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) +func (c *current) onListingBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonSingleQuoteMarkedTextElement241() (interface{}, error) { +func (p *parser) callonListingBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement241() + return p.cur.onListingBlockContent2(stack["line"]) } -func (c *current) onSingleQuoteMarkedTextElement250() (interface{}, error) { - return string(c.text), nil +func (c *current) onLiteralBlock5(start interface{}) (bool, error) { + return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement250() (interface{}, error) { +func (p *parser) callonLiteralBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement250() + return p.cur.onLiteralBlock5(stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement246(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onLiteralBlock1(start, content, end interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Literal, content.([]interface{})) } -func (p *parser) callonSingleQuoteMarkedTextElement246() (interface{}, error) { +func (p *parser) callonLiteralBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement246(stack["name"]) + return p.cur.onLiteralBlock1(stack["start"], stack["content"], stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement260() (interface{}, error) { - return string(c.text), nil +func (c *current) onLiteralBlockEndDelimiter5(end interface{}) (bool, error) { + return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement260() (interface{}, error) { +func (p *parser) callonLiteralBlockEndDelimiter5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement260() + return p.cur.onLiteralBlockEndDelimiter5(stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement256(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) +func (c *current) onLiteralBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonSingleQuoteMarkedTextElement256() (interface{}, error) { +func (p *parser) callonLiteralBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement256(stack["name"]) + return p.cur.onLiteralBlockContent2(stack["line"]) } -func (c *current) onSingleQuoteMarkedTextElement266() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onMarkdownCodeBlock1(delimiter, content interface{}) (interface{}, error) { + // Markdown code with fences is a "listing/source" block in Asciidoc + b, err := types.NewDelimitedBlock(types.Listing, content.([]interface{})) + b.AddAttributes(delimiter.(*types.BlockDelimiter).Attributes) + return b, err } -func (p *parser) callonSingleQuoteMarkedTextElement266() (interface{}, error) { +func (p *parser) callonMarkdownCodeBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement266() + return p.cur.onMarkdownCodeBlock1(stack["delimiter"], stack["content"]) } -func (c *current) onSingleQuoteMarkedTextElement227(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onMarkdownCodeBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonSingleQuoteMarkedTextElement227() (interface{}, error) { +func (p *parser) callonMarkdownCodeBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement227(stack["id"], stack["label"]) + return p.cur.onMarkdownCodeBlockContent2(stack["line"]) } -func (c *current) onSingleQuoteMarkedTextElement273() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onMarkdownQuoteBlock1(firstLine, otherLines interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.MarkdownQuote, append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonSingleQuoteMarkedTextElement273() (interface{}, error) { +func (p *parser) callonMarkdownQuoteBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement273() + return p.cur.onMarkdownQuoteBlock1(stack["firstLine"], stack["otherLines"]) } -func (c *current) onSingleQuoteMarkedTextElement269(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onMarkdownQuoteRawLine7() (interface{}, error) { + + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement269() (interface{}, error) { +func (p *parser) callonMarkdownQuoteRawLine7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement269(stack["id"]) + return p.cur.onMarkdownQuoteRawLine7() } -func (c *current) onSingleQuoteMarkedTextElement225() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onMarkdownQuoteRawLine1(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonSingleQuoteMarkedTextElement225() (interface{}, error) { +func (p *parser) callonMarkdownQuoteRawLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement225() + return p.cur.onMarkdownQuoteRawLine1(stack["content"]) } -func (c *current) onSingleQuoteMarkedTextElement277() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onMarkdownQuoteAttribution5() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSingleQuoteMarkedTextElement277() (interface{}, error) { +func (p *parser) callonMarkdownQuoteAttribution5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement277() + return p.cur.onMarkdownQuoteAttribution5() } -func (c *current) onSingleQuoteMarkedTextElement220(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onMarkdownQuoteAttribution1(author interface{}) (interface{}, error) { + return author, nil } -func (p *parser) callonSingleQuoteMarkedTextElement220() (interface{}, error) { +func (p *parser) callonMarkdownQuoteAttribution1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement220(stack["element"]) + return p.cur.onMarkdownQuoteAttribution1(stack["author"]) } -func (c *current) onSingleQuoteMarkedTextElement284() (interface{}, error) { - return string(c.text), nil +func (c *current) onPassthroughBlock5(start interface{}) (bool, error) { + return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) + } -func (p *parser) callonSingleQuoteMarkedTextElement284() (interface{}, error) { +func (p *parser) callonPassthroughBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement284() + return p.cur.onPassthroughBlock5(stack["start"]) } -func (c *current) onSingleQuoteMarkedTextElement280(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onPassthroughBlock1(start, content, end interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Passthrough, content.([]interface{})) + } -func (p *parser) callonSingleQuoteMarkedTextElement280() (interface{}, error) { +func (p *parser) callonPassthroughBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement280(stack["ref"]) + return p.cur.onPassthroughBlock1(stack["start"], stack["content"], stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement292() (interface{}, error) { - return string(c.text), nil +func (c *current) onPassthroughBlockEndDelimiter5(end interface{}) (bool, error) { + return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) } -func (p *parser) callonSingleQuoteMarkedTextElement292() (interface{}, error) { +func (p *parser) callonPassthroughBlockEndDelimiter5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement292() + return p.cur.onPassthroughBlockEndDelimiter5(stack["end"]) } -func (c *current) onSingleQuoteMarkedTextElement289() (interface{}, error) { - // or a mark delimiter when immediately followed by an alphanum (ie, in the middle of some text) - return types.NewStringElement(string(c.text)) +func (c *current) onPassthroughBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonSingleQuoteMarkedTextElement289() (interface{}, error) { +func (p *parser) callonPassthroughBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSingleQuoteMarkedTextElement289() + return p.cur.onPassthroughBlockContent2(stack["line"]) } -func (c *current) onQuotedTextInSingleQuoteMarkedText2(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onQuoteBlock5(start interface{}) (bool, error) { + return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) } -func (p *parser) callonQuotedTextInSingleQuoteMarkedText2() (interface{}, error) { +func (p *parser) callonQuoteBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuotedTextInSingleQuoteMarkedText2(stack["element"]) + return p.cur.onQuoteBlock5(stack["start"]) } -func (c *current) onQuotedTextInSingleQuoteMarkedText13(attributes, text interface{}) (interface{}, error) { - return text.(*types.QuotedText).WithAttributes(attributes) +func (c *current) onQuoteBlock1(start, content, end interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Quote, content.([]interface{})) } -func (p *parser) callonQuotedTextInSingleQuoteMarkedText13() (interface{}, error) { +func (p *parser) callonQuoteBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuotedTextInSingleQuoteMarkedText13(stack["attributes"], stack["text"]) + return p.cur.onQuoteBlock1(stack["start"], stack["content"], stack["end"]) } -func (c *current) onEscapedMarkedText5() (interface{}, error) { - return string(c.text), nil +func (c *current) onQuoteBlockEndDelimiter5(end interface{}) (bool, error) { + return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) } -func (p *parser) callonEscapedMarkedText5() (interface{}, error) { +func (p *parser) callonQuoteBlockEndDelimiter5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMarkedText5() + return p.cur.onQuoteBlockEndDelimiter5(stack["end"]) } -func (c *current) onEscapedMarkedText2(backslashes, elements interface{}) (interface{}, error) { - return types.NewEscapedQuotedText(backslashes.(string), "##", elements.([]interface{})) +func (c *current) onQuoteBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonEscapedMarkedText2() (interface{}, error) { +func (p *parser) callonQuoteBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMarkedText2(stack["backslashes"], stack["elements"]) + return p.cur.onQuoteBlockContent2(stack["line"]) } -func (c *current) onEscapedMarkedText17() (interface{}, error) { - return string(c.text), nil +func (c *current) onSidebarBlock5(start interface{}) (bool, error) { + return c.setBlockDelimiterLength(start.(*types.BlockDelimiter).Length) } -func (p *parser) callonEscapedMarkedText17() (interface{}, error) { +func (p *parser) callonSidebarBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMarkedText17() + return p.cur.onSidebarBlock5(stack["start"]) } -func (c *current) onEscapedMarkedText14(backslashes, elements interface{}) (interface{}, error) { - result := append([]interface{}{"#"}, elements.([]interface{})) - return types.NewEscapedQuotedText(backslashes.(string), "#", result) +func (c *current) onSidebarBlock1(start, content, end interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.Sidebar, content.([]interface{})) } -func (p *parser) callonEscapedMarkedText14() (interface{}, error) { +func (p *parser) callonSidebarBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMarkedText14(stack["backslashes"], stack["elements"]) + return p.cur.onSidebarBlock1(stack["start"], stack["content"], stack["end"]) } -func (c *current) onEscapedMarkedText27() (interface{}, error) { - return string(c.text), nil +func (c *current) onSidebarBlockEndDelimiter5(end interface{}) (bool, error) { + return c.matchBlockDelimiterLength(end.(*types.BlockDelimiter).Length) } -func (p *parser) callonEscapedMarkedText27() (interface{}, error) { +func (p *parser) callonSidebarBlockEndDelimiter5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMarkedText27() + return p.cur.onSidebarBlockEndDelimiter5(stack["end"]) } -func (c *current) onEscapedMarkedText24(backslashes, elements interface{}) (interface{}, error) { - return types.NewEscapedQuotedText(backslashes.(string), "#", elements.([]interface{})) +func (c *current) onSidebarBlockContent2(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonEscapedMarkedText24() (interface{}, error) { +func (p *parser) callonSidebarBlockContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedMarkedText24(stack["backslashes"], stack["elements"]) + return p.cur.onSidebarBlockContent2(stack["line"]) } -func (c *current) onSubscriptText1(element interface{}) (interface{}, error) { - // wraps a single word - return types.NewQuotedText(types.SingleQuoteSubscript, element) +func (c *current) onDocumentHeader3() (bool, error) { + return c.isDocumentHeaderAllowed(), nil } -func (p *parser) callonSubscriptText1() (interface{}, error) { +func (p *parser) callonDocumentHeader3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubscriptText1(stack["element"]) + return p.cur.onDocumentHeader3() } -func (c *current) onSubscriptTextElement3() (interface{}, error) { - // anything except spaces, EOL or '~' - return c.text, nil +func (c *current) onDocumentHeader11(extraAttrs, info, moreExtraAttrs interface{}) (bool, error) { + // at least one of title/info/extraArgs must be present + // log.Debugf("checking document header data: title=%s / info=%s / extraAttrs=%s", title, info, extraAttrs) + return info != nil || + len(extraAttrs.([]interface{})) > 0 || + len(moreExtraAttrs.([]interface{})) > 0, nil } -func (p *parser) callonSubscriptTextElement3() (interface{}, error) { +func (p *parser) callonDocumentHeader11() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubscriptTextElement3() + return p.cur.onDocumentHeader11(stack["extraAttrs"], stack["info"], stack["moreExtraAttrs"]) } -func (c *current) onEscapedSubscriptText4() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentHeader1(extraAttrs, info, moreExtraAttrs interface{}) (interface{}, error) { + attrs := []interface{}{} + if a, ok := extraAttrs.([]interface{}); ok { + attrs = append(attrs, a...) + } + if a, ok := moreExtraAttrs.([]interface{}); ok { + attrs = append(attrs, a...) + } + return types.NewDocumentHeader(info, attrs) } -func (p *parser) callonEscapedSubscriptText4() (interface{}, error) { +func (p *parser) callonDocumentHeader1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedSubscriptText4() + return p.cur.onDocumentHeader1(stack["extraAttrs"], stack["info"], stack["moreExtraAttrs"]) } -func (c *current) onEscapedSubscriptText1(backslashes, element interface{}) (interface{}, error) { - // simple punctuation must be evaluated last - return types.NewEscapedQuotedText(backslashes.(string), "~", element) +func (c *current) onDocumentInformation1(title, authorsAndRevision interface{}) (interface{}, error) { + return types.NewDocumentInformation(title.([]interface{}), authorsAndRevision) } -func (p *parser) callonEscapedSubscriptText1() (interface{}, error) { +func (p *parser) callonDocumentInformation1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedSubscriptText1(stack["backslashes"], stack["element"]) + return p.cur.onDocumentInformation1(stack["title"], stack["authorsAndRevision"]) } -func (c *current) onSuperscriptText1(element interface{}) (interface{}, error) { - // wraps a single word - return types.NewQuotedText(types.SingleQuoteSuperscript, element) +func (c *current) onDocumentTitle1(title interface{}) (interface{}, error) { + return title, nil } -func (p *parser) callonSuperscriptText1() (interface{}, error) { +func (p *parser) callonDocumentTitle1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSuperscriptText1(stack["element"]) + return p.cur.onDocumentTitle1(stack["title"]) } -func (c *current) onSuperscriptTextElement3() (interface{}, error) { - // anything except spaces, EOL or '^' - return c.text, nil +func (c *current) onDocumentAuthorsAndRevision1(authors, revision interface{}) (interface{}, error) { + return types.NewDocumentAuthorsAndRevision(authors.(types.DocumentAuthors), revision) } -func (p *parser) callonSuperscriptTextElement3() (interface{}, error) { +func (p *parser) callonDocumentAuthorsAndRevision1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSuperscriptTextElement3() + return p.cur.onDocumentAuthorsAndRevision1(stack["authors"], stack["revision"]) } -func (c *current) onEscapedSuperscriptText4() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentAuthors1(authors interface{}) (interface{}, error) { + return authors, nil } -func (p *parser) callonEscapedSuperscriptText4() (interface{}, error) { +func (p *parser) callonDocumentAuthors1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedSuperscriptText4() + return p.cur.onDocumentAuthors1(stack["authors"]) } -func (c *current) onEscapedSuperscriptText1(backslashes, element interface{}) (interface{}, error) { - // simple punctuation must be evaluated last - return types.NewEscapedQuotedText(backslashes.(string), "^", element) - +func (c *current) onDocumentAuthorsInlineForm1(authors interface{}) (interface{}, error) { + return types.NewDocumentAuthors(authors.([]interface{})...) } -func (p *parser) callonEscapedSuperscriptText1() (interface{}, error) { +func (p *parser) callonDocumentAuthorsInlineForm1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onEscapedSuperscriptText1(stack["backslashes"], stack["element"]) + return p.cur.onDocumentAuthorsInlineForm1(stack["authors"]) } -func (c *current) onSubstitutions17() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentAuthorsAttributeForm1(author interface{}) (interface{}, error) { + return types.NewDocumentAuthors(author) } -func (p *parser) callonSubstitutions17() (interface{}, error) { +func (p *parser) callonDocumentAuthorsAttributeForm1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions17() + return p.cur.onDocumentAuthorsAttributeForm1(stack["author"]) } -func (c *current) onSubstitutions22() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentAuthor15(fullName, email interface{}) (bool, error) { + // at least 1 of [fullName, email] must be defined + return fullName != nil || email != nil, nil + } -func (p *parser) callonSubstitutions22() (interface{}, error) { +func (p *parser) callonDocumentAuthor15() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions22() + return p.cur.onDocumentAuthor15(stack["fullName"], stack["email"]) } -func (c *current) onSubstitutions12() (interface{}, error) { - // TODO: also allow trailing quotes/quotation marks? - return types.NewStringElement(string(c.text)) +func (c *current) onDocumentAuthor1(fullName, email interface{}) (interface{}, error) { + return types.NewDocumentAuthor(fullName, email) } -func (p *parser) callonSubstitutions12() (interface{}, error) { +func (p *parser) callonDocumentAuthor1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions12() + return p.cur.onDocumentAuthor1(stack["fullName"], stack["email"]) } -func (c *current) onSubstitutions29() (interface{}, error) { +func (c *current) onDocumentAuthorFullName4() (interface{}, error) { + // no space allowed return string(c.text), nil } -func (p *parser) callonSubstitutions29() (interface{}, error) { +func (p *parser) callonDocumentAuthorFullName4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions29() + return p.cur.onDocumentAuthorFullName4() } -func (c *current) onSubstitutions31() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentAuthorFullName11() (interface{}, error) { + // no space allowed return string(c.text), nil + } -func (p *parser) callonSubstitutions31() (interface{}, error) { +func (p *parser) callonDocumentAuthorFullName11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions31() + return p.cur.onDocumentAuthorFullName11() } -func (c *current) onSubstitutions40() (interface{}, error) { +func (c *current) onDocumentAuthorFullName18() (interface{}, error) { + // spaces allowed return string(c.text), nil + } -func (p *parser) callonSubstitutions40() (interface{}, error) { +func (p *parser) callonDocumentAuthorFullName18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions40() + return p.cur.onDocumentAuthorFullName18() } -func (c *current) onSubstitutions36(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onDocumentAuthorFullName1(part1, part2, part3 interface{}) (interface{}, error) { + return types.NewDocumentAuthorFullName(part1.(string), part2, part3) + } -func (p *parser) callonSubstitutions36() (interface{}, error) { +func (p *parser) callonDocumentAuthorFullName1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions36(stack["ref"]) + return p.cur.onDocumentAuthorFullName1(stack["part1"], stack["part2"], stack["part3"]) } -func (c *current) onSubstitutions46() (bool, error) { - - return c.isSubstitutionEnabled(PostReplacements) && c.isPreceededBySpace(), nil +func (c *current) onDocumentAuthorEmail7() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions46() (bool, error) { +func (p *parser) callonDocumentAuthorEmail7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions46() + return p.cur.onDocumentAuthorEmail7() } -func (c *current) onSubstitutions49() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentAuthorEmail1(email interface{}) (interface{}, error) { + return email, nil } -func (p *parser) callonSubstitutions49() (interface{}, error) { +func (p *parser) callonDocumentAuthorEmail1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions49() + return p.cur.onDocumentAuthorEmail1(stack["email"]) } -func (c *current) onSubstitutions53() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentRevision9(revnumber, revdate, revremark interface{}) (interface{}, error) { + return types.NewDocumentRevision(revnumber, revdate, revremark) + } -func (p *parser) callonSubstitutions53() (interface{}, error) { +func (p *parser) callonDocumentRevision9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions53() + return p.cur.onDocumentRevision9(stack["revnumber"], stack["revdate"], stack["revremark"]) } -func (c *current) onSubstitutions44() (interface{}, error) { - return types.NewLineBreak() +func (c *current) onDocumentRevision23(revdate, revremark interface{}) (interface{}, error) { + return types.NewDocumentRevision(nil, revdate, revremark) } -func (p *parser) callonSubstitutions44() (interface{}, error) { +func (p *parser) callonDocumentRevision23() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions44() + return p.cur.onDocumentRevision23(stack["revdate"], stack["revremark"]) } -func (c *current) onSubstitutions63() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentRevision1(revision interface{}) (interface{}, error) { + return revision, nil } -func (p *parser) callonSubstitutions63() (interface{}, error) { +func (p *parser) callonDocumentRevision1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions63() + return p.cur.onDocumentRevision1(stack["revision"]) } -func (c *current) onSubstitutions67() (interface{}, error) { +func (c *current) onDocumentRevisionNumber2() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonSubstitutions67() (interface{}, error) { +func (p *parser) callonDocumentRevisionNumber2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions67() + return p.cur.onDocumentRevisionNumber2() } -func (c *current) onSubstitutions69() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentRevisionNumber8() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonSubstitutions69() (interface{}, error) { +func (p *parser) callonDocumentRevisionNumber8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions69() + return p.cur.onDocumentRevisionNumber8() } -func (c *current) onSubstitutions60(char interface{}) (interface{}, error) { - return char, nil +func (c *current) onDocumentRevisionDate1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions60() (interface{}, error) { +func (p *parser) callonDocumentRevisionDate1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions60(stack["char"]) + return p.cur.onDocumentRevisionDate1() } -func (c *current) onSubstitutions82() (bool, error) { - return c.isSubstitutionEnabled(Replacements), nil - +func (c *current) onDocumentRevisionRemark1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions82() (bool, error) { +func (p *parser) callonDocumentRevisionRemark1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions82() + return p.cur.onDocumentRevisionRemark1() } -func (c *current) onSubstitutions89() (interface{}, error) { - return types.NewSymbol("\"`") - +func (c *current) onElementPlaceHolder5() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions89() (interface{}, error) { +func (p *parser) callonElementPlaceHolder5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions89() + return p.cur.onElementPlaceHolder5() } -func (c *current) onSubstitutions91() (interface{}, error) { - return types.NewSymbol("`\"") - +func (c *current) onElementPlaceHolder1(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonSubstitutions91() (interface{}, error) { +func (p *parser) callonElementPlaceHolder1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions91() + return p.cur.onElementPlaceHolder1(stack["ref"]) } -func (c *current) onSubstitutions93() (interface{}, error) { - return types.NewSymbol("'`") +func (c *current) onLineBreak3() (bool, error) { + + return c.isSubstitutionEnabled(PostReplacements) && c.isPreceededBySpace(), nil } -func (p *parser) callonSubstitutions93() (interface{}, error) { +func (p *parser) callonLineBreak3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions93() + return p.cur.onLineBreak3() } -func (c *current) onSubstitutions95() (interface{}, error) { - return types.NewSymbol("`'") +func (c *current) onLineBreak1() (interface{}, error) { + return types.NewLineBreak() } -func (p *parser) callonSubstitutions95() (interface{}, error) { +func (p *parser) callonLineBreak1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions95() + return p.cur.onLineBreak1() } -func (c *current) onSubstitutions97() (interface{}, error) { - return types.NewSymbol("(C)") +func (c *current) onFrontMatter3() (bool, error) { + return c.isFrontMatterAllowed(), nil } -func (p *parser) callonSubstitutions97() (interface{}, error) { +func (p *parser) callonFrontMatter3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions97() + return p.cur.onFrontMatter3() } -func (c *current) onSubstitutions99() (interface{}, error) { - return types.NewSymbol("(TM)") +func (c *current) onFrontMatter1(frontmatter interface{}) (interface{}, error) { + return frontmatter, nil } -func (p *parser) callonSubstitutions99() (interface{}, error) { +func (p *parser) callonFrontMatter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions99() + return p.cur.onFrontMatter1(stack["frontmatter"]) } -func (c *current) onSubstitutions101() (interface{}, error) { - return types.NewSymbol("(R)") - +func (c *current) onYamlFrontMatter1(content interface{}) (interface{}, error) { + return types.NewYamlFrontMatter(content.(string)) } -func (p *parser) callonSubstitutions101() (interface{}, error) { +func (p *parser) callonYamlFrontMatter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions101() + return p.cur.onYamlFrontMatter1(stack["content"]) } -func (c *current) onSubstitutions103() (interface{}, error) { - return types.NewSymbol("...") - +func (c *current) onYamlFrontMatterContent1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions103() (interface{}, error) { +func (p *parser) callonYamlFrontMatterContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions103() + return p.cur.onYamlFrontMatterContent1() } -func (c *current) onSubstitutions105() (interface{}, error) { - return types.NewSymbol("->") - +func (c *current) onFrontMatterLine1() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonSubstitutions105() (interface{}, error) { +func (p *parser) callonFrontMatterLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions105() + return p.cur.onFrontMatterLine1() } -func (c *current) onSubstitutions109() (bool, error) { - return c.isPreceededBySpace(), nil - +func (c *current) onInlineElement1(element interface{}) (interface{}, error) { + c.trackSuffix(element) + return element, nil } -func (p *parser) callonSubstitutions109() (bool, error) { +func (p *parser) callonInlineElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions109() + return p.cur.onInlineElement1(stack["element"]) } -func (c *current) onSubstitutions112() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineAnchor2(id interface{}) (interface{}, error) { + //return types.NewStringElement("[[" + id.(string) + "]]") + return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) } -func (p *parser) callonSubstitutions112() (interface{}, error) { +func (p *parser) callonInlineAnchor2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions112() + return p.cur.onInlineAnchor2(stack["id"]) } -func (c *current) onSubstitutions116() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineAnchor9(id interface{}) (interface{}, error) { + // no EOL here since there can be multiple InlineElementID on the same line + return types.NewInlineAnchor(id.(string)) + } -func (p *parser) callonSubstitutions116() (interface{}, error) { +func (p *parser) callonInlineAnchor9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions116() + return p.cur.onInlineAnchor9(stack["id"]) } -func (c *current) onSubstitutions107() (interface{}, error) { - return types.NewSymbol(" -- ") +func (c *current) onInlineButton3() (bool, error) { + return c.isExperimentalEnabled(), nil } -func (p *parser) callonSubstitutions107() (interface{}, error) { +func (p *parser) callonInlineButton3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions107() + return p.cur.onInlineButton3() } -func (c *current) onSubstitutions125() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onInlineButton1(attributes interface{}) (interface{}, error) { + return types.NewInlineButton(attributes.(types.Attributes)) } -func (p *parser) callonSubstitutions125() (bool, error) { +func (p *parser) callonInlineButton1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions125() + return p.cur.onInlineButton1(stack["attributes"]) } -func (c *current) onSubstitutions130() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineMenu3() (bool, error) { + return c.isExperimentalEnabled(), nil + } -func (p *parser) callonSubstitutions130() (interface{}, error) { +func (p *parser) callonInlineMenu3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions130() + return p.cur.onInlineMenu3() } -func (c *current) onSubstitutions123() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onInlineMenu1(id, attributes interface{}) (interface{}, error) { + return types.NewInlineMenu(id.(string), attributes.(types.Attributes)) } -func (p *parser) callonSubstitutions123() (interface{}, error) { +func (p *parser) callonInlineMenu1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions123() + return p.cur.onInlineMenu1(stack["id"], stack["attributes"]) } -func (c *current) onSubstitutions137() (interface{}, error) { - return types.NewSymbol("<-") +func (c *current) onIndexTerm1(term interface{}) (interface{}, error) { + return types.NewIndexTerm(term.([]interface{})) } -func (p *parser) callonSubstitutions137() (interface{}, error) { +func (p *parser) callonIndexTerm1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions137() + return p.cur.onIndexTerm1(stack["term"]) } -func (c *current) onSubstitutions139() (interface{}, error) { - return types.NewSymbol("=>") - +func (c *current) onIndexTermContent10() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions139() (interface{}, error) { +func (p *parser) callonIndexTermContent10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions139() + return p.cur.onIndexTermContent10() } -func (c *current) onSubstitutions141() (interface{}, error) { - return types.NewSymbol("<=") - +func (c *current) onIndexTermContent1(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonSubstitutions141() (interface{}, error) { +func (p *parser) callonIndexTermContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions141() + return p.cur.onIndexTermContent1(stack["elements"]) } -func (c *current) onSubstitutions85() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - +func (c *current) onConcealedIndexTerm8(content interface{}) (interface{}, error) { + return content, nil } -func (p *parser) callonSubstitutions85() (interface{}, error) { +func (p *parser) callonConcealedIndexTerm8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions85() + return p.cur.onConcealedIndexTerm8(stack["content"]) } -func (c *current) onSubstitutions143() (interface{}, error) { - return types.NewSymbol("\"`") - +func (c *current) onConcealedIndexTerm19(content interface{}) (interface{}, error) { + return content, nil } -func (p *parser) callonSubstitutions143() (interface{}, error) { +func (p *parser) callonConcealedIndexTerm19() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions143() + return p.cur.onConcealedIndexTerm19(stack["content"]) } -func (c *current) onSubstitutions145() (interface{}, error) { - return types.NewSymbol("`\"") +func (c *current) onConcealedIndexTerm1(term1, term2, term3 interface{}) (interface{}, error) { + return types.NewConcealedIndexTerm(term1, term2, term3) } -func (p *parser) callonSubstitutions145() (interface{}, error) { +func (p *parser) callonConcealedIndexTerm1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions145() + return p.cur.onConcealedIndexTerm1(stack["term1"], stack["term2"], stack["term3"]) } -func (c *current) onSubstitutions147() (interface{}, error) { - return types.NewSymbol("'`") - +func (c *current) onConcealedIndexTermContent1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions147() (interface{}, error) { +func (p *parser) callonConcealedIndexTermContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions147() + return p.cur.onConcealedIndexTermContent1() } -func (c *current) onSubstitutions149() (interface{}, error) { - return types.NewSymbol("`'") +func (c *current) onImageBlock1(path, attributes interface{}) (interface{}, error) { + // 'imagesdir' attribute is added after applying the attribute substitutions on the image location + return types.NewImageBlock(path.(*types.Location), attributes.(types.Attributes)) } -func (p *parser) callonSubstitutions149() (interface{}, error) { +func (p *parser) callonImageBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions149() + return p.cur.onImageBlock1(stack["path"], stack["attributes"]) } -func (c *current) onSubstitutions151() (interface{}, error) { - return types.NewSymbol("(C)") +func (c *current) onInlineImage1(path, attributes interface{}) (interface{}, error) { + return types.NewInlineImage(path.(*types.Location), attributes.(types.Attributes)) } -func (p *parser) callonSubstitutions151() (interface{}, error) { +func (p *parser) callonInlineImage1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions151() + return p.cur.onInlineImage1(stack["path"], stack["attributes"]) } -func (c *current) onSubstitutions153() (interface{}, error) { - return types.NewSymbol("(TM)") - +func (c *current) onInlineIcon5() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions153() (interface{}, error) { +func (p *parser) callonInlineIcon5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions153() + return p.cur.onInlineIcon5() } -func (c *current) onSubstitutions155() (interface{}, error) { - return types.NewSymbol("(R)") +func (c *current) onInlineIcon1(icon, attributes interface{}) (interface{}, error) { + return types.NewIcon(icon.(string), attributes) } -func (p *parser) callonSubstitutions155() (interface{}, error) { +func (p *parser) callonInlineIcon1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions155() + return p.cur.onInlineIcon1(stack["icon"], stack["attributes"]) } -func (c *current) onSubstitutions157() (interface{}, error) { - return types.NewSymbol("...") +func (c *current) onInlineFootnote2(elements interface{}) (interface{}, error) { + return types.NewFootnote("", elements.([]interface{})) } -func (p *parser) callonSubstitutions157() (interface{}, error) { +func (p *parser) callonInlineFootnote2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions157() + return p.cur.onInlineFootnote2(stack["elements"]) } -func (c *current) onSubstitutions161() (bool, error) { - return c.isPreceededBySpace(), nil +func (c *current) onInlineFootnote8(ref, elements interface{}) (interface{}, error) { + // TODO: use only this rule with `ref:(FootnoteRef)?` + return types.NewFootnote(ref.(string), elements.([]interface{})) } -func (p *parser) callonSubstitutions161() (bool, error) { +func (p *parser) callonInlineFootnote8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions161() + return p.cur.onInlineFootnote8(stack["ref"], stack["elements"]) } -func (c *current) onSubstitutions164() (interface{}, error) { - return string(c.text), nil +func (c *current) onFootnoteElements1(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonSubstitutions164() (interface{}, error) { +func (p *parser) callonFootnoteElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions164() + return p.cur.onFootnoteElements1(stack["elements"]) } -func (c *current) onSubstitutions168() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onFootnoteElement1(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonSubstitutions168() (interface{}, error) { +func (p *parser) callonFootnoteElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions168() + return p.cur.onFootnoteElement1(stack["element"]) } -func (c *current) onSubstitutions159() (interface{}, error) { - return types.NewSymbol(" -- ") +func (c *current) onSinglePlusPassthrough1(content interface{}) (interface{}, error) { + return types.NewInlinePassthrough(types.SinglePlusPassthrough, []interface{}{content}) } -func (p *parser) callonSubstitutions159() (interface{}, error) { +func (p *parser) callonSinglePlusPassthrough1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions159() + return p.cur.onSinglePlusPassthrough1(stack["content"]) } -func (c *current) onSubstitutions177() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onSinglePlusPassthroughContent2() (interface{}, error) { + // no space in the first or last position of the content, but allowed elsewhere + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSubstitutions177() (bool, error) { +func (p *parser) callonSinglePlusPassthroughContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions177() + return p.cur.onSinglePlusPassthroughContent2() } -func (c *current) onSubstitutions182() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onSinglePlusPassthroughContent23() (interface{}, error) { + // a single character + return types.NewStringElement(string(c.text)) + } -func (p *parser) callonSubstitutions182() (interface{}, error) { +func (p *parser) callonSinglePlusPassthroughContent23() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions182() + return p.cur.onSinglePlusPassthroughContent23() } -func (c *current) onSubstitutions175() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onTriplePlusPassthrough1(content interface{}) (interface{}, error) { + return types.NewInlinePassthrough(types.TriplePlusPassthrough, []interface{}{content}) } -func (p *parser) callonSubstitutions175() (interface{}, error) { +func (p *parser) callonTriplePlusPassthrough1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions175() + return p.cur.onTriplePlusPassthrough1(stack["content"]) } -func (c *current) onSubstitutions189() (interface{}, error) { - return types.NewSymbol("->") +func (c *current) onTriplePlusPassthroughContent2() (interface{}, error) { + // spaces and newlines are also allowed in the first or last position of the content and elsewhere too + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSubstitutions189() (interface{}, error) { +func (p *parser) callonTriplePlusPassthroughContent2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions189() + return p.cur.onTriplePlusPassthroughContent2() } -func (c *current) onSubstitutions191() (interface{}, error) { - return types.NewSymbol("<-") +func (c *current) onTriplePlusPassthroughContent8() (interface{}, error) { + // a single character + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSubstitutions191() (interface{}, error) { +func (p *parser) callonTriplePlusPassthroughContent8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions191() + return p.cur.onTriplePlusPassthroughContent8() } -func (c *current) onSubstitutions193() (interface{}, error) { - return types.NewSymbol("=>") +func (c *current) onPassthroughMacro2(content interface{}) (interface{}, error) { + return types.NewInlinePassthrough(types.PassthroughMacro, []interface{}{content}) } -func (p *parser) callonSubstitutions193() (interface{}, error) { +func (p *parser) callonPassthroughMacro2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions193() + return p.cur.onPassthroughMacro2(stack["content"]) } -func (c *current) onSubstitutions195() (interface{}, error) { - return types.NewSymbol("<=") +func (c *current) onPassthroughMacro9(content interface{}) (interface{}, error) { + return types.NewInlinePassthrough(types.PassthroughMacro, content.([]interface{})) } -func (p *parser) callonSubstitutions195() (interface{}, error) { +func (p *parser) callonPassthroughMacro9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions195() + return p.cur.onPassthroughMacro9(stack["content"]) } -func (c *current) onSubstitutions197() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char +func (c *current) onPassthroughMacroCharacter1() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSubstitutions197() (interface{}, error) { +func (p *parser) callonPassthroughMacroCharacter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions197() + return p.cur.onPassthroughMacroCharacter1() } -func (c *current) onSubstitutions203() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) +func (c *current) onBareURL8(url interface{}) (bool, error) { + return url.(*types.Location).TrimAngleBracketSuffix() } -func (p *parser) callonSubstitutions203() (interface{}, error) { +func (p *parser) callonBareURL8() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions203() + return p.cur.onBareURL8(stack["url"]) } -func (c *current) onSubstitutions80(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onBareURL1(url interface{}) (interface{}, error) { + + return types.NewInlineLink(url.(*types.Location), nil) } -func (p *parser) callonSubstitutions80() (interface{}, error) { +func (p *parser) callonBareURL1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions80(stack["element"]) + return p.cur.onBareURL1(stack["url"]) } -func (c *current) onSubstitutions211() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil +func (c *current) onRelativeLink2(url, attributes interface{}) (interface{}, error) { + return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) } -func (p *parser) callonSubstitutions211() (bool, error) { +func (p *parser) callonRelativeLink2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions211() + return p.cur.onRelativeLink2(stack["url"], stack["attributes"]) } -func (c *current) onSubstitutions220() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onRelativeLink10(url, attributes interface{}) (interface{}, error) { + return types.NewInlineLink(url.(*types.Location), attributes.(types.Attributes)) } -func (p *parser) callonSubstitutions220() (interface{}, error) { +func (p *parser) callonRelativeLink10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions220() + return p.cur.onRelativeLink10(stack["url"], stack["attributes"]) } -func (c *current) onSubstitutions224() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalLink2(url, attributes interface{}) (interface{}, error) { + return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) } -func (p *parser) callonSubstitutions224() (interface{}, error) { +func (p *parser) callonExternalLink2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions224() + return p.cur.onExternalLink2(stack["url"], stack["attributes"]) } -func (c *current) onSubstitutions230() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references - return types.NewStringElement(string(c.text)) +func (c *current) onExternalLink10(url, attributes interface{}) (interface{}, error) { + return types.NewInlineLink(url.(*types.Location), attributes) } -func (p *parser) callonSubstitutions230() (interface{}, error) { +func (p *parser) callonExternalLink10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions230() + return p.cur.onExternalLink10(stack["url"], stack["attributes"]) } -func (c *current) onSubstitutions239() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements1(firstElement, extraElements interface{}) (interface{}, error) { + return types.NewListElements(append([]interface{}{firstElement}, extraElements.([]interface{})...)) } -func (p *parser) callonSubstitutions239() (interface{}, error) { +func (p *parser) callonListElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions239() + return p.cur.onListElements1(stack["firstElement"], stack["extraElements"]) } -func (c *current) onSubstitutions235(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - +func (c *current) onExtraListElements1(elements interface{}) (interface{}, error) { + return types.Flatten(elements.([]interface{})), nil } -func (p *parser) callonSubstitutions235() (interface{}, error) { +func (p *parser) callonExtraListElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions235(stack["name"]) + return p.cur.onExtraListElements1(stack["elements"]) } -func (c *current) onSubstitutions249() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement7(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonSubstitutions249() (interface{}, error) { +func (p *parser) callonExtraListElement7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions249() + return p.cur.onExtraListElement7(stack["element"]) } -func (c *current) onSubstitutions245(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) +func (c *current) onExtraListElement13(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil } -func (p *parser) callonSubstitutions245() (interface{}, error) { +func (p *parser) callonExtraListElement13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions245(stack["name"]) + return p.cur.onExtraListElement13(stack["attributes"], stack["element"]) } -func (c *current) onSubstitutions255() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onExtraListElement20(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonSubstitutions255() (interface{}, error) { +func (p *parser) callonExtraListElement20() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions255() + return p.cur.onExtraListElement20(stack["element"]) } -func (c *current) onSubstitutions216(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onExtraListElement26(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil } -func (p *parser) callonSubstitutions216() (interface{}, error) { +func (p *parser) callonExtraListElement26() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions216(stack["id"], stack["label"]) + return p.cur.onExtraListElement26(stack["attributes"], stack["element"]) } -func (c *current) onSubstitutions262() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onExtraListElement33(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonSubstitutions262() (interface{}, error) { +func (p *parser) callonExtraListElement33() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions262() + return p.cur.onExtraListElement33(stack["element"]) } -func (c *current) onSubstitutions258(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onExtraListElement39(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil } -func (p *parser) callonSubstitutions258() (interface{}, error) { +func (p *parser) callonExtraListElement39() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions258(stack["id"]) + return p.cur.onExtraListElement39(stack["attributes"], stack["element"]) } -func (c *current) onSubstitutions214() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onExtraListElement47(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonSubstitutions214() (interface{}, error) { +func (p *parser) callonExtraListElement47() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions214() + return p.cur.onExtraListElement47(stack["element"]) } -func (c *current) onSubstitutions266() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onExtraListElement53(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil } -func (p *parser) callonSubstitutions266() (interface{}, error) { +func (p *parser) callonExtraListElement53() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions266() + return p.cur.onExtraListElement53(stack["attributes"], stack["element"]) } -func (c *current) onSubstitutions209(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onExtraListElement61(attributes, element interface{}) (interface{}, error) { + if e, ok := element.(types.WithAttributes); ok { + for _, a := range attributes.([]interface{}) { + if a, ok := a.(types.Attributes); ok { + e.AddAttributes(a) + } + } + } + // implicit attachment to list element + // by wrapping into a ListElementContinuation + return types.NewListElementContinuation(0, element) } -func (p *parser) callonSubstitutions209() (interface{}, error) { +func (p *parser) callonExtraListElement61() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions209(stack["element"]) + return p.cur.onExtraListElement61(stack["attributes"], stack["element"]) } -func (c *current) onSubstitutions270() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil +func (c *current) onExtraListElement70(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonSubstitutions270() (bool, error) { +func (p *parser) callonExtraListElement70() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions270() + return p.cur.onExtraListElement70(stack["element"]) } -func (c *current) onSubstitutions277() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonSubstitutions277() (interface{}, error) { +func (p *parser) callonExtraListElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions277() + return p.cur.onExtraListElement1(stack["element"]) } -func (c *current) onSubstitutions289() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementParagraphLine2() (interface{}, error) { + return nil, nil // taking a shortcut to ignore commented out content and avoid having empty paragraphs } -func (p *parser) callonSubstitutions289() (interface{}, error) { +func (p *parser) callonListElementParagraphLine2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions289() + return p.cur.onListElementParagraphLine2() } -func (c *current) onSubstitutions291() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onListElementParagraphLine23() (interface{}, error) { + return strings.TrimSpace(string(c.text)), nil } -func (p *parser) callonSubstitutions291() (interface{}, error) { +func (p *parser) callonListElementParagraphLine23() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions291() + return p.cur.onListElementParagraphLine23() } -func (c *current) onSubstitutions284(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElementParagraphLine4(content interface{}) (interface{}, error) { + // do not retain the EOL chars + return types.NewRawLine(content.(string)) } -func (p *parser) callonSubstitutions284() (interface{}, error) { +func (p *parser) callonListElementParagraphLine4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions284(stack["start"]) + return p.cur.onListElementParagraphLine4(stack["content"]) } -func (c *current) onSubstitutions273(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +func (c *current) onListElementContent4() (interface{}, error) { + return types.NewRawLine(string(c.text)) + } -func (p *parser) callonSubstitutions273() (interface{}, error) { +func (p *parser) callonListElementContent4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions273(stack["name"], stack["start"]) + return p.cur.onListElementContent4() } -func (c *current) onSubstitutions299() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContent1(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) } -func (p *parser) callonSubstitutions299() (interface{}, error) { +func (p *parser) callonListElementContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions299() + return p.cur.onListElementContent1(stack["rawline"]) } -func (c *current) onSubstitutions311() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuation1(offset, element interface{}) (interface{}, error) { + return types.NewListElementContinuation(len(offset.([]interface{})), element) } -func (p *parser) callonSubstitutions311() (interface{}, error) { +func (p *parser) callonListElementContinuation1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions311() + return p.cur.onListElementContinuation1(stack["offset"], stack["element"]) } -func (c *current) onSubstitutions313() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onListElementContinuationElement1(attributes, element interface{}) (interface{}, error) { + if element, ok := element.(types.WithAttributes); ok && attributes != nil { + element.AddAttributes(attributes.(types.Attributes)) + } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("returning element '%s'\n", spew.Sdump(element)) + // } + return element, nil } -func (p *parser) callonSubstitutions313() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions313() + return p.cur.onListElementContinuationElement1(stack["attributes"], stack["element"]) } -func (c *current) onSubstitutions306(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListContinuationParagraph4() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonSubstitutions306() (interface{}, error) { +func (p *parser) callonListContinuationParagraph4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions306(stack["start"]) + return p.cur.onListContinuationParagraph4() } -func (c *current) onSubstitutions295(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +func (c *current) onListContinuationParagraph1(content interface{}) (interface{}, error) { + // do not retain the EOL chars + return types.NewParagraph(types.RawLine(content.(string))) + } -func (p *parser) callonSubstitutions295() (interface{}, error) { +func (p *parser) callonListContinuationParagraph1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions295(stack["name"], stack["start"]) + return p.cur.onListContinuationParagraph1(stack["content"]) } -func (c *current) onSubstitutions321() (interface{}, error) { - return string(c.text), nil +func (c *current) onOrderedListElement1(prefix, content interface{}) (interface{}, error) { + return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) } -func (p *parser) callonSubstitutions321() (interface{}, error) { +func (p *parser) callonOrderedListElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions321() + return p.cur.onOrderedListElement1(stack["prefix"], stack["content"]) } -func (c *current) onSubstitutions317(name interface{}) (interface{}, error) { +func (c *current) onOrderedListElementPrefix10() (interface{}, error) { - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) + // `.` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonSubstitutions317() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions317(stack["name"]) + return p.cur.onOrderedListElementPrefix10() } -func (c *current) onSubstitutions331() (interface{}, error) { - return string(c.text), nil +func (c *current) onOrderedListElementPrefix13(depth interface{}) (bool, error) { + + // use a predicate to make sure that only `.` to `.....` are allowed + return depth.(int) <= 5, nil } -func (p *parser) callonSubstitutions331() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix13() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions331() + return p.cur.onOrderedListElementPrefix13(stack["depth"]) } -func (c *current) onSubstitutions327(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) +func (c *current) onOrderedListElementPrefix7(depth interface{}) (interface{}, error) { + switch depth.(int) { + case 1: + return types.NewOrderedListElementPrefix(types.Arabic) + case 2: + return types.NewOrderedListElementPrefix(types.LowerAlpha) + case 3: + return types.NewOrderedListElementPrefix(types.LowerRoman) + case 4: + return types.NewOrderedListElementPrefix(types.UpperAlpha) + default: + return types.NewOrderedListElementPrefix(types.UpperRoman) + } } -func (p *parser) callonSubstitutions327() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions327(stack["name"]) + return p.cur.onOrderedListElementPrefix7(stack["depth"]) } -func (c *current) onSubstitutions268(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onOrderedListElementPrefix14() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonSubstitutions268() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions268(stack["element"]) + return p.cur.onOrderedListElementPrefix14() } -func (c *current) onSubstitutions337() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onOrderedListElementPrefix19() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonSubstitutions337() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix19() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions337() + return p.cur.onOrderedListElementPrefix19() } -func (c *current) onSubstitutions5(element interface{}) (interface{}, error) { - c.trackSuffix(element) - return element, nil +func (c *current) onOrderedListElementPrefix23() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonSubstitutions5() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix23() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions5(stack["element"]) + return p.cur.onOrderedListElementPrefix23() } -func (c *current) onSubstitutions1(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements) +func (c *current) onOrderedListElementPrefix27() (interface{}, error) { + // numbering style: "i)", etc. + return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonSubstitutions1() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix27() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSubstitutions1(stack["elements"]) + return p.cur.onOrderedListElementPrefix27() } -func (c *current) onHeaderGroup1(elements interface{}) (interface{}, error) { - - return types.NewInlineElements(elements) +func (c *current) onOrderedListElementPrefix32() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonHeaderGroup1() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix32() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroup1(stack["elements"]) + return p.cur.onOrderedListElementPrefix32() } -func (c *current) onHeaderGroupElement8() (interface{}, error) { - return types.NewStringElement(string(c.text)) - +func (c *current) onOrderedListElementPrefix1(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonHeaderGroupElement8() (interface{}, error) { +func (p *parser) callonOrderedListElementPrefix1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement8() + return p.cur.onOrderedListElementPrefix1(stack["prefix"]) } -func (c *current) onHeaderGroupElement17() (interface{}, error) { - // allow ` - return types.NewStringElement(string(c.text)) +func (c *current) onUnorderedListElement1(prefix, checkstyle, content interface{}) (interface{}, error) { + return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) } -func (p *parser) callonHeaderGroupElement17() (interface{}, error) { +func (p *parser) callonUnorderedListElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement17() + return p.cur.onUnorderedListElement1(stack["prefix"], stack["checkstyle"], stack["content"]) } -func (c *current) onHeaderGroupElement29() (interface{}, error) { - return string(c.text), nil +func (c *current) onUnorderedListElementPrefix10() (interface{}, error) { + + // `*` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonHeaderGroupElement29() (interface{}, error) { +func (p *parser) callonUnorderedListElementPrefix10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement29() + return p.cur.onUnorderedListElementPrefix10() } -func (c *current) onHeaderGroupElement40() (interface{}, error) { - // spaces, commas and dots are allowed in this syntax - return types.NewStringElement(string(c.text)) +func (c *current) onUnorderedListElementPrefix13(depth interface{}) (bool, error) { + + // use a predicate to make sure that only `*` to `*****` are allowed + return depth.(int) <= 5, nil } -func (p *parser) callonHeaderGroupElement40() (interface{}, error) { +func (p *parser) callonUnorderedListElementPrefix13() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement40() + return p.cur.onUnorderedListElementPrefix13(stack["depth"]) } -func (c *current) onHeaderGroupElement47() (interface{}, error) { - return string(c.text), nil +func (c *current) onUnorderedListElementPrefix7(depth interface{}) (interface{}, error) { + switch depth.(int) { + case 1: + return types.NewUnorderedListElementPrefix(types.OneAsterisk) + case 2: + return types.NewUnorderedListElementPrefix(types.TwoAsterisks) + case 3: + return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) + case 4: + return types.NewUnorderedListElementPrefix(types.FourAsterisks) + default: + return types.NewUnorderedListElementPrefix(types.FiveAsterisks) + } + } -func (p *parser) callonHeaderGroupElement47() (interface{}, error) { +func (p *parser) callonUnorderedListElementPrefix7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement47() + return p.cur.onUnorderedListElementPrefix7(stack["depth"]) } -func (c *current) onHeaderGroupElement43(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onUnorderedListElementPrefix15() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) + } -func (p *parser) callonHeaderGroupElement43() (interface{}, error) { +func (p *parser) callonUnorderedListElementPrefix15() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement43(stack["ref"]) + return p.cur.onUnorderedListElementPrefix15() } -func (c *current) onHeaderGroupElement53() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - +func (c *current) onUnorderedListElementPrefix1(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonHeaderGroupElement53() (bool, error) { +func (p *parser) callonUnorderedListElementPrefix1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement53() + return p.cur.onUnorderedListElementPrefix1(stack["prefix"]) } -func (c *current) onHeaderGroupElement60() (interface{}, error) { - return string(c.text), nil - +func (c *current) onUnorderedListElementCheckStyle7() (interface{}, error) { + return types.Unchecked, nil } -func (p *parser) callonHeaderGroupElement60() (interface{}, error) { +func (p *parser) callonUnorderedListElementCheckStyle7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement60() + return p.cur.onUnorderedListElementCheckStyle7() } -func (c *current) onHeaderGroupElement72() (interface{}, error) { - return string(c.text), nil - +func (c *current) onUnorderedListElementCheckStyle9() (interface{}, error) { + return types.Checked, nil } -func (p *parser) callonHeaderGroupElement72() (interface{}, error) { +func (p *parser) callonUnorderedListElementCheckStyle9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement72() + return p.cur.onUnorderedListElementCheckStyle9() } -func (c *current) onHeaderGroupElement74() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - +func (c *current) onUnorderedListElementCheckStyle11() (interface{}, error) { + return types.Checked, nil } -func (p *parser) callonHeaderGroupElement74() (interface{}, error) { +func (p *parser) callonUnorderedListElementCheckStyle11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement74() + return p.cur.onUnorderedListElementCheckStyle11() } -func (c *current) onHeaderGroupElement67(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onUnorderedListElementCheckStyle1(style interface{}) (interface{}, error) { + return style, nil } -func (p *parser) callonHeaderGroupElement67() (interface{}, error) { +func (p *parser) callonUnorderedListElementCheckStyle1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement67(stack["start"]) + return p.cur.onUnorderedListElementCheckStyle1(stack["style"]) } -func (c *current) onHeaderGroupElement56(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +func (c *current) onLabeledListElement1(term, separator, description interface{}) (interface{}, error) { + return types.NewLabeledListElement(len(separator.(string))-1, term, description) + } -func (p *parser) callonHeaderGroupElement56() (interface{}, error) { +func (p *parser) callonLabeledListElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement56(stack["name"], stack["start"]) + return p.cur.onLabeledListElement1(stack["term"], stack["separator"], stack["description"]) } -func (c *current) onHeaderGroupElement82() (interface{}, error) { - return string(c.text), nil +func (c *current) onLabeledListElementTerm1() (interface{}, error) { + return types.NewRawLine(strings.TrimSpace(string(c.text))) } -func (p *parser) callonHeaderGroupElement82() (interface{}, error) { +func (p *parser) callonLabeledListElementTerm1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement82() + return p.cur.onLabeledListElementTerm1() } -func (c *current) onHeaderGroupElement94() (interface{}, error) { +func (c *current) onLabeledListElementSeparator4() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonHeaderGroupElement94() (interface{}, error) { +func (p *parser) callonLabeledListElementSeparator4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement94() + return p.cur.onLabeledListElementSeparator4() } -func (c *current) onHeaderGroupElement96() (interface{}, error) { +func (c *current) onLabeledListElementSeparator7(separator interface{}) (bool, error) { - return strconv.Atoi(string(c.text)) + // use a predicate to make sure that separator is `::`, `:::` or `::::` + return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil } -func (p *parser) callonHeaderGroupElement96() (interface{}, error) { +func (p *parser) callonLabeledListElementSeparator7() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement96() + return p.cur.onLabeledListElementSeparator7(stack["separator"]) } -func (c *current) onHeaderGroupElement89(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onLabeledListElementSeparator1(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonHeaderGroupElement89() (interface{}, error) { +func (p *parser) callonLabeledListElementSeparator1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement89(stack["start"]) + return p.cur.onLabeledListElementSeparator1(stack["separator"]) } -func (c *current) onHeaderGroupElement78(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +func (c *current) onLabeledListElementDescription2(content interface{}) (interface{}, error) { + if content == nil { + return nil, nil + } + return types.NewParagraph(content) + } -func (p *parser) callonHeaderGroupElement78() (interface{}, error) { +func (p *parser) callonLabeledListElementDescription2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement78(stack["name"], stack["start"]) + return p.cur.onLabeledListElementDescription2(stack["content"]) } -func (c *current) onHeaderGroupElement104() (interface{}, error) { - return string(c.text), nil +func (c *current) onLabeledListElementDescription16() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonHeaderGroupElement104() (interface{}, error) { +func (p *parser) callonLabeledListElementDescription16() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement104() + return p.cur.onLabeledListElementDescription16() } -func (c *current) onHeaderGroupElement100(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onLabeledListElementDescription12(content interface{}) (interface{}, error) { + return types.NewParagraph(content) } -func (p *parser) callonHeaderGroupElement100() (interface{}, error) { +func (p *parser) callonLabeledListElementDescription12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement100(stack["name"]) + return p.cur.onLabeledListElementDescription12(stack["content"]) } -func (c *current) onHeaderGroupElement114() (interface{}, error) { - return string(c.text), nil +func (c *current) onCallout3() (bool, error) { + return c.isSubstitutionEnabled(Callouts), nil } -func (p *parser) callonHeaderGroupElement114() (interface{}, error) { +func (p *parser) callonCallout3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement114() + return p.cur.onCallout3() } -func (c *current) onHeaderGroupElement110(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) - +func (c *current) onCallout6() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonHeaderGroupElement110() (interface{}, error) { +func (p *parser) callonCallout6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement110(stack["name"]) + return p.cur.onCallout6() } -func (c *current) onHeaderGroupElement51(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onCallout1(ref interface{}) (interface{}, error) { + return types.NewCallout(ref.(int)) } -func (p *parser) callonHeaderGroupElement51() (interface{}, error) { +func (p *parser) callonCallout1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement51(stack["element"]) + return p.cur.onCallout1(stack["ref"]) } -func (c *current) onHeaderGroupElement120() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onCalloutListElement1(ref, description interface{}) (interface{}, error) { + return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) } -func (p *parser) callonHeaderGroupElement120() (interface{}, error) { +func (p *parser) callonCalloutListElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement120() + return p.cur.onCalloutListElement1(stack["ref"], stack["description"]) } -func (c *current) onHeaderGroupElement36(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil - +func (c *current) onCalloutListElementPrefix5() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonHeaderGroupElement36() (interface{}, error) { +func (p *parser) callonCalloutListElementPrefix5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement36(stack["elements"]) + return p.cur.onCalloutListElementPrefix5() } -func (c *current) onHeaderGroupElement32(id interface{}) (interface{}, error) { - return types.NewIDAttribute(id) +func (c *current) onCalloutListElementPrefix1(ref interface{}) (interface{}, error) { + return ref, nil } -func (p *parser) callonHeaderGroupElement32() (interface{}, error) { +func (p *parser) callonCalloutListElementPrefix1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement32(stack["id"]) + return p.cur.onCalloutListElementPrefix1(stack["ref"]) } -func (c *current) onHeaderGroupElement124() (interface{}, error) { +func (c *current) onCalloutListElementContent4() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonHeaderGroupElement124() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onHeaderGroupElement124() -} - -func (c *current) onHeaderGroupElement26(id interface{}) (interface{}, error) { - return id, nil -} - -func (p *parser) callonHeaderGroupElement26() (interface{}, error) { +func (p *parser) callonCalloutListElementContent4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement26(stack["id"]) + return p.cur.onCalloutListElementContent4() } -func (c *current) onHeaderGroupElement129() (interface{}, error) { - return string(c.text), nil +func (c *current) onCalloutListElementContent1(rawline interface{}) (interface{}, error) { + return types.NewRawLine(rawline.(string)) } -func (p *parser) callonHeaderGroupElement129() (interface{}, error) { +func (p *parser) callonCalloutListElementContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement129() + return p.cur.onCalloutListElementContent1(stack["rawline"]) } -func (c *current) onHeaderGroupElement136() (bool, error) { - return c.isSubstitutionEnabled(Replacements), nil +func (c *current) onShortcutParagraph16(firstLine interface{}) (bool, error) { + // also, make sure that there is no LabeledListElement delimiter (`::` - `::::`) + // in the middle of the line (with space afterwards) + // or at the end of the line + return !strings.Contains(string(firstLine.(types.RawLine)), ":: ") && + !strings.HasSuffix(string(firstLine.(types.RawLine)), "::"), nil } -func (p *parser) callonHeaderGroupElement136() (bool, error) { +func (p *parser) callonShortcutParagraph16() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement136() + return p.cur.onShortcutParagraph16(stack["firstLine"]) } -func (c *current) onHeaderGroupElement143() (interface{}, error) { - return types.NewSymbol("\"`") +func (c *current) onShortcutParagraph19(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonHeaderGroupElement143() (interface{}, error) { +func (p *parser) callonShortcutParagraph19() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement143() + return p.cur.onShortcutParagraph19(stack["line"]) } -func (c *current) onHeaderGroupElement145() (interface{}, error) { - return types.NewSymbol("`\"") +func (c *current) onShortcutParagraph1(firstLine, otherLines interface{}) (interface{}, error) { + return types.NewParagraph(append([]interface{}{firstLine}, otherLines.([]interface{})...)...) } -func (p *parser) callonHeaderGroupElement145() (interface{}, error) { +func (p *parser) callonShortcutParagraph1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement145() + return p.cur.onShortcutParagraph1(stack["firstLine"], stack["otherLines"]) } -func (c *current) onHeaderGroupElement147() (interface{}, error) { - return types.NewSymbol("'`") +func (c *current) onParagraph7(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonHeaderGroupElement147() (interface{}, error) { +func (p *parser) callonParagraph7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement147() + return p.cur.onParagraph7(stack["line"]) } -func (c *current) onHeaderGroupElement149() (interface{}, error) { - return types.NewSymbol("`'") +func (c *current) onParagraph1(firstLine, otherLines interface{}) (interface{}, error) { + return types.NewParagraph(append([]interface{}{firstLine}, otherLines.([]interface{})...)...) } -func (p *parser) callonHeaderGroupElement149() (interface{}, error) { +func (p *parser) callonParagraph1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement149() + return p.cur.onParagraph1(stack["firstLine"], stack["otherLines"]) } -func (c *current) onHeaderGroupElement151() (interface{}, error) { - return types.NewSymbol("(C)") +func (c *current) onAdmonitionParagraph10(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonHeaderGroupElement151() (interface{}, error) { +func (p *parser) callonAdmonitionParagraph10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement151() + return p.cur.onAdmonitionParagraph10(stack["line"]) } -func (c *current) onHeaderGroupElement153() (interface{}, error) { - return types.NewSymbol("(TM)") +func (c *current) onAdmonitionParagraph1(kind, firstLine, otherLines interface{}) (interface{}, error) { + + return types.NewAdmonitionParagraph(kind.(string), append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonHeaderGroupElement153() (interface{}, error) { +func (p *parser) callonAdmonitionParagraph1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement153() + return p.cur.onAdmonitionParagraph1(stack["kind"], stack["firstLine"], stack["otherLines"]) } -func (c *current) onHeaderGroupElement155() (interface{}, error) { - return types.NewSymbol("(R)") +func (c *current) onParagraphRawLine4() (interface{}, error) { + return strings.TrimRight(string(c.text), " \t"), nil // trim spaces and tabs } -func (p *parser) callonHeaderGroupElement155() (interface{}, error) { +func (p *parser) callonParagraphRawLine4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement155() + return p.cur.onParagraphRawLine4() } -func (c *current) onHeaderGroupElement157() (interface{}, error) { - return types.NewSymbol("...") +func (c *current) onParagraphRawLine7(content interface{}) (bool, error) { + return len(strings.TrimSpace(content.(string))) > 0, nil } -func (p *parser) callonHeaderGroupElement157() (interface{}, error) { +func (p *parser) callonParagraphRawLine7() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement157() + return p.cur.onParagraphRawLine7(stack["content"]) } -func (c *current) onHeaderGroupElement159() (interface{}, error) { - return types.NewSymbol("->") +func (c *current) onParagraphRawLine1(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonHeaderGroupElement159() (interface{}, error) { +func (p *parser) callonParagraphRawLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement159() + return p.cur.onParagraphRawLine1(stack["content"]) } -func (c *current) onHeaderGroupElement163() (bool, error) { - return c.isPreceededBySpace(), nil +func (c *current) onLiteralParagraph1(firstLine, otherLines interface{}) (interface{}, error) { + + return types.NewLiteralParagraph(types.LiteralBlockWithSpacesOnFirstLine, append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonHeaderGroupElement163() (bool, error) { +func (p *parser) callonLiteralParagraph1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement163() + return p.cur.onLiteralParagraph1(stack["firstLine"], stack["otherLines"]) } -func (c *current) onHeaderGroupElement166() (interface{}, error) { +func (c *current) onLiteralParagraphRawLine4() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonHeaderGroupElement166() (interface{}, error) { +func (p *parser) callonLiteralParagraphRawLine4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement166() + return p.cur.onLiteralParagraphRawLine4() } -func (c *current) onHeaderGroupElement170() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onLiteralParagraphRawLine9(content interface{}) (bool, error) { + return len(strings.TrimSpace(string(c.text))) > 0, nil + } -func (p *parser) callonHeaderGroupElement170() (interface{}, error) { +func (p *parser) callonLiteralParagraphRawLine9() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement170() + return p.cur.onLiteralParagraphRawLine9(stack["content"]) } -func (c *current) onHeaderGroupElement161() (interface{}, error) { - return types.NewSymbol(" -- ") +func (c *current) onLiteralParagraphRawLine1(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonHeaderGroupElement161() (interface{}, error) { +func (p *parser) callonLiteralParagraphRawLine1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement161() + return p.cur.onLiteralParagraphRawLine1(stack["content"]) } -func (c *current) onHeaderGroupElement179() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onQuotedText6() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement179() (bool, error) { +func (p *parser) callonQuotedText6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement179() + return p.cur.onQuotedText6() } -func (c *current) onHeaderGroupElement184() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onQuotedText2(attributes, text interface{}) (interface{}, error) { + log.Debugf("matched escaped quoted text") + return append([]interface{}{attributes}, text.([]interface{})...), nil + } -func (p *parser) callonHeaderGroupElement184() (interface{}, error) { +func (p *parser) callonQuotedText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement184() + return p.cur.onQuotedText2(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement177() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onQuotedText10(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement177() (interface{}, error) { +func (p *parser) callonQuotedText10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement177() + return p.cur.onQuotedText10(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement191() (interface{}, error) { - return types.NewSymbol("<-") +func (c *current) onEscapedQuotedText1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement191() (interface{}, error) { +func (p *parser) callonEscapedQuotedText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement191() + return p.cur.onEscapedQuotedText1(stack["element"]) } -func (c *current) onHeaderGroupElement193() (interface{}, error) { - return types.NewSymbol("=>") +func (c *current) onSubscriptOrSuperscriptPrefix3() (interface{}, error) { + // rule used within `words` to detect superscript or subscript portions, eg in math formulae. + return string(c.text), nil } -func (p *parser) callonHeaderGroupElement193() (interface{}, error) { +func (p *parser) callonSubscriptOrSuperscriptPrefix3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement193() + return p.cur.onSubscriptOrSuperscriptPrefix3() } -func (c *current) onHeaderGroupElement195() (interface{}, error) { - return types.NewSymbol("<=") +func (c *current) onOneOrMoreBackslashes1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonHeaderGroupElement195() (interface{}, error) { +func (p *parser) callonOneOrMoreBackslashes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement195() + return p.cur.onOneOrMoreBackslashes1() } -func (c *current) onHeaderGroupElement139() (interface{}, error) { - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onTwoOrMoreBackslashes1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonHeaderGroupElement139() (interface{}, error) { +func (p *parser) callonTwoOrMoreBackslashes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement139() + return p.cur.onTwoOrMoreBackslashes1() } -func (c *current) onHeaderGroupElement197() (interface{}, error) { - return types.NewSymbol("\"`") +func (c *current) onBoldTextWord1() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement197() (interface{}, error) { +func (p *parser) callonBoldTextWord1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement197() + return p.cur.onBoldTextWord1() } -func (c *current) onHeaderGroupElement199() (interface{}, error) { - return types.NewSymbol("`\"") +func (c *current) onDoubleQuoteBoldText1(elements interface{}) (interface{}, error) { + return types.NewQuotedText(types.DoubleQuoteBold, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement199() (interface{}, error) { +func (p *parser) callonDoubleQuoteBoldText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement199() + return p.cur.onDoubleQuoteBoldText1(stack["elements"]) } -func (c *current) onHeaderGroupElement201() (interface{}, error) { - return types.NewSymbol("'`") +func (c *current) onDoubleQuoteBoldTextElement1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement201() (interface{}, error) { +func (p *parser) callonDoubleQuoteBoldTextElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement201() + return p.cur.onDoubleQuoteBoldTextElement1(stack["element"]) } -func (c *current) onHeaderGroupElement203() (interface{}, error) { - return types.NewSymbol("`'") +func (c *current) onQuotedTextInDoubleQuoteBoldText1(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement203() (interface{}, error) { +func (p *parser) callonQuotedTextInDoubleQuoteBoldText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement203() + return p.cur.onQuotedTextInDoubleQuoteBoldText1(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement205() (interface{}, error) { - return types.NewSymbol("(C)") +func (c *current) onDoubleQuoteBoldTextFallbackCharacter3() (interface{}, error) { + // or a bold delimiter when immediately followed by an alphanum (ie, in the middle of some text) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement205() (interface{}, error) { +func (p *parser) callonDoubleQuoteBoldTextFallbackCharacter3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement205() + return p.cur.onDoubleQuoteBoldTextFallbackCharacter3() } -func (c *current) onHeaderGroupElement207() (interface{}, error) { - return types.NewSymbol("(TM)") +func (c *current) onSingleQuoteBoldText1(elements interface{}) (interface{}, error) { + return types.NewQuotedText(types.SingleQuoteBold, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement207() (interface{}, error) { +func (p *parser) callonSingleQuoteBoldText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement207() + return p.cur.onSingleQuoteBoldText1(stack["elements"]) } -func (c *current) onHeaderGroupElement209() (interface{}, error) { - return types.NewSymbol("(R)") +func (c *current) onSingleQuoteBoldTextElements10(elements interface{}) (bool, error) { + return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces } -func (p *parser) callonHeaderGroupElement209() (interface{}, error) { +func (p *parser) callonSingleQuoteBoldTextElements10() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement209() + return p.cur.onSingleQuoteBoldTextElements10(stack["elements"]) } -func (c *current) onHeaderGroupElement211() (interface{}, error) { - return types.NewSymbol("...") +func (c *current) onSingleQuoteBoldTextElements1(elements interface{}) (interface{}, error) { + return elements, nil } -func (p *parser) callonHeaderGroupElement211() (interface{}, error) { +func (p *parser) callonSingleQuoteBoldTextElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement211() + return p.cur.onSingleQuoteBoldTextElements1(stack["elements"]) } -func (c *current) onHeaderGroupElement215() (bool, error) { - return c.isPreceededBySpace(), nil +func (c *current) onQuotedTextInSingleQuoteBoldText2(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement215() (bool, error) { +func (p *parser) callonQuotedTextInSingleQuoteBoldText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement215() + return p.cur.onQuotedTextInSingleQuoteBoldText2(stack["element"]) } -func (c *current) onHeaderGroupElement218() (interface{}, error) { - return string(c.text), nil +func (c *current) onQuotedTextInSingleQuoteBoldText13(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement218() (interface{}, error) { +func (p *parser) callonQuotedTextInSingleQuoteBoldText13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement218() + return p.cur.onQuotedTextInSingleQuoteBoldText13(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement222() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onSingleQuoteBoldTextFallbackCharacter3() (interface{}, error) { + // or a bold delimiter when immediately followed by an alphanum (ie, in the middle of some text) + return types.NewStringElement(string(c.text)) + } -func (p *parser) callonHeaderGroupElement222() (interface{}, error) { +func (p *parser) callonSingleQuoteBoldTextFallbackCharacter3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement222() + return p.cur.onSingleQuoteBoldTextFallbackCharacter3() } -func (c *current) onHeaderGroupElement213() (interface{}, error) { - return types.NewSymbol(" -- ") +func (c *current) onEscapedBoldText2(backslashes, elements interface{}) (interface{}, error) { + + return types.NewEscapedQuotedText(backslashes.(string), "**", elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement213() (interface{}, error) { +func (p *parser) callonEscapedBoldText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement213() + return p.cur.onEscapedBoldText2(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement231() (bool, error) { - return c.isPreceededByAlphanum(), nil +func (c *current) onEscapedBoldText10(backslashes, elements interface{}) (interface{}, error) { + + result := append([]interface{}{"*"}, elements.([]interface{})) + return types.NewEscapedQuotedText(backslashes.(string), "*", result) } -func (p *parser) callonHeaderGroupElement231() (bool, error) { +func (p *parser) callonEscapedBoldText10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement231() + return p.cur.onEscapedBoldText10(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement236() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onEscapedBoldText18(backslashes, elements interface{}) (interface{}, error) { + + return types.NewEscapedQuotedText(backslashes.(string), "*", elements.([]interface{})) + } -func (p *parser) callonHeaderGroupElement236() (interface{}, error) { +func (p *parser) callonEscapedBoldText18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement236() + return p.cur.onEscapedBoldText18(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement229() (interface{}, error) { - return types.NewSymbol("--") +func (c *current) onItalicTextWord1() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement229() (interface{}, error) { +func (p *parser) callonItalicTextWord1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement229() + return p.cur.onItalicTextWord1() } -func (c *current) onHeaderGroupElement243() (interface{}, error) { - return types.NewSymbol("->") +func (c *current) onDoubleQuoteItalicText1(elements interface{}) (interface{}, error) { + // double punctuation must be evaluated first + return types.NewQuotedText(types.DoubleQuoteItalic, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement243() (interface{}, error) { +func (p *parser) callonDoubleQuoteItalicText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement243() + return p.cur.onDoubleQuoteItalicText1(stack["elements"]) } -func (c *current) onHeaderGroupElement245() (interface{}, error) { - return types.NewSymbol("<-") +func (c *current) onDoubleQuoteItalicTextElement1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement245() (interface{}, error) { +func (p *parser) callonDoubleQuoteItalicTextElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement245() + return p.cur.onDoubleQuoteItalicTextElement1(stack["element"]) } -func (c *current) onHeaderGroupElement247() (interface{}, error) { - return types.NewSymbol("=>") +func (c *current) onQuotedTextInDoubleQuoteItalicText2(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement247() (interface{}, error) { +func (p *parser) callonQuotedTextInDoubleQuoteItalicText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement247() + return p.cur.onQuotedTextInDoubleQuoteItalicText2(stack["element"]) } -func (c *current) onHeaderGroupElement249() (interface{}, error) { - return types.NewSymbol("<=") +func (c *current) onQuotedTextInDoubleQuoteItalicText13(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement249() (interface{}, error) { +func (p *parser) callonQuotedTextInDoubleQuoteItalicText13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement249() + return p.cur.onQuotedTextInDoubleQuoteItalicText13(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement251() (interface{}, error) { - log.Debug("matched escaped apostrophe") - return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char +func (c *current) onDoubleQuoteItalicTextFallbackCharacter3() (interface{}, error) { + // or a italic delimiter when immediately followed by an alphanum (ie, in the middle of some text) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement251() (interface{}, error) { +func (p *parser) callonDoubleQuoteItalicTextFallbackCharacter3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement251() + return p.cur.onDoubleQuoteItalicTextFallbackCharacter3() } -func (c *current) onHeaderGroupElement257() (interface{}, error) { - return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) +func (c *current) onSingleQuoteItalicText1(elements interface{}) (interface{}, error) { + + return types.NewQuotedText(types.SingleQuoteItalic, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement257() (interface{}, error) { +func (p *parser) callonSingleQuoteItalicText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement257() + return p.cur.onSingleQuoteItalicText1(stack["elements"]) } -func (c *current) onHeaderGroupElement134(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onSingleQuoteItalicTextElements10(elements interface{}) (bool, error) { + return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces } -func (p *parser) callonHeaderGroupElement134() (interface{}, error) { +func (p *parser) callonSingleQuoteItalicTextElements10() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement134(stack["element"]) + return p.cur.onSingleQuoteItalicTextElements10(stack["elements"]) } -func (c *current) onHeaderGroupElement265() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil +func (c *current) onSingleQuoteItalicTextElements1(elements interface{}) (interface{}, error) { + return elements, nil } -func (p *parser) callonHeaderGroupElement265() (bool, error) { +func (p *parser) callonSingleQuoteItalicTextElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement265() + return p.cur.onSingleQuoteItalicTextElements1(stack["elements"]) } -func (c *current) onHeaderGroupElement274() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onQuotedTextInSingleQuoteItalicText2(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement274() (interface{}, error) { +func (p *parser) callonQuotedTextInSingleQuoteItalicText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement274() + return p.cur.onQuotedTextInSingleQuoteItalicText2(stack["element"]) } -func (c *current) onHeaderGroupElement278() (interface{}, error) { - return string(c.text), nil +func (c *current) onQuotedTextInSingleQuoteItalicText13(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement278() (interface{}, error) { +func (p *parser) callonQuotedTextInSingleQuoteItalicText13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement278() + return p.cur.onQuotedTextInSingleQuoteItalicText13(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement284() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references +func (c *current) onSingleQuoteItalicTextFallbackCharacter3() (interface{}, error) { + // or an italic delimiter when immediately followed by an alphanum (ie, in the middle of some text) return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement284() (interface{}, error) { +func (p *parser) callonSingleQuoteItalicTextFallbackCharacter3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement284() + return p.cur.onSingleQuoteItalicTextFallbackCharacter3() } -func (c *current) onHeaderGroupElement293() (interface{}, error) { - return string(c.text), nil +func (c *current) onEscapedItalicText2(backslashes, elements interface{}) (interface{}, error) { + return types.NewEscapedQuotedText(backslashes.(string), "__", elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement293() (interface{}, error) { +func (p *parser) callonEscapedItalicText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement293() + return p.cur.onEscapedItalicText2(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement289(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onEscapedItalicText10(backslashes, elements interface{}) (interface{}, error) { + // unbalanced `__` vs `_` punctuation + result := append([]interface{}{"_"}, elements.([]interface{})) + return types.NewEscapedQuotedText(backslashes.(string), "_", result) } -func (p *parser) callonHeaderGroupElement289() (interface{}, error) { +func (p *parser) callonEscapedItalicText10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement289(stack["name"]) + return p.cur.onEscapedItalicText10(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement303() (interface{}, error) { - return string(c.text), nil +func (c *current) onEscapedItalicText18(backslashes, elements interface{}) (interface{}, error) { + // simple punctuation must be evaluated last + return types.NewEscapedQuotedText(backslashes.(string), "_", elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement303() (interface{}, error) { +func (p *parser) callonEscapedItalicText18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement303() + return p.cur.onEscapedItalicText18(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement299(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) +func (c *current) onMonospaceTextWord1() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement299() (interface{}, error) { +func (p *parser) callonMonospaceTextWord1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement299(stack["name"]) + return p.cur.onMonospaceTextWord1() } -func (c *current) onHeaderGroupElement309() (interface{}, error) { +func (c *current) onDoubleQuoteMonospaceText1(elements interface{}) (interface{}, error) { - return types.NewStringElement(string(c.text)) + return types.NewQuotedText(types.DoubleQuoteMonospace, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement309() (interface{}, error) { +func (p *parser) callonDoubleQuoteMonospaceText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement309() + return p.cur.onDoubleQuoteMonospaceText1(stack["elements"]) } -func (c *current) onHeaderGroupElement270(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onDoubleQuoteMonospaceTextElement1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement270() (interface{}, error) { +func (p *parser) callonDoubleQuoteMonospaceTextElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement270(stack["id"], stack["label"]) + return p.cur.onDoubleQuoteMonospaceTextElement1(stack["element"]) } -func (c *current) onHeaderGroupElement316() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onQuotedTextInDoubleQuoteMonospaceText2(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement316() (interface{}, error) { +func (p *parser) callonQuotedTextInDoubleQuoteMonospaceText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement316() + return p.cur.onQuotedTextInDoubleQuoteMonospaceText2(stack["element"]) } -func (c *current) onHeaderGroupElement312(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onQuotedTextInDoubleQuoteMonospaceText13(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement312() (interface{}, error) { +func (p *parser) callonQuotedTextInDoubleQuoteMonospaceText13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement312(stack["id"]) + return p.cur.onQuotedTextInDoubleQuoteMonospaceText13(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement268() (interface{}, error) { +func (c *current) onDoubleQuoteMonospaceTextFallbackCharacter3() (interface{}, error) { + // ` or a monospace delimiter when immediately followed by an alphanum (ie, in the middle of some text) return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement268() (interface{}, error) { +func (p *parser) callonDoubleQuoteMonospaceTextFallbackCharacter3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement268() + return p.cur.onDoubleQuoteMonospaceTextFallbackCharacter3() } -func (c *current) onHeaderGroupElement320() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onSingleQuoteMonospaceText1(elements interface{}) (interface{}, error) { + + return types.NewQuotedText(types.SingleQuoteMonospace, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement320() (interface{}, error) { +func (p *parser) callonSingleQuoteMonospaceText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement320() + return p.cur.onSingleQuoteMonospaceText1(stack["elements"]) } -func (c *current) onHeaderGroupElement263(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onSingleQuoteMonospaceTextElements10(elements interface{}) (bool, error) { + return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces } -func (p *parser) callonHeaderGroupElement263() (interface{}, error) { +func (p *parser) callonSingleQuoteMonospaceTextElements10() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement263(stack["element"]) + return p.cur.onSingleQuoteMonospaceTextElements10(stack["elements"]) } -func (c *current) onHeaderGroupElement325() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil +func (c *current) onSingleQuoteMonospaceTextElements1(elements interface{}) (interface{}, error) { + return elements, nil } -func (p *parser) callonHeaderGroupElement325() (bool, error) { +func (p *parser) callonSingleQuoteMonospaceTextElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement325() + return p.cur.onSingleQuoteMonospaceTextElements1(stack["elements"]) } -func (c *current) onHeaderGroupElement332() (interface{}, error) { - return string(c.text), nil +func (c *current) onQuotedTextInSingleQuoteMonospaceText2(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement332() (interface{}, error) { +func (p *parser) callonQuotedTextInSingleQuoteMonospaceText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement332() + return p.cur.onQuotedTextInSingleQuoteMonospaceText2(stack["element"]) } -func (c *current) onHeaderGroupElement344() (interface{}, error) { - return string(c.text), nil +func (c *current) onQuotedTextInSingleQuoteMonospaceText13(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement344() (interface{}, error) { +func (p *parser) callonQuotedTextInSingleQuoteMonospaceText13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement344() + return p.cur.onQuotedTextInSingleQuoteMonospaceText13(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement346() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onSingleQuoteMonospaceTextFallbackCharacter1() (interface{}, error) { + // or an monospace delimiter when immediately followed by an alphanum (ie, in the middle of some text) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement346() (interface{}, error) { +func (p *parser) callonSingleQuoteMonospaceTextFallbackCharacter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement346() + return p.cur.onSingleQuoteMonospaceTextFallbackCharacter1() } -func (c *current) onHeaderGroupElement339(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onEscapedMonospaceText2(backslashes, elements interface{}) (interface{}, error) { + return types.NewEscapedQuotedText(backslashes.(string), "``", elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement339() (interface{}, error) { +func (p *parser) callonEscapedMonospaceText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement339(stack["start"]) + return p.cur.onEscapedMonospaceText2(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement328(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +func (c *current) onEscapedMonospaceText10(backslashes, elements interface{}) (interface{}, error) { + result := append([]interface{}{"`"}, elements.([]interface{})) + return types.NewEscapedQuotedText(backslashes.(string), "`", result) + } -func (p *parser) callonHeaderGroupElement328() (interface{}, error) { +func (p *parser) callonEscapedMonospaceText10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement328(stack["name"], stack["start"]) + return p.cur.onEscapedMonospaceText10(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement354() (interface{}, error) { - return string(c.text), nil +func (c *current) onEscapedMonospaceText18(backslashes, elements interface{}) (interface{}, error) { + return types.NewEscapedQuotedText(backslashes.(string), "`", elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement354() (interface{}, error) { +func (p *parser) callonEscapedMonospaceText18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement354() + return p.cur.onEscapedMonospaceText18(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement366() (interface{}, error) { - return string(c.text), nil +func (c *current) onMarkedTextWord1() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement366() (interface{}, error) { +func (p *parser) callonMarkedTextWord1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement366() + return p.cur.onMarkedTextWord1() } -func (c *current) onHeaderGroupElement368() (interface{}, error) { +func (c *current) onDoubleQuoteMarkedText1(elements interface{}) (interface{}, error) { - return strconv.Atoi(string(c.text)) + return types.NewQuotedText(types.DoubleQuoteMarked, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement368() (interface{}, error) { +func (p *parser) callonDoubleQuoteMarkedText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement368() -} - -func (c *current) onHeaderGroupElement361(start interface{}) (interface{}, error) { - return start, nil - + return p.cur.onDoubleQuoteMarkedText1(stack["elements"]) } -func (p *parser) callonHeaderGroupElement361() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onHeaderGroupElement361(stack["start"]) -} +func (c *current) onDoubleQuoteMarkedTextElement1(element interface{}) (interface{}, error) { + return element, nil -func (c *current) onHeaderGroupElement350(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonHeaderGroupElement350() (interface{}, error) { +func (p *parser) callonDoubleQuoteMarkedTextElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement350(stack["name"], stack["start"]) + return p.cur.onDoubleQuoteMarkedTextElement1(stack["element"]) } -func (c *current) onHeaderGroupElement376() (interface{}, error) { - return string(c.text), nil +func (c *current) onQuotedTextInDoubleMarkedBoldText2(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement376() (interface{}, error) { +func (p *parser) callonQuotedTextInDoubleMarkedBoldText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement376() + return p.cur.onQuotedTextInDoubleMarkedBoldText2(stack["element"]) } -func (c *current) onHeaderGroupElement372(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onQuotedTextInDoubleMarkedBoldText13(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement372() (interface{}, error) { +func (p *parser) callonQuotedTextInDoubleMarkedBoldText13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement372(stack["name"]) + return p.cur.onQuotedTextInDoubleMarkedBoldText13(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement386() (interface{}, error) { - return string(c.text), nil +func (c *current) onDoubleQuoteMarkedTextFallbackCharacter3() (interface{}, error) { + // or a marked delimiter when immediately followed by an alphanum (ie, in the middle of some text) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement386() (interface{}, error) { +func (p *parser) callonDoubleQuoteMarkedTextFallbackCharacter3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement386() + return p.cur.onDoubleQuoteMarkedTextFallbackCharacter3() } -func (c *current) onHeaderGroupElement382(name interface{}) (interface{}, error) { +func (c *current) onSingleQuoteMarkedText1(elements interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string), string(c.text)) + return types.NewQuotedText(types.SingleQuoteMarked, elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement382() (interface{}, error) { +func (p *parser) callonSingleQuoteMarkedText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement382(stack["name"]) + return p.cur.onSingleQuoteMarkedText1(stack["elements"]) } -func (c *current) onHeaderGroupElement323(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onSingleQuoteMarkedTextElements10(elements interface{}) (bool, error) { + return validateSingleQuoteElements(elements.([]interface{})) // cannot end with spaces } -func (p *parser) callonHeaderGroupElement323() (interface{}, error) { +func (p *parser) callonSingleQuoteMarkedTextElements10() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement323(stack["element"]) -} - -func (c *current) onHeaderGroupElement396() (interface{}, error) { - return string(c.text), nil + return p.cur.onSingleQuoteMarkedTextElements10(stack["elements"]) } -func (p *parser) callonHeaderGroupElement396() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onHeaderGroupElement396() -} +func (c *current) onSingleQuoteMarkedTextElements1(elements interface{}) (interface{}, error) { + return elements, nil -func (c *current) onHeaderGroupElement392(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonHeaderGroupElement392() (interface{}, error) { +func (p *parser) callonSingleQuoteMarkedTextElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement392(stack["ref"]) + return p.cur.onSingleQuoteMarkedTextElements1(stack["elements"]) } -func (c *current) onHeaderGroupElement404() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onQuotedTextInSingleQuoteMarkedText2(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonHeaderGroupElement404() (interface{}, error) { +func (p *parser) callonQuotedTextInSingleQuoteMarkedText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement404() + return p.cur.onQuotedTextInSingleQuoteMarkedText2(stack["element"]) } -func (c *current) onHeaderGroupElement400(id interface{}) (interface{}, error) { - //return types.NewStringElement("[[" + id.(string) + "]]") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onQuotedTextInSingleQuoteMarkedText13(attributes, text interface{}) (interface{}, error) { + return text.(*types.QuotedText).WithAttributes(attributes) } -func (p *parser) callonHeaderGroupElement400() (interface{}, error) { +func (p *parser) callonQuotedTextInSingleQuoteMarkedText13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement400(stack["id"]) + return p.cur.onQuotedTextInSingleQuoteMarkedText13(stack["attributes"], stack["text"]) } -func (c *current) onHeaderGroupElement412() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onSingleQuoteMarkedTextFallbackCharacter3() (interface{}, error) { + // or a mark delimiter when immediately followed by an alphanum (ie, in the middle of some text) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonHeaderGroupElement412() (interface{}, error) { +func (p *parser) callonSingleQuoteMarkedTextFallbackCharacter3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement412() + return p.cur.onSingleQuoteMarkedTextFallbackCharacter3() } -func (c *current) onHeaderGroupElement408(id interface{}) (interface{}, error) { - // no EOL here since there can be multiple InlineElementID on the same line - return types.NewInlineAnchor(id.(string)) +func (c *current) onEscapedMarkedText2(backslashes, elements interface{}) (interface{}, error) { + return types.NewEscapedQuotedText(backslashes.(string), "##", elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement408() (interface{}, error) { +func (p *parser) callonEscapedMarkedText2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement408(stack["id"]) + return p.cur.onEscapedMarkedText2(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement417() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onEscapedMarkedText10(backslashes, elements interface{}) (interface{}, error) { + result := append([]interface{}{"#"}, elements.([]interface{})) + return types.NewEscapedQuotedText(backslashes.(string), "#", result) } -func (p *parser) callonHeaderGroupElement417() (interface{}, error) { +func (p *parser) callonEscapedMarkedText10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement417() + return p.cur.onEscapedMarkedText10(stack["backslashes"], stack["elements"]) } -func (c *current) onHeaderGroupElement1(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onEscapedMarkedText18(backslashes, elements interface{}) (interface{}, error) { + return types.NewEscapedQuotedText(backslashes.(string), "#", elements.([]interface{})) } -func (p *parser) callonHeaderGroupElement1() (interface{}, error) { +func (p *parser) callonEscapedMarkedText18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onHeaderGroupElement1(stack["element"]) + return p.cur.onEscapedMarkedText18(stack["backslashes"], stack["elements"]) } -func (c *current) onInlineMacro3() (bool, error) { - return c.isSubstitutionEnabled(Macros), nil +func (c *current) onSubscriptText1(element interface{}) (interface{}, error) { + // wraps a single word + return types.NewQuotedText(types.SingleQuoteSubscript, element) } -func (p *parser) callonInlineMacro3() (bool, error) { +func (p *parser) callonSubscriptText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro3() + return p.cur.onSubscriptText1(stack["element"]) } -func (c *current) onInlineMacro17() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onNonSubscriptText1() (interface{}, error) { + // anything except spaces, EOL or '~' + return c.text, nil } -func (p *parser) callonInlineMacro17() (interface{}, error) { +func (p *parser) callonNonSubscriptText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro17() + return p.cur.onNonSubscriptText1() } -func (c *current) onInlineMacro13(id interface{}) (interface{}, error) { - //return types.NewStringElement("[[" + id.(string) + "]]") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onEscapedSubscriptText1(backslashes, element interface{}) (interface{}, error) { + // simple punctuation must be evaluated last + return types.NewEscapedQuotedText(backslashes.(string), "~", element) } -func (p *parser) callonInlineMacro13() (interface{}, error) { +func (p *parser) callonEscapedSubscriptText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro13(stack["id"]) + return p.cur.onEscapedSubscriptText1(stack["backslashes"], stack["element"]) } -func (c *current) onInlineMacro25() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onSuperscriptText1(element interface{}) (interface{}, error) { + // wraps a single word + return types.NewQuotedText(types.SingleQuoteSuperscript, element) } -func (p *parser) callonInlineMacro25() (interface{}, error) { +func (p *parser) callonSuperscriptText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro25() + return p.cur.onSuperscriptText1(stack["element"]) } -func (c *current) onInlineMacro21(id interface{}) (interface{}, error) { - // no EOL here since there can be multiple InlineElementID on the same line - return types.NewInlineAnchor(id.(string)) +func (c *current) onNonSuperscriptText1() (interface{}, error) { + // anything except spaces, EOL or '^' + return c.text, nil } -func (p *parser) callonInlineMacro21() (interface{}, error) { +func (p *parser) callonNonSuperscriptText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro21(stack["id"]) + return p.cur.onNonSuperscriptText1() } -func (c *current) onInlineMacro37() (interface{}, error) { - return string(c.text), nil +func (c *current) onEscapedSuperscriptText1(backslashes, element interface{}) (interface{}, error) { + // simple punctuation must be evaluated last + return types.NewEscapedQuotedText(backslashes.(string), "^", element) } -func (p *parser) callonInlineMacro37() (interface{}, error) { +func (p *parser) callonEscapedSuperscriptText1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro37() + return p.cur.onEscapedSuperscriptText1(stack["backslashes"], stack["element"]) } -func (c *current) onInlineMacro33() (interface{}, error) { - return string(c.text), nil +func (c *current) onSection3() (bool, error) { + + return !c.isWithinDelimitedBlock(), nil + } -func (p *parser) callonInlineMacro33() (interface{}, error) { +func (p *parser) callonSection3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro33() + return p.cur.onSection3() } -func (c *current) onInlineMacro44() (interface{}, error) { - return string(c.text), nil +func (c *current) onSection5() (interface{}, error) { + + // `=` is level 0, `==` is level 1, etc. + return (len(c.text) - 1), nil } -func (p *parser) callonInlineMacro44() (interface{}, error) { +func (p *parser) callonSection5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro44() + return p.cur.onSection5() } -func (c *current) onInlineMacro48() (interface{}, error) { - return string(c.text), nil +func (c *current) onSection8(level interface{}) (bool, error) { + + // use a predicate to make sure that only `=` (level 0) to `======` (level 5) are allowed + return level.(int) <= 5, nil } -func (p *parser) callonInlineMacro48() (interface{}, error) { +func (p *parser) callonSection8() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro48() + return p.cur.onSection8(stack["level"]) } -func (c *current) onInlineMacro55() (interface{}, error) { - return string(c.text), nil +func (c *current) onSection1(level, title interface{}) (interface{}, error) { + return types.NewSection(level.(int), title.([]interface{})) } -func (p *parser) callonInlineMacro55() (interface{}, error) { +func (p *parser) callonSection1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro55() + return p.cur.onSection1(stack["level"], stack["title"]) } -func (c *current) onInlineMacro51() (interface{}, error) { - return string(c.text), nil +func (c *current) onSectionTitle1() (interface{}, error) { + // can't have empty title, that may collide with example block delimiter (`====`) + return []interface{}{ + types.RawLine(c.text), + }, nil + } -func (p *parser) callonInlineMacro51() (interface{}, error) { +func (p *parser) callonSectionTitle1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro51() + return p.cur.onSectionTitle1() } -func (c *current) onInlineMacro41(content interface{}) (interface{}, error) { - return content, nil +func (c *current) onSubstitutions5(element interface{}) (interface{}, error) { + c.trackSuffix(element) + return element, nil + } -func (p *parser) callonInlineMacro41() (interface{}, error) { +func (p *parser) callonSubstitutions5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro41(stack["content"]) + return p.cur.onSubstitutions5(stack["element"]) } -func (c *current) onInlineMacro62() (interface{}, error) { - return string(c.text), nil +func (c *current) onSubstitutions1(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements) } -func (p *parser) callonInlineMacro62() (interface{}, error) { +func (p *parser) callonSubstitutions1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro62() + return p.cur.onSubstitutions1(stack["elements"]) } -func (c *current) onInlineMacro66() (interface{}, error) { - return string(c.text), nil +func (c *current) onAttributeStructuredValue1(elements interface{}) (interface{}, error) { + + return types.NewInlineElements(elements) } -func (p *parser) callonInlineMacro66() (interface{}, error) { +func (p *parser) callonAttributeStructuredValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro66() + return p.cur.onAttributeStructuredValue1(stack["elements"]) } -func (c *current) onInlineMacro73() (interface{}, error) { - return string(c.text), nil +func (c *current) onHeaderGroup1(elements interface{}) (interface{}, error) { + + return types.NewInlineElements(elements) } -func (p *parser) callonInlineMacro73() (interface{}, error) { +func (p *parser) callonHeaderGroup1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro73() + return p.cur.onHeaderGroup1(stack["elements"]) } -func (c *current) onInlineMacro69() (interface{}, error) { - return string(c.text), nil +func (c *current) onHeaderGroupElement8(id interface{}) (interface{}, error) { + return id, nil } -func (p *parser) callonInlineMacro69() (interface{}, error) { +func (p *parser) callonHeaderGroupElement8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro69() + return p.cur.onHeaderGroupElement8(stack["id"]) } -func (c *current) onInlineMacro59(content interface{}) (interface{}, error) { - return content, nil +func (c *current) onHeaderGroupElement1(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonInlineMacro59() (interface{}, error) { +func (p *parser) callonHeaderGroupElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro59(stack["content"]) + return p.cur.onHeaderGroupElement1(stack["element"]) } -func (c *current) onInlineMacro29(term1, term2, term3 interface{}) (interface{}, error) { - return types.NewConcealedIndexTerm(term1, term2, term3) +func (c *current) onInlineMacro3() (bool, error) { + return c.isSubstitutionEnabled(Macros), nil } -func (p *parser) callonInlineMacro29() (interface{}, error) { +func (p *parser) callonInlineMacro3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineMacro29(stack["term1"], stack["term2"], stack["term3"]) + return p.cur.onInlineMacro3() } func (c *current) onInlineMacro1(element interface{}) (interface{}, error) { @@ -107132,877 +20676,846 @@ func (p *parser) callonInlinePassthrough3() (bool, error) { return p.cur.onInlinePassthrough3() } -func (c *current) onInlinePassthrough11() (interface{}, error) { - // spaces and newlines are also allowed in the first or last position of the content and elsewhere too - return types.NewStringElement(string(c.text)) +func (c *current) onInlinePassthrough1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonInlinePassthrough11() (interface{}, error) { +func (p *parser) callonInlinePassthrough1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough11() -} - -func (c *current) onInlinePassthrough21() (interface{}, error) { - return string(c.text), nil - + return p.cur.onInlinePassthrough1(stack["element"]) } -func (p *parser) callonInlinePassthrough21() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onInlinePassthrough21() -} +func (c *current) onQuote2() (bool, error) { + return c.isSubstitutionEnabled(Quotes), nil -func (c *current) onInlinePassthrough24() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil } -func (p *parser) callonInlinePassthrough24() (interface{}, error) { +func (p *parser) callonQuote2() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough24() + return p.cur.onQuote2() } -func (c *current) onInlinePassthrough17() (interface{}, error) { - // a single character - return types.NewStringElement(string(c.text)) +func (c *current) onReplacement3() (bool, error) { + return c.isSubstitutionEnabled(Replacements), nil } -func (p *parser) callonInlinePassthrough17() (interface{}, error) { +func (p *parser) callonReplacement3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough17() + return p.cur.onReplacement3() } -func (c *current) onInlinePassthrough6(content interface{}) (interface{}, error) { - return types.NewInlinePassthrough(types.TriplePlusPassthrough, []interface{}{content}) +func (c *current) onReplacement1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonInlinePassthrough6() (interface{}, error) { +func (p *parser) callonReplacement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough6(stack["content"]) + return p.cur.onReplacement1(stack["element"]) } -func (c *current) onInlinePassthrough45() (interface{}, error) { - return string(c.text), nil +func (c *current) onSpecialCharacter3() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters), nil } -func (p *parser) callonInlinePassthrough45() (interface{}, error) { +func (p *parser) callonSpecialCharacter3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough45() + return p.cur.onSpecialCharacter3() } -func (c *current) onInlinePassthrough48() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onSpecialCharacter6() (interface{}, error) { + return types.NewStringElement(string(c.text)) + } -func (p *parser) callonInlinePassthrough48() (interface{}, error) { +func (p *parser) callonSpecialCharacter6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough48() + return p.cur.onSpecialCharacter6() } -func (c *current) onInlinePassthrough58() (interface{}, error) { - // log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onSpecialCharacter8() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonInlinePassthrough58() (interface{}, error) { +func (p *parser) callonSpecialCharacter8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough58() + return p.cur.onSpecialCharacter8() } -func (c *current) onInlinePassthrough65() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onSpecialCharacter1(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonInlinePassthrough65() (interface{}, error) { +func (p *parser) callonSpecialCharacter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough65() + return p.cur.onSpecialCharacter1(stack["element"]) } -func (c *current) onInlinePassthrough40() (interface{}, error) { - // no space in the first or last position of the content, but allowed elsewhere - return types.NewStringElement(string(c.text)) +func (c *current) onSingleLineComment1(content interface{}) (interface{}, error) { + return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonInlinePassthrough40() (interface{}, error) { +func (p *parser) callonSingleLineComment1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough40() + return p.cur.onSingleLineComment1(stack["content"]) } -func (c *current) onInlinePassthrough74() (interface{}, error) { +func (c *current) onSingleLineCommentContent1() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonInlinePassthrough74() (interface{}, error) { +func (p *parser) callonSingleLineCommentContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough74() + return p.cur.onSingleLineCommentContent1() } -func (c *current) onInlinePassthrough77() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onSymbol2() (interface{}, error) { + return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) + } -func (p *parser) callonInlinePassthrough77() (interface{}, error) { +func (p *parser) callonSymbol2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough77() + return p.cur.onSymbol2() } -func (c *current) onInlinePassthrough71() (interface{}, error) { - // a single character - return types.NewStringElement(string(c.text)) +func (c *current) onQuotationMark2() (interface{}, error) { + return types.NewSymbol("\"`") } -func (p *parser) callonInlinePassthrough71() (interface{}, error) { +func (p *parser) callonQuotationMark2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough71() + return p.cur.onQuotationMark2() } -func (c *current) onInlinePassthrough35(content interface{}) (interface{}, error) { - return types.NewInlinePassthrough(types.SinglePlusPassthrough, []interface{}{content}) +func (c *current) onQuotationMark4() (interface{}, error) { + return types.NewSymbol("`\"") } -func (p *parser) callonInlinePassthrough35() (interface{}, error) { +func (p *parser) callonQuotationMark4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough35(stack["content"]) + return p.cur.onQuotationMark4() } -func (c *current) onInlinePassthrough1(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onQuotationMark6() (interface{}, error) { + return types.NewSymbol("'`") } -func (p *parser) callonInlinePassthrough1() (interface{}, error) { +func (p *parser) callonQuotationMark6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlinePassthrough1(stack["element"]) + return p.cur.onQuotationMark6() } -func (c *current) onQuote2() (bool, error) { - return c.isSubstitutionEnabled(Quotes), nil +func (c *current) onQuotationMark8() (interface{}, error) { + return types.NewSymbol("`'") } -func (p *parser) callonQuote2() (bool, error) { +func (p *parser) callonQuotationMark8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuote2() + return p.cur.onQuotationMark8() } -func (c *current) onTableColumnsAttribute15() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onCopyright1() (interface{}, error) { + return types.NewSymbol("(C)") } -func (p *parser) callonTableColumnsAttribute15() (interface{}, error) { +func (p *parser) callonCopyright1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute15() + return p.cur.onCopyright1() } -func (c *current) onTableColumnsAttribute12(n interface{}) (interface{}, error) { - return n, nil -} - -func (p *parser) callonTableColumnsAttribute12() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onTableColumnsAttribute12(stack["n"]) -} +func (c *current) onTrademark1() (interface{}, error) { + return types.NewSymbol("(TM)") -func (c *current) onTableColumnsAttribute25() (interface{}, error) { - return types.HAlignLeft, nil } -func (p *parser) callonTableColumnsAttribute25() (interface{}, error) { +func (p *parser) callonTrademark1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute25() + return p.cur.onTrademark1() } -func (c *current) onTableColumnsAttribute27() (interface{}, error) { - return types.HAlignRight, nil +func (c *current) onRegistered1() (interface{}, error) { + return types.NewSymbol("(R)") + } -func (p *parser) callonTableColumnsAttribute27() (interface{}, error) { +func (p *parser) callonRegistered1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute27() + return p.cur.onRegistered1() } -func (c *current) onTableColumnsAttribute29() (interface{}, error) { - return types.HAlignCenter, nil +func (c *current) onEllipsis1() (interface{}, error) { + return types.NewSymbol("...") + } -func (p *parser) callonTableColumnsAttribute29() (interface{}, error) { +func (p *parser) callonEllipsis1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute29() + return p.cur.onEllipsis1() } -func (c *current) onTableColumnsAttribute34() (interface{}, error) { - return types.VAlignTop, nil +func (c *current) onMdash4() (bool, error) { + return c.isPreceededBySpace(), nil + } -func (p *parser) callonTableColumnsAttribute34() (interface{}, error) { +func (p *parser) callonMdash4() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute34() + return p.cur.onMdash4() } -func (c *current) onTableColumnsAttribute36() (interface{}, error) { - return types.VAlignBottom, nil +func (c *current) onMdash2() (interface{}, error) { + return types.NewSymbol(" -- ") + } -func (p *parser) callonTableColumnsAttribute36() (interface{}, error) { +func (p *parser) callonMdash2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute36() + return p.cur.onMdash2() } -func (c *current) onTableColumnsAttribute38() (interface{}, error) { - return types.VAlignMiddle, nil +func (c *current) onMdash12() (bool, error) { + return c.isPreceededByAlphanum(), nil + } -func (p *parser) callonTableColumnsAttribute38() (interface{}, error) { +func (p *parser) callonMdash12() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute38() + return p.cur.onMdash12() } -func (c *current) onTableColumnsAttribute43() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onMdash10() (interface{}, error) { + return types.NewSymbol("--") } -func (p *parser) callonTableColumnsAttribute43() (interface{}, error) { +func (p *parser) callonMdash10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute43() + return p.cur.onMdash10() } -func (c *current) onTableColumnsAttribute49() (interface{}, error) { - return string(c.text), nil +func (c *current) onSingleRightArrow1() (interface{}, error) { + return types.NewSymbol("->") + } -func (p *parser) callonTableColumnsAttribute49() (interface{}, error) { +func (p *parser) callonSingleRightArrow1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute49() + return p.cur.onSingleRightArrow1() } -func (c *current) onTableColumnsAttribute53() (interface{}, error) { - return string(c.text), nil +func (c *current) onSingleLeftArrow1() (interface{}, error) { + return types.NewSymbol("<-") + } -func (p *parser) callonTableColumnsAttribute53() (interface{}, error) { +func (p *parser) callonSingleLeftArrow1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute53() + return p.cur.onSingleLeftArrow1() } -func (c *current) onTableColumnsAttribute58(multiplier, halign, valign, weight, style, comma interface{}) (bool, error) { - // make sure that at least something was set - // (otherwise the parser will run indefinitely) - return multiplier != nil || - halign != nil || - valign != nil || - weight != nil || - style != nil || - comma != nil, nil +func (c *current) onDoubleRightArrow1() (interface{}, error) { + return types.NewSymbol("=>") } -func (p *parser) callonTableColumnsAttribute58() (bool, error) { +func (p *parser) callonDoubleRightArrow1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute58(stack["multiplier"], stack["halign"], stack["valign"], stack["weight"], stack["style"], stack["comma"]) + return p.cur.onDoubleRightArrow1() } -func (c *current) onTableColumnsAttribute5(multiplier, halign, valign, weight, style, comma interface{}) (interface{}, error) { - return types.NewTableColumn(multiplier, halign, valign, weight, style) +func (c *current) onDoubleLeftArrow1() (interface{}, error) { + return types.NewSymbol("<=") } -func (p *parser) callonTableColumnsAttribute5() (interface{}, error) { +func (p *parser) callonDoubleLeftArrow1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute5(stack["multiplier"], stack["halign"], stack["valign"], stack["weight"], stack["style"], stack["comma"]) + return p.cur.onDoubleLeftArrow1() } -func (c *current) onTableColumnsAttribute1(cols interface{}) (interface{}, error) { - return cols, nil +func (c *current) onTypographicQuote2() (interface{}, error) { + log.Debug("matched escaped apostrophe") + return types.NewStringElement(strings.TrimSuffix(string(c.text), `\'`) + `'`) // retain the apostrophe, but discard the `\` escape char } -func (p *parser) callonTableColumnsAttribute1() (interface{}, error) { +func (p *parser) callonTypographicQuote2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTableColumnsAttribute1(stack["cols"]) + return p.cur.onTypographicQuote2() } -func (c *current) onUserMacroBlock4() (interface{}, error) { - return string(c.text), nil +func (c *current) onTypographicQuote8() (interface{}, error) { + return types.NewSymbolWithForeword("'", strings.TrimSuffix(string(c.text), `'`)) } -func (p *parser) callonUserMacroBlock4() (interface{}, error) { +func (p *parser) callonTypographicQuote8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUserMacroBlock4() + return p.cur.onTypographicQuote8() } -func (c *current) onUserMacroBlock7(name interface{}) (bool, error) { - // skip if no macro was registered under the given name - return c.globalStore.hasUserMacro(name.(string)), nil +func (c *current) onTable1(header, rows interface{}) (interface{}, error) { + return types.NewTable(header, rows.([]interface{})) } -func (p *parser) callonUserMacroBlock7() (bool, error) { +func (p *parser) callonTable1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUserMacroBlock7(stack["name"]) + return p.cur.onTable1(stack["header"], stack["rows"]) } -func (c *current) onUserMacroBlock10() (interface{}, error) { - return string(c.text), nil +func (c *current) onTableHeader1(cells interface{}) (interface{}, error) { + return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonUserMacroBlock10() (interface{}, error) { +func (p *parser) callonTableHeader1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUserMacroBlock10() + return p.cur.onTableHeader1(stack["cells"]) } -func (c *current) onUserMacroBlock16() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onHeaderCell1(content interface{}) (interface{}, error) { + return types.NewTableCell(content.(types.RawContent)) + } -func (p *parser) callonUserMacroBlock16() (interface{}, error) { +func (p *parser) callonHeaderCell1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUserMacroBlock16() + return p.cur.onHeaderCell1(stack["content"]) } -func (c *current) onUserMacroBlock1(name, value, attributes interface{}) (interface{}, error) { - return types.NewUserMacroBlock(name.(string), value.(string), attributes.(types.Attributes), string(c.text)) +func (c *current) onSingleLineTableRow1(cells interface{}) (interface{}, error) { + return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonUserMacroBlock1() (interface{}, error) { +func (p *parser) callonSingleLineTableRow1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUserMacroBlock1(stack["name"], stack["value"], stack["attributes"]) + return p.cur.onSingleLineTableRow1(stack["cells"]) } -func (c *current) onInlineUserMacro4() (interface{}, error) { - return string(c.text), nil +func (c *current) onMultiLineTableRow7(cell interface{}) (interface{}, error) { + return cell, nil } -func (p *parser) callonInlineUserMacro4() (interface{}, error) { +func (p *parser) callonMultiLineTableRow7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineUserMacro4() + return p.cur.onMultiLineTableRow7(stack["cell"]) } -func (c *current) onInlineUserMacro7(name interface{}) (bool, error) { - // skip if no macro was registered under the given name - return c.globalStore.hasUserMacro(name.(string)), nil +func (c *current) onMultiLineTableRow1(cells interface{}) (interface{}, error) { + return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonInlineUserMacro7() (bool, error) { +func (p *parser) callonMultiLineTableRow1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineUserMacro7(stack["name"]) + return p.cur.onMultiLineTableRow1(stack["cells"]) } -func (c *current) onInlineUserMacro10() (interface{}, error) { - return string(c.text), nil +func (c *current) onTableCell1(content interface{}) (interface{}, error) { + return types.NewTableCell(content.(types.RawContent)) } -func (p *parser) callonInlineUserMacro10() (interface{}, error) { +func (p *parser) callonTableCell1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineUserMacro10() + return p.cur.onTableCell1(stack["content"]) } -func (c *current) onInlineUserMacro1(name, value, attributes interface{}) (interface{}, error) { - return types.NewInlineUserMacro(name.(string), value.(string), attributes.(types.Attributes), string(c.text)) +func (c *current) onCellContent3() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineUserMacro1() (interface{}, error) { +func (p *parser) callonCellContent3() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineUserMacro1(stack["name"], stack["value"], stack["attributes"]) + return p.cur.onCellContent3() } -func (c *current) onFileLocation12() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) - return types.NewStringElement(string(c.text)) +func (c *current) onCellContent1(content interface{}) (interface{}, error) { + return types.NewRawContent(content.(string)) } -func (p *parser) callonFileLocation12() (interface{}, error) { +func (p *parser) callonCellContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation12() + return p.cur.onCellContent1(stack["content"]) } -func (c *current) onFileLocation16() (interface{}, error) { - return string(c.text), nil +func (c *current) onTableColumnsAttribute1(cols interface{}) (interface{}, error) { + return cols, nil + } -func (p *parser) callonFileLocation16() (interface{}, error) { +func (p *parser) callonTableColumnsAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation16() + return p.cur.onTableColumnsAttribute1(stack["cols"]) } -func (c *current) onFileLocation23() (interface{}, error) { - return string(c.text), nil - +func (c *current) onColumn7(n interface{}) (interface{}, error) { + return n, nil } -func (p *parser) callonFileLocation23() (interface{}, error) { +func (p *parser) callonColumn7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation23() + return p.cur.onColumn7(stack["n"]) } -func (c *current) onFileLocation27() (bool, error) { - return c.isSubstitutionEnabled(Attributes), nil - +func (c *current) onColumn15() (interface{}, error) { + return types.HAlignLeft, nil } -func (p *parser) callonFileLocation27() (bool, error) { +func (p *parser) callonColumn15() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation27() + return p.cur.onColumn15() } -func (c *current) onFileLocation34() (interface{}, error) { - return string(c.text), nil - +func (c *current) onColumn17() (interface{}, error) { + return types.HAlignRight, nil } -func (p *parser) callonFileLocation34() (interface{}, error) { +func (p *parser) callonColumn17() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation34() + return p.cur.onColumn17() } -func (c *current) onFileLocation46() (interface{}, error) { - return string(c.text), nil - +func (c *current) onColumn19() (interface{}, error) { + return types.HAlignCenter, nil } -func (p *parser) callonFileLocation46() (interface{}, error) { +func (p *parser) callonColumn19() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation46() + return p.cur.onColumn19() } -func (c *current) onFileLocation48() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - +func (c *current) onColumn24() (interface{}, error) { + return types.VAlignTop, nil } -func (p *parser) callonFileLocation48() (interface{}, error) { +func (p *parser) callonColumn24() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation48() + return p.cur.onColumn24() } -func (c *current) onFileLocation41(start interface{}) (interface{}, error) { - return start, nil - +func (c *current) onColumn26() (interface{}, error) { + return types.VAlignBottom, nil } -func (p *parser) callonFileLocation41() (interface{}, error) { +func (p *parser) callonColumn26() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation41(stack["start"]) + return p.cur.onColumn26() } -func (c *current) onFileLocation30(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +func (c *current) onColumn28() (interface{}, error) { + return types.VAlignMiddle, nil } -func (p *parser) callonFileLocation30() (interface{}, error) { +func (p *parser) callonColumn28() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation30(stack["name"], stack["start"]) + return p.cur.onColumn28() } -func (c *current) onFileLocation56() (interface{}, error) { +func (c *current) onColumn34() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonFileLocation56() (interface{}, error) { +func (p *parser) callonColumn34() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation56() + return p.cur.onColumn34() } -func (c *current) onFileLocation68() (interface{}, error) { +func (c *current) onColumn38() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonFileLocation68() (interface{}, error) { +func (p *parser) callonColumn38() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation68() + return p.cur.onColumn38() } -func (c *current) onFileLocation70() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onColumn43(multiplier, halign, valign, weight, style, comma interface{}) (bool, error) { + // make sure that at least something was set + // (otherwise the parser will run indefinitely) + return multiplier != nil || + halign != nil || + valign != nil || + weight != nil || + style != nil || + comma != nil, nil } -func (p *parser) callonFileLocation70() (interface{}, error) { +func (p *parser) callonColumn43() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation70() + return p.cur.onColumn43(stack["multiplier"], stack["halign"], stack["valign"], stack["weight"], stack["style"], stack["comma"]) } -func (c *current) onFileLocation63(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onColumn1(multiplier, halign, valign, weight, style, comma interface{}) (interface{}, error) { + return types.NewTableColumn(multiplier, halign, valign, weight, style) } -func (p *parser) callonFileLocation63() (interface{}, error) { +func (p *parser) callonColumn1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation63(stack["start"]) + return p.cur.onColumn1(stack["multiplier"], stack["halign"], stack["valign"], stack["weight"], stack["style"], stack["comma"]) } -func (c *current) onFileLocation52(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +func (c *current) onThematicBreak1() (interface{}, error) { + + return types.NewThematicBreak() + } -func (p *parser) callonFileLocation52() (interface{}, error) { +func (p *parser) callonThematicBreak1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation52(stack["name"], stack["start"]) + return p.cur.onThematicBreak1() } -func (c *current) onFileLocation78() (interface{}, error) { - return string(c.text), nil +func (c *current) onUserMacroBlock5(name interface{}) (bool, error) { + // skip if no macro was registered under the given name + return c.globalStore.hasUserMacro(name.(string)), nil } -func (p *parser) callonFileLocation78() (interface{}, error) { +func (p *parser) callonUserMacroBlock5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation78() + return p.cur.onUserMacroBlock5(stack["name"]) } -func (c *current) onFileLocation74(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) +func (c *current) onUserMacroBlock1(name, value, attributes interface{}) (interface{}, error) { + return types.NewUserMacroBlock(name.(string), value.(string), attributes.(types.Attributes), string(c.text)) } -func (p *parser) callonFileLocation74() (interface{}, error) { +func (p *parser) callonUserMacroBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation74(stack["name"]) + return p.cur.onUserMacroBlock1(stack["name"], stack["value"], stack["attributes"]) } -func (c *current) onFileLocation88() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineUserMacro5(name interface{}) (bool, error) { + // skip if no macro was registered under the given name + return c.globalStore.hasUserMacro(name.(string)), nil } -func (p *parser) callonFileLocation88() (interface{}, error) { +func (p *parser) callonInlineUserMacro5() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation88() + return p.cur.onInlineUserMacro5(stack["name"]) } -func (c *current) onFileLocation84(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string), string(c.text)) +func (c *current) onInlineUserMacro1(name, value, attributes interface{}) (interface{}, error) { + return types.NewInlineUserMacro(name.(string), value.(string), attributes.(types.Attributes), string(c.text)) } -func (p *parser) callonFileLocation84() (interface{}, error) { +func (p *parser) callonInlineUserMacro1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation84(stack["name"]) + return p.cur.onInlineUserMacro1(stack["name"], stack["value"], stack["attributes"]) } -func (c *current) onFileLocation25(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onUserMacroName1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileLocation25() (interface{}, error) { +func (p *parser) callonUserMacroName1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation25(stack["element"]) + return p.cur.onUserMacroName1() } -func (c *current) onFileLocation96() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters), nil +func (c *current) onUserMacroValue1() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileLocation96() (bool, error) { +func (p *parser) callonUserMacroValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation96() + return p.cur.onUserMacroValue1() } -func (c *current) onFileLocation105() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onAlphanums1() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonFileLocation105() (interface{}, error) { +func (p *parser) callonAlphanums1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation105() + return p.cur.onAlphanums1() } -func (c *current) onFileLocation109() (interface{}, error) { - return string(c.text), nil +func (c *current) onWord2() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileLocation109() (interface{}, error) { +func (p *parser) callonWord2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation109() + return p.cur.onWord2() } -func (c *current) onFileLocation115() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references +func (c *current) onWord10() (interface{}, error) { + // allow ` return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileLocation115() (interface{}, error) { +func (p *parser) callonWord10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation115() + return p.cur.onWord10() } -func (c *current) onFileLocation124() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineWord1() (interface{}, error) { + // TODO: also allow trailing quotes/quotation marks? + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileLocation124() (interface{}, error) { +func (p *parser) callonInlineWord1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation124() + return p.cur.onInlineWord1() } -func (c *current) onFileLocation120(name interface{}) (interface{}, error) { - - log.Debug("matching escaped attribute reference") - // return types.NewStringElement("{"+name.(string)+"}") - return types.NewStringElement(strings.TrimPrefix(string(c.text), `\`)) - +func (c *current) onPunctuation1(char interface{}) (interface{}, error) { + return char, nil } -func (p *parser) callonFileLocation120() (interface{}, error) { +func (p *parser) callonPunctuation1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation120(stack["name"]) + return p.cur.onPunctuation1(stack["char"]) } -func (c *current) onFileLocation134() (interface{}, error) { +func (c *current) onPunctuationCharacter1() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonFileLocation134() (interface{}, error) { +func (p *parser) callonPunctuationCharacter1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation134() + return p.cur.onPunctuationCharacter1() } -func (c *current) onFileLocation130(name interface{}) (interface{}, error) { +func (c *current) onAnyChar1() (interface{}, error) { - return types.NewAttributeSubstitution(name.(string), string(c.text)) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileLocation130() (interface{}, error) { +func (p *parser) callonAnyChar1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation130(stack["name"]) + return p.cur.onAnyChar1() } -func (c *current) onFileLocation140() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onFileLocation1(path interface{}) (interface{}, error) { + return types.NewLocation("", path.([]interface{})) } -func (p *parser) callonFileLocation140() (interface{}, error) { +func (p *parser) callonFileLocation1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation140() + return p.cur.onFileLocation1(stack["path"]) } -func (c *current) onFileLocation101(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onLocation1(scheme, path interface{}) (interface{}, error) { + return types.NewLocation(scheme, path.([]interface{})) } -func (p *parser) callonFileLocation101() (interface{}, error) { +func (p *parser) callonLocation1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation101(stack["id"], stack["label"]) + return p.cur.onLocation1(stack["scheme"], stack["path"]) } -func (c *current) onFileLocation147() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onLocationWithScheme1(scheme, path interface{}) (interface{}, error) { + return types.NewLocation(scheme, path.([]interface{})) } -func (p *parser) callonFileLocation147() (interface{}, error) { +func (p *parser) callonLocationWithScheme1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation147() + return p.cur.onLocationWithScheme1(stack["scheme"], stack["path"]) } -func (c *current) onFileLocation143(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onFilename8() (interface{}, error) { + // not supported for now: EOL, space, "{", "[", "]". Also, punctuation chars and `<` and `>` special chars are treated separately below (but `&` is allowed) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileLocation143() (interface{}, error) { +func (p *parser) callonFilename8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation143(stack["id"]) + return p.cur.onFilename8() } -func (c *current) onFileLocation99() (interface{}, error) { +func (c *current) onFilename20() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileLocation99() (interface{}, error) { +func (p *parser) callonFilename20() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation99() + return p.cur.onFilename20() } -func (c *current) onFileLocation151() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onFilename1(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonFileLocation151() (interface{}, error) { +func (p *parser) callonFilename1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation151() + return p.cur.onFilename1(stack["elements"]) } -func (c *current) onFileLocation94(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onId1() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil } -func (p *parser) callonFileLocation94() (interface{}, error) { +func (p *parser) callonId1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation94(stack["element"]) + return p.cur.onId1() } -func (c *current) onFileLocation153() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onInteger1() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonFileLocation153() (interface{}, error) { +func (p *parser) callonInteger1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation153() + return p.cur.onInteger1() } -func (c *current) onFileLocation5(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +func (c *current) onFloat1() (interface{}, error) { + return strconv.ParseFloat(string(c.text), 64) } -func (p *parser) callonFileLocation5() (interface{}, error) { +func (p *parser) callonFloat1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation5(stack["elements"]) + return p.cur.onFloat1() } -func (c *current) onFileLocation159() (interface{}, error) { +func (c *current) onSpace1() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonFileLocation159() (interface{}, error) { +func (p *parser) callonSpace1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation159() + return p.cur.onSpace1() } -func (c *current) onFileLocation155(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onSpaces1() (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + } -func (p *parser) callonFileLocation155() (interface{}, error) { +func (p *parser) callonSpaces1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation155(stack["ref"]) + return p.cur.onSpaces1() } -func (c *current) onFileLocation1(path interface{}) (interface{}, error) { - return types.NewLocation("", path.([]interface{})) - +func (c *current) onNewline1() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonFileLocation1() (interface{}, error) { +func (p *parser) callonNewline1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileLocation1(stack["path"]) + return p.cur.onNewline1() } var ( @@ -108057,6 +21570,63 @@ func Entrypoint(ruleName string) Option { } } +// Statistics adds a user provided Stats struct to the parser to allow +// the user to process the results after the parsing has finished. +// Also the key for the "no match" counter is set. +// +// Example usage: +// +// input := "input" +// stats := Stats{} +// _, err := Parse("input-file", []byte(input), Statistics(&stats, "no match")) +// if err != nil { +// log.Panicln(err) +// } +// b, err := json.MarshalIndent(stats.ChoiceAltCnt, "", " ") +// if err != nil { +// log.Panicln(err) +// } +// fmt.Println(string(b)) +// +func Statistics(stats *Stats, choiceNoMatch string) Option { + return func(p *parser) Option { + oldStats := p.Stats + p.Stats = stats + oldChoiceNoMatch := p.choiceNoMatch + p.choiceNoMatch = choiceNoMatch + if p.Stats.ChoiceAltCnt == nil { + p.Stats.ChoiceAltCnt = make(map[string]map[string]int) + } + return Statistics(oldStats, oldChoiceNoMatch) + } +} + +// Debug creates an Option to set the debug flag to b. When set to true, +// debugging information is printed to stdout while parsing. +// +// The default is false. +func Debug(b bool) Option { + return func(p *parser) Option { + old := p.debug + p.debug = b + return Debug(old) + } +} + +// Memoize creates an Option to set the memoize flag to b. When set to true, +// the parser will cache all results so each expression is evaluated only +// once. This guarantees linear parsing time even for pathological cases, +// at the expense of more memory and slower times for typical cases. +// +// The default is false. +func Memoize(b bool) Option { + return func(p *parser) Option { + old := p.memoize + p.memoize = b + return Memoize(old) + } +} + // AllowInvalidUTF8 creates an Option to allow invalid UTF-8 bytes. // Every invalid UTF-8 byte is treated as a utf8.RuneError (U+FFFD) // by character class matchers and is matched by the any matcher. @@ -108095,6 +21665,16 @@ func GlobalStore(key string, value interface{}) Option { } } +// InitState creates an Option to set a key to a certain value in +// the global "state" store. +func InitState(key string, value interface{}) Option { + return func(p *parser) Option { + old := p.cur.state[key] + p.cur.state[key] = value + return InitState(key, old) + } +} + // ParseFile parses the file identified by filename. func ParseFile(filename string, opts ...Option) (i interface{}, err error) { f, err := os.Open(filename) @@ -108147,6 +21727,11 @@ type current struct { pos position // start position of the match text []byte // raw text of the match + // state is a store for arbitrary key,value pairs that the user wants to be + // tied to the backtracking of the parser. + // This is always rolled back if a parsing rule fails. + state storeDict + // globalStore is a general store for the user to store arbitrary key-value // pairs that they need to manage and that they do not want tied to the // backtracking of the parser. This is only modified by the user and never @@ -108221,6 +21806,11 @@ type ruleRefExpr struct { name string } +type stateCodeExpr struct { + pos position + run func(*parser) error +} + type andCodeExpr struct { pos position run func(*parser) (bool, error) @@ -108324,6 +21914,7 @@ func newParser(filename string, b []byte, opts ...Option) *parser { pt: savepoint{position: position{line: 1}}, recover: true, cur: current{ + state: make(storeDict), globalStore: make(storeDict), }, maxFailPos: position{col: 1, line: 1}, @@ -108388,6 +21979,12 @@ type parser struct { depth int recover bool + debug bool + + memoize bool + // memoization table for the packrat algorithm: + // map[offset in source] map[expression or rule] {value, match} + memo map[int]map[interface{}]resultTuple // rules table, maps the rule identifier to the rule node rules map[string]*rule @@ -108472,6 +22069,26 @@ func (p *parser) popRecovery() { p.recoveryStack = p.recoveryStack[:len(p.recoveryStack)-1] } +func (p *parser) print(prefix, s string) string { + if !p.debug { + return s + } + + fmt.Printf("%s %d:%d:%d: %s [%#U]\n", + prefix, p.pt.line, p.pt.col, p.pt.offset, s, p.pt.rn) + return s +} + +func (p *parser) in(s string) string { + p.depth++ + return p.print(strings.Repeat(" ", p.depth)+">", s) +} + +func (p *parser) out(s string) string { + p.depth-- + return p.print(strings.Repeat(" ", p.depth)+"<", s) +} + func (p *parser) addErr(err error) { p.addErrAt(err, p.pt.position, []string{}) } @@ -108540,17 +22157,93 @@ func (p *parser) read() { // restore parser position to the savepoint pt. func (p *parser) restore(pt savepoint) { + if p.debug { + defer p.out(p.in("restore")) + } if pt.offset == p.pt.offset { return } p.pt = pt } +// Cloner is implemented by any value that has a Clone method, which returns a +// copy of the value. This is mainly used for types which are not passed by +// value (e.g map, slice, chan) or structs that contain such types. +// +// This is used in conjunction with the global state feature to create proper +// copies of the state to allow the parser to properly restore the state in +// the case of backtracking. +type Cloner interface { + Clone() interface{} +} + +var statePool = &sync.Pool{ + New: func() interface{} { return make(storeDict) }, +} + +func (sd storeDict) Discard() { + for k := range sd { + delete(sd, k) + } + statePool.Put(sd) +} + +// clone and return parser current state. +func (p *parser) cloneState() storeDict { + if p.debug { + defer p.out(p.in("cloneState")) + } + + state := statePool.Get().(storeDict) + for k, v := range p.cur.state { + if c, ok := v.(Cloner); ok { + state[k] = c.Clone() + } else { + state[k] = v + } + } + return state +} + +// restore parser current state to the state storeDict. +// every restoreState should applied only one time for every cloned state +func (p *parser) restoreState(state storeDict) { + if p.debug { + defer p.out(p.in("restoreState")) + } + p.cur.state.Discard() + p.cur.state = state +} + // get the slice of bytes from the savepoint start to the current position. func (p *parser) sliceFrom(start savepoint) []byte { return p.data[start.position.offset:p.pt.position.offset] } +func (p *parser) getMemoized(node interface{}) (resultTuple, bool) { + if len(p.memo) == 0 { + return resultTuple{}, false + } + m := p.memo[p.pt.offset] + if len(m) == 0 { + return resultTuple{}, false + } + res, ok := m[node] + return res, ok +} + +func (p *parser) setMemoized(pt savepoint, node interface{}, tuple resultTuple) { + if p.memo == nil { + p.memo = make(map[int]map[interface{}]resultTuple) + } + m := p.memo[pt.offset] + if m == nil { + m = make(map[interface{}]resultTuple) + p.memo[pt.offset] = m + } + m[node] = tuple +} + func (p *parser) buildRulesTable(g *grammar) { p.rules = make(map[string]*rule, len(g.rules)) for _, r := range g.rules { @@ -108572,6 +22265,9 @@ func (p *parser) parse(g *grammar) (val interface{}, err error) { // and return the panic as an error. defer func() { if e := recover(); e != nil { + if p.debug { + defer p.out(p.in("panic handler")) + } val = nil switch e := e.(type) { case error: @@ -108633,15 +22329,45 @@ func listJoin(list []string, sep string, lastSep string) string { } func (p *parser) parseRule(rule *rule) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseRule " + rule.name)) + } + + if p.memoize { + res, ok := p.getMemoized(rule) + if ok { + p.restore(res.end) + return res.v, res.b + } + } + + start := p.pt p.rstack = append(p.rstack, rule) p.pushV() val, ok := p.parseExpr(rule.expr) p.popV() p.rstack = p.rstack[:len(p.rstack)-1] + if ok && p.debug { + p.print(strings.Repeat(" ", p.depth)+"MATCH", string(p.sliceFrom(start))) + } + + if p.memoize { + p.setMemoized(start, rule, resultTuple{val, ok, p.pt}) + } return val, ok } func (p *parser) parseExpr(expr interface{}) (interface{}, bool) { + var pt savepoint + + if p.memoize { + res, ok := p.getMemoized(expr) + if ok { + p.restore(res.end) + return res.v, res.b + } + pt = p.pt + } p.ExprCnt++ if p.ExprCnt > p.maxExprCnt { @@ -108679,6 +22405,8 @@ func (p *parser) parseExpr(expr interface{}) (interface{}, bool) { val, ok = p.parseRuleRefExpr(expr) case *seqExpr: val, ok = p.parseSeqExpr(expr) + case *stateCodeExpr: + val, ok = p.parseStateCodeExpr(expr) case *throwExpr: val, ok = p.parseThrowExpr(expr) case *zeroOrMoreExpr: @@ -108688,46 +22416,74 @@ func (p *parser) parseExpr(expr interface{}) (interface{}, bool) { default: panic(fmt.Sprintf("unknown expression type %T", expr)) } + if p.memoize { + p.setMemoized(pt, expr, resultTuple{val, ok, p.pt}) + } return val, ok } func (p *parser) parseActionExpr(act *actionExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseActionExpr")) + } + start := p.pt val, ok := p.parseExpr(act.expr) if ok { p.cur.pos = start.position p.cur.text = p.sliceFrom(start) + state := p.cloneState() actVal, err := act.run(p) if err != nil { p.addErrAt(err, start.position, []string{}) } + p.restoreState(state) val = actVal } + if ok && p.debug { + p.print(strings.Repeat(" ", p.depth)+"MATCH", string(p.sliceFrom(start))) + } return val, ok } func (p *parser) parseAndCodeExpr(and *andCodeExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseAndCodeExpr")) + } + + state := p.cloneState() ok, err := and.run(p) if err != nil { p.addErr(err) } + p.restoreState(state) return nil, ok } func (p *parser) parseAndExpr(and *andExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseAndExpr")) + } + pt := p.pt + state := p.cloneState() p.pushV() _, ok := p.parseExpr(and.expr) p.popV() + p.restoreState(state) p.restore(pt) return nil, ok } func (p *parser) parseAnyMatcher(any *anyMatcher) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseAnyMatcher")) + } + if p.pt.rn == utf8.RuneError && p.pt.w == 0 { // EOF - see utf8.DecodeRune p.failAt(false, p.pt.position, ".") @@ -108740,6 +22496,10 @@ func (p *parser) parseAnyMatcher(any *anyMatcher) (interface{}, bool) { } func (p *parser) parseCharClassMatcher(chr *charClassMatcher) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseCharClassMatcher")) + } + cur := p.pt.rn start := p.pt @@ -108801,22 +22561,50 @@ func (p *parser) parseCharClassMatcher(chr *charClassMatcher) (interface{}, bool return nil, false } +func (p *parser) incChoiceAltCnt(ch *choiceExpr, altI int) { + choiceIdent := fmt.Sprintf("%s %d:%d", p.rstack[len(p.rstack)-1].name, ch.pos.line, ch.pos.col) + m := p.ChoiceAltCnt[choiceIdent] + if m == nil { + m = make(map[string]int) + p.ChoiceAltCnt[choiceIdent] = m + } + // We increment altI by 1, so the keys do not start at 0 + alt := strconv.Itoa(altI + 1) + if altI == choiceNoMatch { + alt = p.choiceNoMatch + } + m[alt]++ +} + func (p *parser) parseChoiceExpr(ch *choiceExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseChoiceExpr")) + } + for altI, alt := range ch.alternatives { // dummy assignment to prevent compile error if optimized _ = altI + state := p.cloneState() + p.pushV() val, ok := p.parseExpr(alt) p.popV() if ok { + p.incChoiceAltCnt(ch, altI) return val, ok } + p.restoreState(state) } + p.incChoiceAltCnt(ch, choiceNoMatch) return nil, false } func (p *parser) parseLabeledExpr(lab *labeledExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseLabeledExpr")) + } + p.pushV() val, ok := p.parseExpr(lab.expr) p.popV() @@ -108828,6 +22616,10 @@ func (p *parser) parseLabeledExpr(lab *labeledExpr) (interface{}, bool) { } func (p *parser) parseLitMatcher(lit *litMatcher) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseLitMatcher")) + } + start := p.pt for _, want := range lit.val { cur := p.pt.rn @@ -108846,27 +22638,44 @@ func (p *parser) parseLitMatcher(lit *litMatcher) (interface{}, bool) { } func (p *parser) parseNotCodeExpr(not *notCodeExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseNotCodeExpr")) + } + + state := p.cloneState() + ok, err := not.run(p) if err != nil { p.addErr(err) } + p.restoreState(state) return nil, !ok } func (p *parser) parseNotExpr(not *notExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseNotExpr")) + } + pt := p.pt + state := p.cloneState() p.pushV() p.maxFailInvertExpected = !p.maxFailInvertExpected _, ok := p.parseExpr(not.expr) p.maxFailInvertExpected = !p.maxFailInvertExpected p.popV() + p.restoreState(state) p.restore(pt) return nil, !ok } func (p *parser) parseOneOrMoreExpr(expr *oneOrMoreExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseOneOrMoreExpr")) + } + var vals []interface{} for { @@ -108885,6 +22694,9 @@ func (p *parser) parseOneOrMoreExpr(expr *oneOrMoreExpr) (interface{}, bool) { } func (p *parser) parseRecoveryExpr(recover *recoveryExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseRecoveryExpr (" + strings.Join(recover.failureLabel, ",") + ")")) + } p.pushRecovery(recover.failureLabel, recover.recoverExpr) val, ok := p.parseExpr(recover.expr) @@ -108894,6 +22706,10 @@ func (p *parser) parseRecoveryExpr(recover *recoveryExpr) (interface{}, bool) { } func (p *parser) parseRuleRefExpr(ref *ruleRefExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseRuleRefExpr " + ref.name)) + } + if ref.name == "" { panic(fmt.Sprintf("%s: invalid rule: missing name", ref.pos)) } @@ -108907,12 +22723,18 @@ func (p *parser) parseRuleRefExpr(ref *ruleRefExpr) (interface{}, bool) { } func (p *parser) parseSeqExpr(seq *seqExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseSeqExpr")) + } + vals := make([]interface{}, 0, len(seq.exprs)) pt := p.pt + state := p.cloneState() for _, expr := range seq.exprs { val, ok := p.parseExpr(expr) if !ok { + p.restoreState(state) p.restore(pt) return nil, false } @@ -108921,7 +22743,22 @@ func (p *parser) parseSeqExpr(seq *seqExpr) (interface{}, bool) { return vals, true } +func (p *parser) parseStateCodeExpr(state *stateCodeExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseStateCodeExpr")) + } + + err := state.run(p) + if err != nil { + p.addErr(err) + } + return nil, true +} + func (p *parser) parseThrowExpr(expr *throwExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseThrowExpr")) + } for i := len(p.recoveryStack) - 1; i >= 0; i-- { if recoverExpr, ok := p.recoveryStack[i][expr.label]; ok { @@ -108935,6 +22772,10 @@ func (p *parser) parseThrowExpr(expr *throwExpr) (interface{}, bool) { } func (p *parser) parseZeroOrMoreExpr(expr *zeroOrMoreExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseZeroOrMoreExpr")) + } + var vals []interface{} for { @@ -108949,6 +22790,10 @@ func (p *parser) parseZeroOrMoreExpr(expr *zeroOrMoreExpr) (interface{}, bool) { } func (p *parser) parseZeroOrOneExpr(expr *zeroOrOneExpr) (interface{}, bool) { + if p.debug { + defer p.out(p.in("parseZeroOrOneExpr")) + } + p.pushV() val, _ := p.parseExpr(expr.expr) p.popV() diff --git a/pkg/parser/parser.peg b/pkg/parser/parser.peg index 4119d6c0..f7116965 100644 --- a/pkg/parser/parser.peg +++ b/pkg/parser/parser.peg @@ -90,9 +90,9 @@ Ifeval <- "ifeval::" } IfevalExpressionMember <- - ("\"" s:(AttributeValueReference) "\"" { return s, nil }) - / ("'" s:(AttributeValueReference) "'" { return s, nil }) - / (s:(AttributeValueReference) { return s, nil }) + ("\"" s:(AttributeReferenceValue) "\"" { return s, nil }) + / ("'" s:(AttributeReferenceValue) "'" { return s, nil }) + / (s:(AttributeReferenceValue) { return s, nil }) / ("\"" w:([\pL0-9,?!;_-]+ { return string(c.text), nil}) "\"" { return w, nil }) / ("'" w:([\pL0-9,?!;_-]+ { return string(c.text), nil}) "'" { return w, nil }) / Integer @@ -424,20 +424,15 @@ LegacyElementID <- } // shorthand syntax for titles. Eg: `.a title` -ShortHandTitle <- `.` title:( +ShortHandTitle <- `.` ![. ] // may not start with a dot or a space, to avoid confusion with list items or literal block delimiters elements:( - ([^\r\n\uFFFD{]+ { - return string(c.text), nil - }) - / AttributeValueReference - / ("{" { - return string(c.text), nil - }))+ { - return types.Reduce(elements, strings.TrimSpace), nil - } - ) { - return types.NewTitleAttribute(title) + InlineWord + / Space + / AttributeReferenceValue + / ([^\r\n] { return string(c.text), nil }) + )+ { + return types.NewTitleAttribute(types.Reduce(elements, strings.TrimSpace)) } // LongHandAttributes. Eg: `[positional1,positional2,...,named1,named2,...] @@ -545,7 +540,11 @@ PositionalAttribute <- ( return types.NewPositionalAttribute(nil) }) -NamedAttribute <- key:(NamedAttributeKey) "=" Space* value:(AttributeValue) ("," Space*)? { // TODO: include `,` or expect `]` +NamedAttribute <- + key:(NamedAttributeKey) + "=" Space* + value:(AttributeValue) ("," Space*)? + { return types.NewNamedAttribute(key.(string), value) } @@ -597,6 +596,7 @@ DoubleQuotedAttributeValue <- "\"" &(!(Space* "=")) { return content, nil } + DoubleQuotedAttributeValueContent <- elements:( Alphanums @@ -623,8 +623,7 @@ UnquotedAttributeValue <- // so we need to count the `[` and `]` to balance !Space // can't start with a space (eg: can't have `[ cookie ]`) elements:( - Quote // quotes can have their own attributes // TODO: move down - / ("[" UnquotedAttributeValue "]") // recursively within brackets (see comment above) + ("[" UnquotedAttributeValue "]") // recursively within brackets (see comment above) // / ElementPlaceHolder / ([^=,\uFFFD\]{'"` ]+ { // not within brackets and stop on space and quotation marks (`"') return string(c.text), nil @@ -646,13 +645,13 @@ UnquotedAttributeValue <- AttributeReference <- // check if enabled with the current substitution context &{ - return c.isSubstitutionEnabled(Attributes), nil + return c.isSubstitutionEnabled(AttributeRefs), nil } - element:(CounterReference / AttributeValueReference) { + element:(CounterReference / AttributeReferenceValue) { return element, nil } -AttributeValueReference <- +AttributeReferenceValue <- // escaped `\` "{" name:AttributeName "}" { log.Debug("matching escaped attribute reference") @@ -710,7 +709,7 @@ CrossReferenceLabel <- ( ([\pL0-9][^\r\n{<>]+ { // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references return types.NewStringElement(string(c.text)) }) - / AttributeValueReference + / AttributeReferenceValue / ("{" { return types.NewStringElement(string(c.text)) }) @@ -1442,7 +1441,7 @@ Link <- BareURL / RelativeLink / ExternalLink BareURL <- "<" url:(LocationWithScheme) // scheme is required for this syntax - closingBracket:(">")? // TODO: never used? + ">"? &{ return url.(*types.Location).TrimAngleBracketSuffix() } @@ -1910,7 +1909,6 @@ QuotedText <- text:(UnconstrainedQuotedText / ConstrainedQuotedText) { return text.(*types.QuotedText).WithAttributes(attributes) } - ConstrainedQuotedTextMarker <- "*" !"*" / "_" !"_" / "#" !"#" / "`" !"`" @@ -2671,6 +2669,22 @@ Substitutions <- // TODO: rename to `NormalGroup` return types.NewInlineElements(elements) } +// Substitutions for specific attributes whose value allows for quoted content and inline macros +AttributeStructuredValue <- + elements:( + InlineMacro + / Quote + / Word + / Space + / SpecialCharacter + / Symbol + / ElementPlaceHolder + / AnyChar + )+ EOF { + return types.NewInlineElements(elements) + } + + // Default substitutions for Section Titles HeaderGroup <- elements:(HeaderGroupElement)+ EOF { @@ -3063,7 +3077,7 @@ PunctuationCharacter <- [.,;?!] { } // this is a fall-back rule in case all preceeding rules failed to match the current content. -// AnyChar <- [^\r\n] { +// AnyChar <- [^\r\n] { // TODO: restore this rule and replace all occurrences of `[^\r\n]` in other rules with `AnyChar` AnyChar <- . { return types.NewStringElement(string(c.text)) } diff --git a/pkg/parser/q_a_list_test.go b/pkg/parser/q_a_list_test.go index 8207e0a7..ae60bc8d 100644 --- a/pkg/parser/q_a_list_test.go +++ b/pkg/parser/q_a_list_test.go @@ -22,7 +22,11 @@ What is the answer to the Ultimate Question?:: 42` &types.List{ Kind: types.LabeledListKind, Attributes: types.Attributes{ - types.AttrTitle: "Q&A", + types.AttrTitle: []interface{}{ + &types.StringElement{Content: "Q"}, + &types.SpecialCharacter{Name: "&"}, + &types.StringElement{Content: "A"}, + }, types.AttrStyle: "qanda", }, Elements: []types.ListElement{ @@ -83,7 +87,11 @@ What is the answer to the Ultimate Question?:: 42` &types.List{ Kind: types.LabeledListKind, Attributes: types.Attributes{ - types.AttrTitle: "Q&A", + types.AttrTitle: []interface{}{ + &types.StringElement{Content: "Q"}, + &types.SpecialCharacter{Name: "&"}, + &types.StringElement{Content: "A"}, + }, types.AttrStyle: "qanda", types.AttrID: "quiz", types.AttrRoles: types.Roles{"role1", "role2"}, @@ -125,7 +133,11 @@ What is the answer to the Ultimate Question?:: 42` }, }, ElementReferences: types.ElementReferences{ - "quiz": "Q&A", + "quiz": []interface{}{ + &types.StringElement{Content: "Q"}, + &types.SpecialCharacter{Name: "&"}, + &types.StringElement{Content: "A"}, + }, }, } Expect(ParseDocument(source)).To(MatchDocument(expected)) diff --git a/pkg/renderer/sgml/table_of_contents.go b/pkg/renderer/sgml/table_of_contents.go index e559fbd7..4e4f33fd 100644 --- a/pkg/renderer/sgml/table_of_contents.go +++ b/pkg/renderer/sgml/table_of_contents.go @@ -100,7 +100,7 @@ func (r *sgmlRenderer) renderTableOfContentsTitle(ctx *renderer.Context) (string return "Table of Contents", nil // default value // TODO: use a constant? } // parse - value, err := parser.ParseAttributeValue(title) + value, err := parser.ReparseAttributeValue(title, parser.HeaderSubstitutions()) // TODO: move this into the process substitution phase of document parsing if err != nil { return "", err }