diff --git a/libasciidoc.go b/libasciidoc.go index 61e65367..fce65bd9 100644 --- a/libasciidoc.go +++ b/libasciidoc.go @@ -6,6 +6,7 @@ import ( "fmt" "io" "os" + "strings" "time" "github.com/bytesparadise/libasciidoc/pkg/renderer/sgml/xhtml5" @@ -67,8 +68,12 @@ func Convert(r io.Reader, output io.Writer, config *configuration.Configuration) duration := time.Since(start) log.Debugf("rendered the output in %v", duration) }() + p, err := parser.Preprocess(r, config) + if err != nil { + return types.Metadata{}, err + } // log.Debugf("parsing the asciidoc source...") - doc, err := parser.ParseDocument(r, config) + doc, err := parser.ParseDocument(strings.NewReader(p), config) if err != nil { return types.Metadata{}, err } diff --git a/pkg/parser/context.go b/pkg/parser/context.go index 7b0cf69f..8fcc979b 100644 --- a/pkg/parser/context.go +++ b/pkg/parser/context.go @@ -22,6 +22,7 @@ func NewParseContext(config *configuration.Configuration, opts ...Option) *Parse if log.IsLevelEnabled(log.DebugLevel) { log.Debugf("new parser context with attributes: %s", spew.Sdump(config.Attributes)) } + opts = append(opts, Entrypoint("DocumentFragment")) opts = append(opts, GlobalStore(frontMatterKey, true)) opts = append(opts, GlobalStore(documentHeaderKey, true)) opts = append(opts, GlobalStore(substitutionKey, newNormalSubstitution())) @@ -50,20 +51,6 @@ func (c *ParseContext) Clone() *ParseContext { } } -func (c *ParseContext) WithinDelimitedBlock(b *types.DelimitedBlock) *ParseContext { - clone := c.Clone() - switch b.Kind { - case types.Example, types.Quote, types.Sidebar: - clone.Opts = append(c.Opts, Entrypoint("DocumentFragment"), GlobalStore(delimitedBlockScopeKey, b.Kind)) - case types.Fenced, types.Listing, types.Literal, types.Verse: - clone.Opts = append(c.Opts, Entrypoint("DocumentFragmentWithinVerbatimBlock"), GlobalStore(delimitedBlockScopeKey, b.Kind)) - default: - // TODO: do we need to parse the content of Passthrough and Comments? - clone.Opts = append(c.Opts, Entrypoint("DocumentFragmentWithinVerbatimBlock"), GlobalStore(delimitedBlockScopeKey, b.Kind)) - } - return clone -} - type contextAttributes struct { immutableAttributes types.Attributes attributes types.Attributes diff --git a/pkg/parser/delimited_block_listing_test.go b/pkg/parser/delimited_block_listing_test.go index 5ea2b2ce..6f616938 100644 --- a/pkg/parser/delimited_block_listing_test.go +++ b/pkg/parser/delimited_block_listing_test.go @@ -1174,7 +1174,7 @@ and on the + }, } Expect(ParseDocument(s)).To(MatchDocument(expected)) - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 33, 183, "unsupported kind of substitution: 'unknown'")) + Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 33, 182, "unsupported kind of substitution: 'unknown'")) }) }) }) diff --git a/pkg/parser/document_preprocessing.go b/pkg/parser/document_preprocessing.go new file mode 100644 index 00000000..fcc9ca4f --- /dev/null +++ b/pkg/parser/document_preprocessing.go @@ -0,0 +1,13 @@ +package parser + +import ( + "io" + + "github.com/bytesparadise/libasciidoc/pkg/configuration" +) + +// Preprocess reads line by line to look-up and process file inclusions +func Preprocess(source io.Reader, config *configuration.Configuration, opts ...Option) (string, error) { + ctx := NewParseContext(config, opts...) // each pipeline step will have its own clone of `ctx` + return processFileInclusions(ctx, source) +} diff --git a/pkg/parser/document_processing_include_files.go b/pkg/parser/document_preprocessing_include_files.go similarity index 68% rename from pkg/parser/document_processing_include_files.go rename to pkg/parser/document_preprocessing_include_files.go index 9b415628..d2925085 100644 --- a/pkg/parser/document_processing_include_files.go +++ b/pkg/parser/document_preprocessing_include_files.go @@ -17,162 +17,121 @@ import ( log "github.com/sirupsen/logrus" ) -func IncludeFiles(ctx *ParseContext, done <-chan interface{}, fragmentStream <-chan types.DocumentFragment) <-chan types.DocumentFragment { - resultStream := make(chan types.DocumentFragment, bufferSize) - go func() { - defer close(resultStream) - for f := range fragmentStream { - select { - case resultStream <- includeFiles(ctx, f, done): - case <-done: - log.WithField("pipeline_task", "include_files").Debug("received 'done' signal") - return - } - } - log.WithField("pipeline_task", "include_files").Debug("done") - }() - return resultStream -} - -func includeFiles(ctx *ParseContext, f types.DocumentFragment, done <-chan interface{}) types.DocumentFragment { - // if the fragment already contains an error, then send it as-is downstream - if f.Error != nil { - log.Debugf("skipping file inclusions because of fragment with error: %v", f.Error) - return f - } - elements, err := doIncludeFiles(ctx, f.Elements, done) - if err != nil { - return types.NewErrorFragment(f.Position, err) +func processFileInclusions(ctx *ParseContext, source io.Reader) (string, error) { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("processing file inclusions in %s with leveloffset=%s", ctx.filename, spew.Sdump(ctx.levelOffsets)) } - return types.NewDocumentFragment(f.Position, elements...) -} - -func doIncludeFiles(ctx *ParseContext, elements []interface{}, done <-chan interface{}) ([]interface{}, error) { - result := make([]interface{}, 0, len(elements)) - for _, element := range elements { - switch e := element.(type) { - case *types.AttributeDeclaration: - ctx.attributes.set(e.Name, e.Value) - result = append(result, element) - case *types.AttributeReset: - ctx.attributes.unset(e.Name) - result = append(result, element) - case *types.FileInclusion: - // use an Entrypoint based on the Delimited block kind - elmts, err := doIncludeFile(ctx.Clone(), e, done) - if err != nil { - return nil, err - } - result = append(result, elmts...) - case *types.DelimitedBlock: - elmts, err := doIncludeFiles(ctx.WithinDelimitedBlock(e), e.Elements, done) - if err != nil { - return nil, err + content := &builder{} + scanner := bufio.NewScanner(source) + t := newBlockDelimiterTracker() + for scanner.Scan() { + line := scanner.Bytes() + element, err := Parse("", line, append(ctx.Opts, Entrypoint("DocumentRawLine"))...) + if err != nil { + // content of line was not relevant in the context of preparsing (ie, it's a regular line), so let's keep it as-is + content.Write(line) + } else { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("checking element of type '%T'", element) } - e.Elements = elmts - switch e.Kind { - case types.Example, types.Quote, types.Sidebar: - if e.Elements, err = parseDelimitedBlockElements(ctx, e); err != nil { - // log the error, but keep the delimited block empty so we can carry on with the whole processing - log.WithError(err).Error("unable to parse content of delimited block") - e.Elements = nil - break + switch e := element.(type) { + case *types.AttributeDeclaration: + ctx.attributes.set(e.Name, e.Value) + t, _ := e.RawText() + content.WriteString(t) + case *types.AttributeReset: + ctx.attributes.unset(e.Name) + t, _ := e.RawText() + content.WriteString(t) + case *types.RawSection: + content.WriteString(ctx.levelOffsets.apply(e)) + case *types.FileInclusion: + f, err := includeFile(ctx.Clone(), e) + if err != nil { + return "", err } + content.WriteString(f) + case *types.BlockDelimiter: + t.push(types.BlockDelimiterKind(e.Kind)) + ctx.Opts = append(ctx.Opts, GlobalStore(delimitedBlockScopeKey, t.withinDelimitedBlock())) + t, _ := e.RawText() + content.WriteString(t) + default: + return "", fmt.Errorf("unexpected type of element while preprocessinh document: '%T'", e) } - result = append(result, e) - default: - result = append(result, element) } } - return result, nil + return content.String(), nil } // replace the content of this FileInclusion element the content of the target file // note: there is a trade-off here: we include the whole content of the file in the current // fragment, making it potentially big, but at the same time we ensure that the context // of the inclusion (for example, within a delimited block) is not lost. -func doIncludeFile(ctx *ParseContext, e *types.FileInclusion, done <-chan interface{}) ([]interface{}, error) { - // ctx.Opts = append(ctx.Opts, GlobalStore(documentHeaderKey, true)) - fileContent, err := contentOf(ctx, e) - if err != nil { - return nil, err - } - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("including content of '%s' with offsets %v", e.Location.Stringify(), ctx.levelOffsets) +func includeFile(ctx *ParseContext, incl *types.FileInclusion) (string, error) { + if err := applySubstitutionsOnBlockWithLocation(ctx, incl); err != nil { + return "", errors.Errorf("Unresolved directive in %s - %s", ctx.filename, incl.RawText) } - elements := []interface{}{} - for f := range ParseFragments(ctx, fileContent, done) { - if err := f.Error; err != nil { - return nil, err - } - // apply level offset on sections - for i, e := range f.Elements { - switch e := e.(type) { - case *types.DocumentHeader: - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("applying offsets to header section: %v", ctx.levelOffsets) - } - // header becomes a "regular" section - s := &types.Section{ - Title: e.Title, - Elements: e.Elements, - } - ctx.levelOffsets.apply(s) - if s.Level == 0 { // no level change: keep as the header - f.Elements[i] = e - } else { // level changed: becomes a section with some elements - f.Elements[i] = s - } - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("applied offsets to header/section: level is now %d", s.Level) - } - case *types.Section: - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("applying offsets to section of level %d: %v", e.Level, ctx.levelOffsets) - } - ctx.levelOffsets.apply(e) - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("applied offsets to section: level is now %d", e.Level) - } - } - } - elements = append(elements, f.Elements...) + content, err := contentOf(ctx, incl) + if err != nil { + return "", err } - // and recursively... - return doIncludeFiles(ctx, elements, done) + ctx.Opts = append(ctx.Opts, sectionEnabled()) + return processFileInclusions(ctx, bytes.NewReader(content)) } -func contentOf(ctx *ParseContext, incl *types.FileInclusion) (io.Reader, error) { - if err := applySubstitutionsOnBlockWithLocation(ctx, incl); err != nil { - log.Error(err) - return nil, errors.Errorf("Unresolved directive in %s - %s", ctx.filename, incl.RawText) +type builder struct { + strings.Builder + insertLF bool +} + +func (b *builder) WriteString(s string) { + b.doInsertLF() + b.Builder.WriteString(s) +} + +func (b *builder) Write(p []byte) { + b.doInsertLF() + b.Builder.Write(p) +} + +func (b *builder) doInsertLF() { + if b.insertLF { + b.Builder.WriteString("\n") } + // from now on, we will insert a `\n` before each new line (but there will be no extra `\n` at the end of the content) + b.insertLF = true +} + +func contentOf(ctx *ParseContext, incl *types.FileInclusion) ([]byte, error) { path := incl.Location.Stringify() currentDir := filepath.Dir(ctx.filename) - f, absPath, closeFile, err := open(filepath.Join(currentDir, path)) + filename := filepath.Join(currentDir, path) + + f, absPath, closeFile, err := open(filename) + defer closeFile() if err != nil { return nil, errors.Wrapf(err, "Unresolved directive in %s - %s", ctx.filename, incl.RawText) } - defer closeFile() - content := bytes.NewBuffer(nil) + result := bytes.NewBuffer(nil) scanner := bufio.NewScanner(bufio.NewReader(f)) if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("parsing file to %s", incl.RawText) + log.Debugf("reading %s", filename) } if lr, ok, err := lineRanges(incl); err != nil { return nil, errors.Wrapf(err, "Unresolved directive in %s - %s", ctx.filename, incl.RawText) } else if ok { - if err := readWithinLines(scanner, content, lr); err != nil { + if err := readWithinLines(scanner, result, lr); err != nil { return nil, errors.Wrapf(err, "Unresolved directive in %s - %s", ctx.filename, incl.RawText) } } else if tr, ok, err := tagRanges(incl); err != nil { return nil, errors.Wrapf(err, "Unresolved directive in %s - %s", ctx.filename, incl.RawText) } else if ok { - if err := readWithinTags(path, scanner, content, tr); err != nil { + if err := readWithinTags(path, scanner, result, tr); err != nil { return nil, errors.Wrapf(err, "Unresolved directive in %s - %s", ctx.filename, incl.RawText) } } else { - if err := readAll(scanner, content); err != nil { + if err := readAll(scanner, result); err != nil { log.Error(err) return nil, errors.Errorf("Unresolved directive in %s - %s", ctx.filename, incl.RawText) } @@ -208,18 +167,22 @@ func contentOf(ctx *ParseContext, incl *types.FileInclusion) (io.Reader, error) ctx.levelOffsets = []*levelOffset{absoluteOffset(offset)} } } - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("content of '%s':\n%s", absPath, content.String()) - } - return content, nil + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("content of '%s':\n%s", absPath, result.String()) + // } + return result.Bytes(), nil } type levelOffsets []*levelOffset -func (l levelOffsets) apply(s *types.Section) { +func (l levelOffsets) apply(s *types.RawSection) string { for _, offset := range l { offset.apply(s) } + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("applied offsets to section: level is now %d", s.Level) + } + return s.Stringify() } func (l levelOffsets) clone() levelOffsets { @@ -234,14 +197,14 @@ type levelOffset struct { value int } -func (l *levelOffset) apply(s *types.Section) { +func (l *levelOffset) apply(s *types.RawSection) { // also, absolute offset becomes relative offset after processing the first section, // so that the hierarchy of subsequent sections of the doc to include is preserved if l.absolute { l.absolute = false l.value = l.value - s.Level } - s.Level += l.value + s.OffsetLevel(l.value) } func relativeOffset(offset int) *levelOffset { @@ -426,16 +389,18 @@ func open(path string) (*os.File, string, func(), error) { absPath, err := filepath.Abs(path) if err != nil { return nil, "", func() { - // log.Debugf("restoring current working dir to: %s", wd) + log.Debugf("restoring current working dir to: %s", wd) if err := os.Chdir(wd); err != nil { // restore the previous working directory log.WithError(err).Error("failed to restore previous working directory") } }, err } dir := filepath.Dir(absPath) + // TODO: we could skip the Chdir part if we retain the absPath in the context, + // and use `filepath.Join` to compute the abspath of the file to include if err = os.Chdir(dir); err != nil { return nil, "", func() { - // log.Debugf("restoring current working dir to: %s", wd) + log.Debugf("restoring current working dir to: %s", wd) if err := os.Chdir(wd); err != nil { // restore the previous working directory log.WithError(err).Error("failed to restore previous working directory") } @@ -446,14 +411,14 @@ func open(path string) (*os.File, string, func(), error) { f, err := os.Open(absPath) if err != nil { return nil, absPath, func() { - // log.Debugf("restoring current working dir to: %s", wd) + log.Debugf("restoring current working dir to: %s", wd) if err := os.Chdir(wd); err != nil { // restore the previous working directory log.WithError(err).Error("failed to restore previous working directory") } }, err } return f, absPath, func() { - // log.Debugf("restoring current working dir to: %s", wd) + log.Debugf("restoring current working dir to: %s", wd) if err := os.Chdir(wd); err != nil { // restore the previous working directory log.WithError(err).Error("failed to restore previous working directory") } diff --git a/pkg/parser/document_processing_include_files_test.go b/pkg/parser/document_preprocessing_include_files_test.go similarity index 57% rename from pkg/parser/document_processing_include_files_test.go rename to pkg/parser/document_preprocessing_include_files_test.go index 16a8c2c1..df9d7089 100644 --- a/pkg/parser/document_processing_include_files_test.go +++ b/pkg/parser/document_preprocessing_include_files_test.go @@ -1,6 +1,10 @@ package parser_test import ( + "fmt" + "os" + "path/filepath" + "github.com/bytesparadise/libasciidoc/pkg/types" . "github.com/bytesparadise/libasciidoc/testsupport" @@ -9,7 +13,738 @@ import ( log "github.com/sirupsen/logrus" ) -var _ = Describe("file inclusions", func() { +var _ = Describe("file inclusions", func() { + + Context("in preparsed documents", func() { + + It("without file inclusion", func() { + source := `= Title +:toc: +:author: Xavier +:!author: + +cookie +chocolate` + expected := source // unchanged + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file without leveloffset from local file", func() { + source := "include::../../test/includes/chapter-a.adoc[]" + expected := `= Chapter A + +content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file with leveloffset", func() { + source := "include::../../test/includes/chapter-a.adoc[leveloffset=+1]" + expected := `== Chapter A + +content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include file with attribute in path", func() { + source := `:includedir: ../../test/includes + +include::{includedir}/chapter-a.adoc[]` + expected := `:includedir: ../../test/includes + += Chapter A + +content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should not further process with non-asciidoc files", func() { + source := `:includedir: ../../test/includes + +include::{includedir}/include.foo[]` + expected := `:includedir: ../../test/includes + +*some strong content* + +include::hello_world.go.txt[]` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include grandchild content without offset", func() { + source := `include::../../test/includes/grandchild-include.adoc[]` + expected := `== grandchild title + +first line of grandchild + +last line of grandchild` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include grandchild content with relative offset", func() { + source := `include::../../test/includes/grandchild-include.adoc[leveloffset=+1]` + expected := `=== grandchild title + +first line of grandchild + +last line of grandchild` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include grandchild content with absolute offset", func() { + source := `include::../../test/includes/grandchild-include.adoc[leveloffset=0]` + expected := `= grandchild title + +first line of grandchild + +last line of grandchild` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include child and grandchild content with relative level offset", func() { + source := `include::../../test/includes/parent-include-relative-offset.adoc[leveloffset=+1]` + expected := `== parent title + +first line of parent + +child preamble + +==== child section 1 + +first line of child + +===== grandchild title + +first line of grandchild + +last line of grandchild + +===== child section 2 + +last line of child + +last line of parent` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include child and grandchild content with relative then absolute level offset", func() { + source := `include::../../test/includes/parent-include-absolute-offset.adoc[leveloffset=+1]` + expected := `== parent title + +first line of parent + +child preamble + +==== child section 1 + +first line of child + +===== grandchild title + +first line of grandchild + +last line of grandchild + +===== child section 2 + +last line of child + +last line of parent` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc with attributes file within main content", func() { + source := `include::../../test/includes/attributes.adoc[]` + expected := `:author: Xavier +:leveloffset: +1 + +some content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + Context("with delimited blocks", func() { + + It("should include adoc with attributes file within listing block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `---- +include::../../test/includes/attributes.adoc[] +----` + expected := `---- +:author: Xavier +:leveloffset: +1 + +some content +----` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within comment block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `//// +include::../../test/includes/parent-include.adoc[leveloffset=+1] +////` + expected := `//// +:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!: +////` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within example block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `==== +include::../../test/includes/parent-include.adoc[leveloffset=+1] +====` + expected := `==== +:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!: +====` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within fenced block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := "```\n" + + "include::../../test/includes/parent-include.adoc[leveloffset=+1]\n" + + "```\n" + + "<1> a callout" + expected := "```\n" + + `:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!:` + + "\n```\n" + + `<1> a callout` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within listing block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `---- +include::../../test/includes/parent-include.adoc[leveloffset=+1] +----` + expected := `---- +:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!: +----` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within literal block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `.... +include::../../test/includes/parent-include.adoc[leveloffset=+1] +....` + expected := `.... +:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!: +....` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within passthrough block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `++++ +include::../../test/includes/parent-include.adoc[leveloffset=+1] +++++` + expected := `++++ +:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!: +++++` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within quote block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `____ +include::../../test/includes/parent-include.adoc[leveloffset=+1] +____` + expected := `____ +:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!: +____` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should include adoc file within sidebar block", func() { + // the `leveloffset=+1` attribute does not have effect on sections within a delimited block + source := `**** +include::../../test/includes/parent-include.adoc[leveloffset=+1] +****` + expected := `**** +:leveloffset: +1 + += parent title + +first line of parent + += child title + +first line of child + +== grandchild title + +first line of grandchild + +last line of grandchild + +last line of child + +last line of parent <1> + +:leveloffset!: +****` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + }) + + Context("with line ranges", func() { + + Context("unquoted", func() { + + It("with single unquoted line", func() { + source := `include::../../test/includes/chapter-a.adoc[lines=1]` + expected := `= Chapter A` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with multiple unquoted lines", func() { + source := `include::../../test/includes/chapter-a.adoc[lines=1..3]` + expected := `= Chapter A + +content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with multiple unquoted ranges (becoming authors)", func() { + source := `include::../../test/includes/chapter-a.adoc[lines=1;3..4;6..-1]` // paragraph becomes the author since the in-between blank line is stripped out + expected := `= Chapter A +content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with invalid unquoted range - case 1", func() { + source := `include::../../test/includes/chapter-a.adoc[lines=1;3..4;6..foo]` // not a number + _, err := PreparseDocument(source) + Expect(err).To(MatchError(`Unresolved directive in test.adoc - include::../../test/includes/chapter-a.adoc[lines=1;3..4;6..foo]: 1:11 (10): no match found, expected: "-" or [0-9]`)) + }) + + It("with invalid unquoted range - case 2", func() { + source := `include::../../test/includes/chapter-a.adoc[lines=1,3..4,6..-1]` // using commas instead of semi-colons + expected := `= Chapter A` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + }) + + Context("quoted", func() { + + It("with single line", func() { + source := `include::../../test/includes/chapter-a.adoc[lines="1"]` + expected := `= Chapter A` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with multiple lines", func() { + source := `include::../../test/includes/chapter-a.adoc[lines="1..2"]` + expected := `= Chapter A +` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with multiple ranges with colons (becoming authors)", func() { + // here, the `content` paragraph gets attached to the header and becomes the author + source := `include::../../test/includes/chapter-a.adoc[lines="1,3..4,6..-1"]` + expected := `= Chapter A +content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with multiple ranges with semicolons (becoming authors)", func() { + // here, the `content` paragraph gets attached to the header and becomes the author + source := `include::../../test/includes/chapter-a.adoc[lines="1;3..4;6..-1"]` + expected := `= Chapter A +content` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with invalid range - case 1", func() { + source := `include::../../test/includes/chapter-a.adoc[lines="1,3..4,6..foo"]` // not a number + _, err := PreparseDocument(source) + Expect(err).To(MatchError(`Unresolved directive in test.adoc - include::../../test/includes/chapter-a.adoc[lines="1,3..4,6..foo"]: 1:11 (10): no match found, expected: "-" or [0-9]`)) + }) + + It("with ignored tags", func() { + // include using a line range a file having tags + source := `include::../../test/includes/tag-include.adoc[lines=3]` + expected := `== Section 1` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + }) + }) + + Context("with tag ranges", func() { + + It("with single tag", func() { + source := `include::../../test/includes/tag-include.adoc[tag=section]` + expected := `== Section 1` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with surrounding tag", func() { + source := `include::../../test/includes/tag-include.adoc[tag=doc]` + expected := `== Section 1 + +content +` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with unclosed tag", func() { + // setup logger to write in a buffer so we can check the output + source := `include::../../test/includes/tag-include-unclosed.adoc[tag=unclosed]` + expected := ` +content + + +end` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("with unknown tag", func() { + source := `include::../../test/includes/tag-include.adoc[tag=unknown]` + // when/then + _, err := PreparseDocument(source) + // verify error in logs + Expect(err).To(MatchError("Unresolved directive in test.adoc - include::../../test/includes/tag-include.adoc[tag=unknown]: tag 'unknown' not found in file to include")) + }) + + It("with no tag", func() { + source := `include::../../test/includes/tag-include.adoc[]` + expected := `== Section 1 + +content + + +end` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + Context("permutations", func() { + + It("all lines", func() { + source := `include::../../test/includes/tag-include.adoc[tag=**]` // includes all content except lines with tags + expected := `== Section 1 + +content + + +end` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("all tagged regions", func() { + source := `include::../../test/includes/tag-include.adoc[tag=*]` // includes all regions (ie, skip last `end` line) + expected := `== Section 1 + +content +` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("all the lines outside and inside of tagged regions", func() { + source := `include::../../test/includes/tag-include.adoc[tag=**;*]` // includes all regions + expected := `== Section 1 + +content + + +end` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("regions tagged doc, but not nested regions tagged content", func() { + source := `include::../../test/includes/tag-include.adoc[tag=doc;!content]` // includes all `doc` but `content` nested region + expected := `== Section 1 +` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("all tagged regions, but excludes any regions tagged content", func() { + source := `include::../../test/includes/tag-include.adoc[tag=*;!content]` // includes all regions but `content` (and `end`) + expected := `== Section 1 +` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("all tagged regions, but excludes any regions tagged content", func() { + source := `include::../../test/includes/tag-include.adoc[tag=**;!content]` // includes all lines but `content` + expected := `== Section 1 + + +end` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("**;!* — selects only the regions of the document outside of tags", func() { + source := `include::../../test/includes/tag-include.adoc[tag=**;!*]` // excludes all regions + expected := ` +end` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + }) + + }) + + Context("with missing file to include", func() { + + var wd string + BeforeEach(func() { + var err error + wd, err = os.Getwd() + Expect(err).NotTo(HaveOccurred()) + }) + + It("should fail if directory does not exist in standalone block", func() { + source := `include::{unknown}/unknown.adoc[leveloffset=+1]` + _, err := PreparseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::{unknown}/unknown.adoc[leveloffset=+1]: chdir %s", filepath.Join(wd, "{unknown}")))) + }) + + It("should fail if file is missing in standalone block", func() { + source := `include::unknown.adoc[leveloffset=+1]` + _, err := PreparseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::unknown.adoc[leveloffset=+1]: open %s", filepath.Join(wd, "unknown.adoc")))) + }) + + It("should fail if file with attribute in path is not resolved in standalone block", func() { + source := `include::{includedir}/unknown.adoc[leveloffset=+1]` + _, err := PreparseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::{includedir}/unknown.adoc[leveloffset=+1]: chdir %s", filepath.Join(wd, "{includedir}")))) + }) + + It("should fail if file is missing in delimited block", func() { + source := `---- +include::../../test/includes/unknown.adoc[leveloffset=+1] +----` + _, err := PreparseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::../../test/includes/unknown.adoc[leveloffset=+1]: open %s", filepath.Join(wd, "../../test/includes/unknown.adoc")))) + }) + + It("should fail if file with attribute in path is not resolved in delimited block", func() { + source := `---- +include::{includedir}/unknown.adoc[leveloffset=+1] +----` + _, err := PreparseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::{includedir}/unknown.adoc[leveloffset=+1]: chdir %s", filepath.Join(wd, "{includedir}")))) + }) + }) + + Context("with inclusion with attribute in path", func() { + + It("should resolve path with attribute in standalone block from local file", func() { + source := `:includedir: ../../test/includes + +include::{includedir}/grandchild-include.adoc[]` + expected := `:includedir: ../../test/includes + +== grandchild title + +first line of grandchild + +last line of grandchild` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("should resolve path with attribute in delimited block", func() { + source := `:includedir: ../../test/includes + +---- +include::{includedir}/grandchild-include.adoc[] +----` + expected := `:includedir: ../../test/includes + +---- +== grandchild title + +first line of grandchild + +last line of grandchild +----` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + }) + + Context("inclusion of non-asciidoc file", func() { + + It("include go file without any range in listing block", func() { + + source := `---- +include::../../test/includes/hello_world.go.txt[] +----` + expected := `---- +package includes + +import "fmt" + +func helloworld() { + fmt.Println("hello, world!") +} +----` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + + It("include go file with a simple range in listing block", func() { + + source := `---- +include::../../test/includes/hello_world.go.txt[lines=1] +----` + expected := `---- +package includes +----` + Expect(PreparseDocument(source)).To(Equal(expected)) + }) + }) + + }) Context("in final documents", func() { @@ -83,11 +818,6 @@ var _ = Describe("file inclusions", func() { source := `:includedir: ../../test/includes include::{includedir}/chapter-a.adoc[]` - title := []interface{}{ - &types.StringElement{ - Content: "Chapter A", - }, - } expected := &types.Document{ Elements: []interface{}{ &types.AttributeDeclaration{ @@ -95,7 +825,11 @@ include::{includedir}/chapter-a.adoc[]` Value: "../../test/includes", }, &types.DocumentHeader{ - Title: title, + Title: []interface{}{ + &types.StringElement{ + Content: "Chapter A", + }, + }, }, &types.Paragraph{ Elements: []interface{}{ @@ -235,33 +969,24 @@ include::{includedir}/include.foo[]` } expected := &types.Document{ Elements: []interface{}{ - &types.Section{ - Attributes: types.Attributes{ - types.AttrID: "_grandchild_title", - }, - Level: 0, + &types.DocumentHeader{ Title: title, + }, + &types.Paragraph{ Elements: []interface{}{ - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "first line of grandchild", - }, - }, + &types.StringElement{ + Content: "first line of grandchild", }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "last line of grandchild", - }, - }, + }, + }, + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "last line of grandchild", }, }, }, }, - ElementReferences: types.ElementReferences{ - "_grandchild_title": title, - }, } Expect(ParseDocument(source)).To(MatchDocument(expected)) }) @@ -530,41 +1255,82 @@ include::{includedir}/include.foo[]` Expect(ParseDocument(source)).To(MatchDocument(expected)) }) - It("should include adoc with attributes file within listing block", func() { - source := `---- + Context("with delimited blocks", func() { + + It("should include adoc with attributes file within commment block", func() { + source := `//// +include::../../test/includes/attributes.adoc[] +////` + expected := &types.Document{} + Expect(ParseDocument(source)).To(MatchDocument(expected)) + }) + + It("should include adoc with attributes file within example block", func() { + source := `==== +include::../../test/includes/attributes.adoc[] +====` + expected := &types.Document{ + Elements: []interface{}{ + &types.DelimitedBlock{ + Kind: types.Example, + Elements: []interface{}{ + &types.AttributeDeclaration{ + Name: "author", + Value: "Xavier", + }, + &types.AttributeDeclaration{ + Name: "leveloffset", + Value: "+1", + }, + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: `some content`, + }, + }, + }, + }, + }, + }, + } + Expect(ParseDocument(source)).To(MatchDocument(expected)) + }) + + It("should include adoc with attributes file within listing block", func() { + source := `---- include::../../test/includes/attributes.adoc[] ----` - expected := &types.Document{ - Elements: []interface{}{ - &types.DelimitedBlock{ - Kind: types.Listing, - Elements: []interface{}{ - &types.StringElement{ - Content: `:author: Xavier + expected := &types.Document{ + Elements: []interface{}{ + &types.DelimitedBlock{ + Kind: types.Listing, + Elements: []interface{}{ + &types.StringElement{ + Content: `:author: Xavier :leveloffset: +1 some content`, + }, }, }, }, - }, - } - Expect(ParseDocument(source)).To(MatchDocument(expected)) - }) + } + Expect(ParseDocument(source)).To(MatchDocument(expected)) + }) - It("should include adoc file within fenced block", func() { - source := "```\n" + - "include::../../test/includes/parent-include.adoc[]\n" + - "```\n" + - "<1> a callout" - // include the doc without parsing the elements (besides the file inclusions) - expected := &types.Document{ - Elements: []interface{}{ - &types.DelimitedBlock{ - Kind: types.Fenced, - Elements: []interface{}{ - &types.StringElement{ - Content: `:leveloffset: +1 + It("should include adoc file within fenced block", func() { + source := "```\n" + + "include::../../test/includes/parent-include.adoc[]\n" + + "```\n" + + "<1> a callout" + // include the doc without parsing the elements (besides the file inclusions) + expected := &types.Document{ + Elements: []interface{}{ + &types.DelimitedBlock{ + Kind: types.Fenced, + Elements: []interface{}{ + &types.StringElement{ + Content: `:leveloffset: +1 = parent title @@ -583,25 +1349,26 @@ last line of grandchild last line of child last line of parent `, - }, - &types.Callout{ - Ref: 1, - }, - &types.StringElement{ - Content: "\n\n:leveloffset!:", + }, + &types.Callout{ + Ref: 1, + }, + &types.StringElement{ + Content: "\n\n:leveloffset!:", + }, }, }, - }, - &types.List{ - Kind: types.CalloutListKind, - Elements: []types.ListElement{ - &types.CalloutListElement{ - Ref: 1, - Elements: []interface{}{ - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "a callout", + &types.List{ + Kind: types.CalloutListKind, + Elements: []types.ListElement{ + &types.CalloutListElement{ + Ref: 1, + Elements: []interface{}{ + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "a callout", + }, }, }, }, @@ -609,104 +1376,105 @@ last line of parent `, }, }, }, - }, - } - Expect(ParseDocument(source)).To(MatchDocument(expected)) - }) + } + Expect(ParseDocument(source)).To(MatchDocument(expected)) + }) - It("should include adoc file within quote block", func() { - source := "____\n" + - "include::../../test/includes/parent-include.adoc[]\n" + - "____" - expected := &types.Document{ - Elements: []interface{}{ - &types.DelimitedBlock{ - Kind: types.Quote, - Elements: []interface{}{ - &types.AttributeDeclaration{ - Name: "leveloffset", - Value: string("+1"), - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "= parent title", - }, + It("should include adoc file within quote block", func() { + source := `____ +include::../../test/includes/parent-include.adoc[] +____` + expected := &types.Document{ + Elements: []interface{}{ + &types.DelimitedBlock{ + Kind: types.Quote, + Elements: []interface{}{ + &types.AttributeDeclaration{ + Name: "leveloffset", + Value: string("+1"), }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "first line of parent", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "= parent title", + }, }, }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "= child title", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "first line of parent", + }, }, }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "first line of child", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "= child title", + }, }, }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "== grandchild title", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "first line of child", + }, }, }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "first line of grandchild", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "== grandchild title", + }, }, }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "last line of grandchild", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "first line of grandchild", + }, }, }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "last line of child", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "last line of grandchild", + }, }, }, - }, - &types.Paragraph{ - Elements: []interface{}{ - &types.StringElement{ - Content: "last line of parent ", - }, - &types.SpecialCharacter{ - Name: "<", - }, - &types.StringElement{ - Content: "1", + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "last line of child", + }, }, - &types.SpecialCharacter{ - Name: ">", + }, + &types.Paragraph{ + Elements: []interface{}{ + &types.StringElement{ + Content: "last line of parent ", + }, + &types.SpecialCharacter{ + Name: "<", + }, + &types.StringElement{ + Content: "1", + }, + &types.SpecialCharacter{ + Name: ">", + }, }, }, - }, - &types.AttributeReset{ - Name: "leveloffset", + &types.AttributeReset{ + Name: "leveloffset", + }, }, }, }, - }, - } - Expect(ParseDocument(source)).To(MatchDocument(expected)) + } + Expect(ParseDocument(source)).To(MatchDocument(expected)) + }) + }) Context("with line ranges", func() { @@ -781,12 +1549,10 @@ last line of parent `, }) It("with invalid unquoted range - case 1", func() { - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() source := `include::../../test/includes/chapter-a.adoc[lines=1;3..4;6..foo]` // not a number - expected := &types.Document{} - Expect(ParseDocument(source)).To(MatchDocument(expected)) - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 64, "Unresolved directive in test.adoc - include::../../test/includes/chapter-a.adoc[lines=1;3..4;6..foo]")) + _, err := ParseDocument(source) + GinkgoT().Logf(err.Error()) + Expect(err).To(MatchError(`Unresolved directive in test.adoc - include::../../test/includes/chapter-a.adoc[lines=1;3..4;6..foo]: 1:11 (10): no match found, expected: "-" or [0-9]`)) }) It("with invalid unquoted range - case 2", func() { @@ -903,12 +1669,10 @@ last line of parent `, }) It("with invalid range - case 1", func() { - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() source := `include::../../test/includes/chapter-a.adoc[lines="1,3..4,6..foo"]` // not a number _, err := ParseDocument(source) - Expect(err).NotTo(HaveOccurred()) // parsing does not fail, but an error is logged for the fragment with the `include` macro - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 66, "Unresolved directive in test.adoc - include::../../test/includes/chapter-a.adoc[lines=\"1,3..4,6..foo\"]")) + GinkgoT().Logf(err.Error()) + Expect(err).To(MatchError(`Unresolved directive in test.adoc - include::../../test/includes/chapter-a.adoc[lines="1,3..4,6..foo"]: 1:11 (10): no match found, expected: "-" or [0-9]`)) }) It("with ignored tags", func() { @@ -1035,15 +1799,11 @@ last line of parent `, It("with unknown tag", func() { // given - // setup logger to write in a buffer so we can check the output - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() source := `include::../../test/includes/tag-include.adoc[tag=unknown]` // when/then _, err := ParseDocument(source) - // verify error in logs - Expect(err).NotTo(HaveOccurred()) // parsing does not fail, but an error is logged for the fragment with the `include` macro - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 58, "Unresolved directive in test.adoc - include::../../test/includes/tag-include.adoc[tag=unknown]: tag 'unknown' not found in file to include")) + // verify error + Expect(err).To(MatchError("Unresolved directive in test.adoc - include::../../test/includes/tag-include.adoc[tag=unknown]: tag 'unknown' not found in file to include")) }) It("with no tag", func() { @@ -1302,53 +2062,55 @@ last line of parent `, Context("with missing file to include", func() { + var wd string + BeforeEach(func() { + var err error + wd, err = os.Getwd() + Expect(err).NotTo(HaveOccurred()) + }) + It("should fail if directory does not exist in standalone block", func() { - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() source := `include::{unknown}/unknown.adoc[leveloffset=+1]` - expected := &types.Document{} - Expect(ParseDocument(source)).To(MatchDocument(expected)) - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 47, "Unresolved directive in test.adoc - include::{unknown}/unknown.adoc[leveloffset=+1]")) + _, err := ParseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::{unknown}/unknown.adoc[leveloffset=+1]: chdir %s", filepath.Join(wd, "{unknown}")))) }) It("should fail if file is missing in standalone block", func() { - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() - source := `include::{unknown}/unknown.adoc[leveloffset=+1]` - expected := &types.Document{} - Expect(ParseDocument(source)).To(MatchDocument(expected)) - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 47, "Unresolved directive in test.adoc - include::{unknown}/unknown.adoc[leveloffset=+1]")) + source := `include::unknown.adoc[leveloffset=+1]` + _, err := ParseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::unknown.adoc[leveloffset=+1]: open %s", filepath.Join(wd, "unknown.adoc")))) }) It("should fail if file with attribute in path is not resolved in standalone block", func() { - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() source := `include::{includedir}/unknown.adoc[leveloffset=+1]` - expected := &types.Document{} - Expect(ParseDocument(source)).To(MatchDocument(expected)) - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 50, "Unresolved directive in test.adoc - include::{includedir}/unknown.adoc[leveloffset=+1]")) + _, err := ParseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::{includedir}/unknown.adoc[leveloffset=+1]: chdir %s", filepath.Join(wd, "{includedir}")))) }) It("should fail if file is missing in delimited block", func() { - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() source := `---- include::../../test/includes/unknown.adoc[leveloffset=+1] ----` - expected := &types.Document{} - Expect(ParseDocument(source)).To(MatchDocument(expected)) - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 67, "Unresolved directive in test.adoc - include::../../test/includes/unknown.adoc[leveloffset=+1]")) + _, err := ParseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::../../test/includes/unknown.adoc[leveloffset=+1]: open %s", filepath.Join(wd, "../../test/includes/unknown.adoc")))) }) It("should fail if file with attribute in path is not resolved in delimited block", func() { - logs, reset := ConfigureLogger(log.WarnLevel) - defer reset() source := `---- include::{includedir}/unknown.adoc[leveloffset=+1] ----` - expected := &types.Document{} - Expect(ParseDocument(source)).To(MatchDocument(expected)) - Expect(logs).To(ContainJSONLogWithOffset(log.ErrorLevel, 0, 60, "Unresolved directive in test.adoc - include::{includedir}/unknown.adoc[leveloffset=+1]")) + _, err := ParseDocument(source) + GinkgoT().Log(err.Error()) + Expect(err).To(HaveOccurred()) + Expect(err.Error()).To(ContainSubstring(fmt.Sprintf("Unresolved directive in test.adoc - include::{includedir}/unknown.adoc[leveloffset=+1]: chdir %s", filepath.Join(wd, "{includedir}")))) }) }) diff --git a/pkg/parser/document_processing.go b/pkg/parser/document_processing.go index ffa7b06c..a3404c9a 100644 --- a/pkg/parser/document_processing.go +++ b/pkg/parser/document_processing.go @@ -5,13 +5,11 @@ import ( "github.com/bytesparadise/libasciidoc/pkg/configuration" "github.com/bytesparadise/libasciidoc/pkg/types" - "github.com/davecgh/go-spew/spew" - log "github.com/sirupsen/logrus" ) const bufferSize = 10 -// ParseDocument parses the content of the reader identitied by the filename +// ParseDocument parses the content of the reader identitied by the filename and applies all the substitutions and arrangements func ParseDocument(r io.Reader, config *configuration.Configuration, opts ...Option) (*types.Document, error) { done := make(chan interface{}) defer close(done) @@ -24,9 +22,7 @@ func ParseDocument(r io.Reader, config *configuration.Configuration, opts ...Opt ArrangeLists(done, CollectFootnotes(footnotes, done, ApplySubstitutions(ctx.Clone(), done, // needs to be before 'ArrangeLists' - IncludeFiles(ctx.Clone(), done, - ParseFragments(ctx.Clone(), r, done), - ), + ParseFragments(ctx.Clone(), r, done), ), ), ), @@ -39,8 +35,8 @@ func ParseDocument(r io.Reader, config *configuration.Configuration, opts ...Opt if len(footnotes.Notes) > 0 { doc.Footnotes = footnotes.Notes } - if log.IsLevelEnabled(log.InfoLevel) { - log.Infof("parsed document:\n%s", spew.Sdump(doc)) - } + // if log.IsLevelEnabled(log.InfoLevel) { + // log.Infof("parsed document:\n%s", spew.Sdump(doc)) + // } return doc, nil } diff --git a/pkg/parser/document_processing_apply_substitutions.go b/pkg/parser/document_processing_apply_substitutions.go index 8e5c41a3..4a2f8574 100644 --- a/pkg/parser/document_processing_apply_substitutions.go +++ b/pkg/parser/document_processing_apply_substitutions.go @@ -32,9 +32,9 @@ func ApplySubstitutions(ctx *ParseContext, done <-chan interface{}, fragmentStre } func applySubstitutions(ctx *ParseContext, f types.DocumentFragment) types.DocumentFragment { - if log.IsLevelEnabled(log.DebugLevel) { - log.WithField("pipeline_stage", "apply_substitutions").Debugf("incoming fragment:\n%s", spew.Sdump(f)) - } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.WithField("pipeline_stage", "apply_substitutions").Debugf("incoming fragment:\n%s", spew.Sdump(f)) + // } // if the fragment already contains an error, then send it as-is downstream if f.Error != nil { log.Debugf("skipping substitutions because of fragment with error: %v", f.Error) @@ -575,11 +575,10 @@ func (s *substitution) hasEnablements() bool { } func (s *substitution) processAttributes(ctx *ParseContext, element types.BlockWithAttributes, opts ...Option) error { - if log.IsLevelEnabled(log.DebugLevel) { - log. - WithField("entrypoint", s.entrypoint). - Debugf("processing attributes of %s", spew.Sdump(element)) - } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.WithField("entrypoint", s.entrypoint). + // Debugf("processing attributes of %s", spew.Sdump(element)) + // } // TODO: only parse element attributes if an attribute substitution occurred? attrs, err := s.parseAttributes(element.GetAttributes(), opts...) if err != nil { @@ -597,9 +596,9 @@ func (s *substitution) processAttributes(ctx *ParseContext, element types.BlockW // clone substitution so we start again with `hasAttributeSubstitutions=false` without loosing this `s.hasAttributeSubstitutions` value (needed to re-process elements) return s.clone().processAttributes(ctx, element, opts...) } - if log.IsLevelEnabled(log.DebugLevel) { - log.WithField("entrypoint", s.entrypoint).Debugf("done processing attributes of %s", spew.Sdump(element)) - } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.WithField("entrypoint", s.entrypoint).Debugf("done processing attributes of %s", spew.Sdump(element)) + // } return nil } @@ -795,9 +794,9 @@ func (s *substitution) parseAttributes(attributes types.Attributes, opts ...Opti attributes[name] = value } } - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("parsed attributes with rule '%s': %s", s.entrypoint, spew.Sdump(attributes)) - } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("parsed attributes with rule '%s': %s", s.entrypoint, spew.Sdump(attributes)) + // } return attributes, nil } @@ -813,6 +812,9 @@ func (s *substitution) parseContent(content []byte, opts ...Option) ([]interface if !ok { return nil, fmt.Errorf("unexpected type of content after parsing elements: '%T'", result) } + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("parsed content:\n%s", spew.Sdump(r)) + } return r, nil } @@ -1020,7 +1022,6 @@ func (p *placeholders) restore(elements []interface{}) ([]interface{}, error) { return elements, nil } for i, e := range elements { - // if e, ok := e.(*types.ElementPlaceHolder); ok { elements[i] = p.elements[e.Ref] } @@ -1257,48 +1258,3 @@ const ( // SpecialCharacters the "specialchars" substitution SpecialCharacters substitutionKind = "specialchars" ) - -const delimitedBlockScopeKey = "delimited_block_scope" - -// state info to indicate that parsing is happening within a delimited block of the given kind, -// in which case some grammar rules may need to be disabled -func (c *current) setWithinDelimitedBlockOfKind(kind string) { - // if log.IsLevelEnabled(log.DebugLevel) { - // log.Debugf("setting scope within block of kind '%s'", kind) - // } - c.globalStore[delimitedBlockScopeKey] = kind -} - -// state info to indicate that parsing is happening within a delimited block of the given kind, -// in which case some grammar rules may need to be disabled -func (c *current) unsetWithinDelimitedBlock() { - // if log.IsLevelEnabled(log.DebugLevel) { - // log.Debugf("unsetting scope within block of kind '%s'", kind) - // } - delete(c.globalStore, delimitedBlockScopeKey) -} - -// state info to determine if parsing is happening within a delimited block (any kind), -// in which case some grammar rules need to be disabled -func (c *current) isWithinDelimitedBlock() bool { - _, found := c.globalStore[delimitedBlockScopeKey].(string) - // if log.IsLevelEnabled(log.DebugLevel) { - // log.Debugf("checking if within delimited block: %t", found) - // } - return found -} - -// state info to determine if parsing is happening within a delimited block of the given kind, -// in which case some grammar rules need to be disabled -func (c *current) isWithinDelimitedBlockOfKind(kind string) bool { - if k, found := c.globalStore[delimitedBlockScopeKey].(string); found { - // if log.IsLevelEnabled(log.DebugLevel) { - // log.Debugf("checking if within block of kind '%s': %t (1)", kind, k == kind) - // } - return k == kind - } - // if log.IsLevelEnabled(log.DebugLevel) { - // log.Debugf("checking if within block of kind '%s': false (2)", kind) - // } - return false -} diff --git a/pkg/parser/document_processing_parse_fragments.go b/pkg/parser/document_processing_parse_fragments.go index 482ab43c..b8bee5ba 100644 --- a/pkg/parser/document_processing_parse_fragments.go +++ b/pkg/parser/document_processing_parse_fragments.go @@ -57,6 +57,20 @@ func ParseFragments(ctx *ParseContext, source io.Reader, done <-chan interface{} } else { f.Elements = []interface{}{element} } + for _, e := range f.Elements { // TODO: change the grammar rules of these delimited blocks to avoid 2nd parsing + switch e := e.(type) { + case *types.DelimitedBlock: + switch e.Kind { + case types.Example, types.Quote, types.Sidebar: + if e.Elements, err = parseDelimitedBlockElements(ctx, e); err != nil { + // log the error, but keep the delimited block empty so we can carry on with the whole processing + log.WithError(err).Error("unable to parse content of delimited block") + e.Elements = nil + break + } + } + } + } if log.IsLevelEnabled(log.DebugLevel) { log.Debugf("parsed fragment:\n%s", spew.Sdump(f)) } @@ -76,16 +90,18 @@ func parseDelimitedBlockElements(ctx *ParseContext, b *types.DelimitedBlock) ([] log.Debugf("parsing content of delimited block of kind '%s'", b.Kind) // TODO: use real Substitution? content, placeholders := serialize(b.Elements) - opts := append(ctx.Opts, Entrypoint("DelimitedBlockElements"), GlobalStore(delimitedBlockScopeKey, b.Kind)) + opts := append(ctx.Opts, Entrypoint("DelimitedBlockElements"), GlobalStore(delimitedBlockScopeKey, true)) elements, err := Parse("", content, opts...) if err != nil { return nil, errors.Wrap(err, "unable to parse content") // ignore error (malformed content) } - result, ok := elements.([]interface{}) - if !ok { - return nil, errors.Errorf("unexpected type of result after parsing elements of delimited block: '%T'", result) + log.Debugf("elements: '%s'", spew.Sdump(elements)) + switch e := elements.(type) { + case []interface{}: + return placeholders.restore(e) + default: + return nil, errors.Errorf("unexpected type of result after parsing elements of delimited block: '%T'", e) } - return placeholders.restore(result) } const documentHeaderKey = "document_header" @@ -99,18 +115,33 @@ func (c *current) isFrontMatterAllowed() bool { return found && allowed && !c.isWithinDelimitedBlock() } -func (c *current) setFrontMatterAllowed(a bool) { - c.globalStore[frontMatterKey] = a +func (c *current) disableFrontMatterRule() { + c.globalStore[frontMatterKey] = false } func (c *current) isDocumentHeaderAllowed() bool { allowed, found := c.globalStore[documentHeaderKey].(bool) - // if log.IsLevelEnabled(log.DebugLevel) { - // log.Debugf("checking if DocumentHeader is allowed: %t", found && allowed && !c.isWithinDelimitedBlock()) - // } + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("checking if DocumentHeader is allowed: %t", found && allowed && !c.isWithinDelimitedBlock()) + } return found && allowed && !c.isWithinDelimitedBlock() } -func (c *current) setDocumentHeaderAllowed(a bool) { - c.globalStore[documentHeaderKey] = a +func (c *current) disableDocumentHeaderRule(element interface{}) { + // if already disabled, then skip + if enabled, found := c.globalStore[documentHeaderKey].(bool); found && !enabled { + return + } + // disable based on type of element + switch element.(type) { + case *types.AttributeDeclaration, *types.AttributeReset, *types.BlankLine: + // do not disable yet + return + default: + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("disabling DocumentHeader after parsing element of type '%T'", element) + } + c.globalStore[documentHeaderKey] = false + + } } diff --git a/pkg/parser/generate.go b/pkg/parser/generate.go index 5a60c7f4..71023179 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 DocumentFragment,PostReplacementsGroup,DelimitedBlockElements,ElementAttributesGroup,DocumentFragmentWithinVerbatimBlock,NormalGroup,HeaderGroup,AttributesGroup,MacrosGroup,QuotesGroup,NoneGroup,ReplacementsGroup,SpecialCharactersGroup,VerbatimGroup,FileLocation,IncludedFileLine,MarkdownQuoteAttribution,BlockAttributes,InlineAttributes,TableColumnsAttribute,LineRanges,TagRanges -o parser.go parser.peg +//go:generate pigeon -optimize-parser -optimize-grammar -alternate-entrypoints DocumentRawLine,DocumentFragment,PostReplacementsGroup,DelimitedBlockElements,ElementAttributesGroup,NormalGroup,HeaderGroup,AttributesGroup,MacrosGroup,QuotesGroup,NoneGroup,ReplacementsGroup,SpecialCharactersGroup,VerbatimGroup,FileLocation,IncludedFileLine,MarkdownQuoteAttribution,BlockAttributes,InlineAttributes,TableColumnsAttribute,LineRanges,TagRanges -o parser.go parser.peg diff --git a/pkg/parser/parser.go b/pkg/parser/parser.go index 6b749fe4..0154d510 100644 --- a/pkg/parser/parser.go +++ b/pkg/parser/parser.go @@ -18,86 +18,48 @@ import ( "unicode/utf8" "github.com/bytesparadise/libasciidoc/pkg/types" - - log "github.com/sirupsen/logrus" ) var g = &grammar{ rules: []*rule{ { - name: "DocumentFragment", - pos: position{line: 21, col: 1, offset: 424}, + name: "DocumentRawLine", + pos: position{line: 25, col: 1, offset: 440}, expr: &actionExpr{ - pos: position{line: 22, col: 5, offset: 448}, - run: (*parser).callonDocumentFragment1, + pos: position{line: 26, col: 5, offset: 464}, + run: (*parser).callonDocumentRawLine1, expr: &seqExpr{ - pos: position{line: 22, col: 5, offset: 448}, + pos: position{line: 26, col: 5, offset: 464}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 22, col: 5, offset: 448}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 23, col: 5, offset: 457}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 23, col: 16, offset: 468}, - expr: &ruleRefExpr{ - pos: position{line: 23, col: 17, offset: 469}, - name: "BlockAttributes", - }, - }, - }, &labeledExpr{ - pos: position{line: 24, col: 5, offset: 491}, + pos: position{line: 26, col: 5, offset: 464}, label: "element", expr: &choiceExpr{ - pos: position{line: 25, col: 9, offset: 509}, + pos: position{line: 27, col: 9, offset: 482}, alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 25, col: 9, offset: 509}, - name: "ImageBlock", - }, - &ruleRefExpr{ - pos: position{line: 26, col: 11, offset: 570}, - name: "UserMacroBlock", - }, - &ruleRefExpr{ - pos: position{line: 27, col: 11, offset: 635}, - name: "FileInclusion", - }, - &ruleRefExpr{ - pos: position{line: 28, col: 11, offset: 699}, - name: "ShortcutParagraph", - }, &actionExpr{ - pos: position{line: 110, col: 5, offset: 3252}, - run: (*parser).callonDocumentFragment15, + pos: position{line: 253, col: 5, offset: 7909}, + run: (*parser).callonDocumentRawLine5, expr: &seqExpr{ - pos: position{line: 110, col: 5, offset: 3252}, + pos: position{line: 253, col: 5, offset: 7909}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 110, col: 5, offset: 3252}, + pos: position{line: 253, col: 5, offset: 7909}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 110, col: 9, offset: 3256}, + pos: position{line: 253, col: 9, offset: 7913}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment19, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentRawLine9, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -106,9 +68,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -122,29 +84,29 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 110, col: 30, offset: 3277}, + pos: position{line: 253, col: 30, offset: 7934}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 111, col: 5, offset: 3286}, + pos: position{line: 254, col: 5, offset: 7943}, label: "value", expr: &zeroOrOneExpr{ - pos: position{line: 111, col: 11, offset: 3292}, + pos: position{line: 254, col: 11, offset: 7949}, expr: &actionExpr{ - pos: position{line: 125, col: 5, offset: 3744}, - run: (*parser).callonDocumentFragment27, + pos: position{line: 267, col: 5, offset: 8397}, + run: (*parser).callonDocumentRawLine17, expr: &seqExpr{ - pos: position{line: 125, col: 5, offset: 3744}, + pos: position{line: 267, col: 5, offset: 8397}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonDocumentFragment29, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonDocumentRawLine19, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -153,41 +115,41 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 125, col: 12, offset: 3751}, + pos: position{line: 267, col: 12, offset: 8404}, label: "elements", expr: &zeroOrMoreExpr{ - pos: position{line: 125, col: 21, offset: 3760}, + pos: position{line: 267, col: 21, offset: 8413}, expr: &actionExpr{ - pos: position{line: 129, col: 37, offset: 3919}, - run: (*parser).callonDocumentFragment34, + pos: position{line: 271, col: 37, offset: 8572}, + run: (*parser).callonDocumentRawLine24, expr: &seqExpr{ - pos: position{line: 129, col: 37, offset: 3919}, + pos: position{line: 271, col: 37, offset: 8572}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 129, col: 37, offset: 3919}, + pos: position{line: 271, col: 37, offset: 8572}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment38, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine28, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -196,27 +158,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &labeledExpr{ - pos: position{line: 130, col: 5, offset: 3929}, + pos: position{line: 272, col: 5, offset: 8582}, label: "element", expr: &choiceExpr{ - pos: position{line: 131, col: 9, offset: 3947}, + pos: position{line: 273, col: 9, offset: 8600}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 131, col: 10, offset: 3948}, - run: (*parser).callonDocumentFragment47, + pos: position{line: 273, col: 10, offset: 8601}, + run: (*parser).callonDocumentRawLine37, expr: &oneOrMoreExpr{ - pos: position{line: 131, col: 10, offset: 3948}, + pos: position{line: 273, col: 10, offset: 8601}, expr: &charClassMatcher{ - pos: position{line: 131, col: 10, offset: 3948}, + pos: position{line: 273, col: 10, offset: 8601}, val: "[^\\r\\n{]", chars: []rune{'\r', '\n', '{'}, ignoreCase: false, @@ -225,44 +187,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonDocumentFragment50, + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonDocumentRawLine40, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonDocumentFragment52, + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonDocumentRawLine42, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonDocumentFragment55, + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonDocumentRawLine45, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment59, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentRawLine49, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -271,9 +233,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -287,33 +249,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonDocumentFragment66, + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonDocumentRawLine56, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonDocumentFragment71, + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonDocumentRawLine61, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -321,12 +283,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonDocumentFragment73, + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonDocumentRawLine63, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -343,7 +305,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -352,28 +314,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonDocumentFragment77, + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonDocumentRawLine67, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment81, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentRawLine71, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -382,9 +344,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -398,33 +360,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonDocumentFragment88, + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonDocumentRawLine78, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonDocumentFragment93, + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonDocumentRawLine83, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -432,12 +394,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonDocumentFragment95, + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonDocumentRawLine85, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -454,7 +416,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -463,28 +425,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonDocumentFragment99, + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonDocumentRawLine89, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment103, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentRawLine93, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -493,9 +455,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -509,7 +471,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -524,10 +486,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 135, col: 12, offset: 4076}, - run: (*parser).callonDocumentFragment109, + pos: position{line: 277, col: 12, offset: 8729}, + run: (*parser).callonDocumentRawLine99, expr: &litMatcher{ - pos: position{line: 135, col: 12, offset: 4076}, + pos: position{line: 277, col: 12, offset: 8729}, val: "{", ignoreCase: false, want: "\"{\"", @@ -547,28 +509,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment112, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine102, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -577,9 +539,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -588,28 +550,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 142, col: 19, offset: 4231}, - run: (*parser).callonDocumentFragment119, + pos: position{line: 284, col: 19, offset: 8884}, + run: (*parser).callonDocumentRawLine109, expr: &seqExpr{ - pos: position{line: 142, col: 19, offset: 4231}, + pos: position{line: 284, col: 19, offset: 8884}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 142, col: 19, offset: 4231}, + pos: position{line: 284, col: 19, offset: 8884}, val: ":!", ignoreCase: false, want: "\":!\"", }, &labeledExpr{ - pos: position{line: 142, col: 24, offset: 4236}, + pos: position{line: 284, col: 24, offset: 8889}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment123, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentRawLine113, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -618,9 +580,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -634,18 +596,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 142, col: 45, offset: 4257}, + pos: position{line: 284, col: 45, offset: 8910}, val: ":", ignoreCase: false, want: "\":\"", }, &zeroOrMoreExpr{ - pos: position{line: 142, col: 49, offset: 4261}, + pos: position{line: 284, col: 49, offset: 8914}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment130, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine120, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -654,28 +616,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment133, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine123, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -684,9 +646,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -695,28 +657,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 144, col: 5, offset: 4328}, - run: (*parser).callonDocumentFragment140, + pos: position{line: 286, col: 5, offset: 8997}, + run: (*parser).callonDocumentRawLine130, expr: &seqExpr{ - pos: position{line: 144, col: 5, offset: 4328}, + pos: position{line: 286, col: 5, offset: 8997}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 144, col: 5, offset: 4328}, + pos: position{line: 286, col: 5, offset: 8997}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 144, col: 9, offset: 4332}, + pos: position{line: 286, col: 9, offset: 9001}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment144, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentRawLine134, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -725,9 +687,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -741,18 +703,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 144, col: 30, offset: 4353}, + pos: position{line: 286, col: 30, offset: 9022}, val: "!:", ignoreCase: false, want: "\"!:\"", }, &zeroOrMoreExpr{ - pos: position{line: 144, col: 35, offset: 4358}, + pos: position{line: 286, col: 35, offset: 9027}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment151, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine141, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -761,28 +723,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment154, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine144, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -791,9 +753,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -801,785 +763,1126 @@ var g = &grammar{ }, }, }, + &ruleRefExpr{ + pos: position{line: 29, col: 11, offset: 538}, + name: "FileInclusion", + }, &actionExpr{ - pos: position{line: 802, col: 5, offset: 25493}, - run: (*parser).callonDocumentFragment161, + pos: position{line: 635, col: 5, offset: 20992}, + run: (*parser).callonDocumentRawLine152, expr: &seqExpr{ - pos: position{line: 802, col: 5, offset: 25493}, + pos: position{line: 635, col: 5, offset: 20992}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 802, col: 5, offset: 25493}, - run: (*parser).callonDocumentFragment163, + ¬Expr{ + pos: position{line: 635, col: 5, offset: 20992}, + expr: &charClassMatcher{ + pos: position{line: 2846, col: 13, offset: 94476}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, }, - &zeroOrMoreExpr{ - pos: position{line: 805, col: 5, offset: 25554}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment165, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &labeledExpr{ + pos: position{line: 636, col: 5, offset: 21022}, + label: "delimiter", + expr: &choiceExpr{ + pos: position{line: 637, col: 9, offset: 21042}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentRawLine158, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine162, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine165, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment171, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + }, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonDocumentRawLine172, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", ignoreCase: false, - inverted: false, + want: "\"====\"", }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment174, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine176, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine179, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 806, col: 5, offset: 25604}, - label: "title", - expr: &actionExpr{ - pos: position{line: 816, col: 5, offset: 26039}, - run: (*parser).callonDocumentFragment182, - expr: &seqExpr{ - pos: position{line: 816, col: 5, offset: 26039}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 816, col: 5, offset: 26039}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonDocumentFragment185, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonDocumentRawLine186, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", ignoreCase: false, - inverted: false, + want: "\"```\"", }, - }, - }, - &labeledExpr{ - pos: position{line: 816, col: 16, offset: 26050}, - label: "title", - expr: &actionExpr{ - pos: position{line: 2351, col: 20, offset: 79654}, - run: (*parser).callonDocumentFragment189, - expr: &oneOrMoreExpr{ - pos: position{line: 2351, col: 20, offset: 79654}, - expr: &charClassMatcher{ - pos: position{line: 2351, col: 20, offset: 79654}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine190, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment193, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine193, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 807, col: 5, offset: 25628}, - label: "info", - expr: &zeroOrOneExpr{ - pos: position{line: 807, col: 10, offset: 25633}, - expr: &actionExpr{ - pos: position{line: 821, col: 5, offset: 26147}, - run: (*parser).callonDocumentFragment202, - expr: &seqExpr{ - pos: position{line: 821, col: 5, offset: 26147}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 821, col: 5, offset: 26147}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment205, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonDocumentRawLine200, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine204, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine207, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment211, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - inverted: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonDocumentRawLine214, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine218, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine221, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment214, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 822, col: 5, offset: 26162}, - expr: &choiceExpr{ - pos: position{line: 822, col: 6, offset: 26163}, + }, + }, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonDocumentRawLine228, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine232, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonDocumentFragment223, - expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - exprs: []interface{}{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine235, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, - val: "//", + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, - expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, + want: "\"\\n\"", }, - &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonDocumentFragment229, - expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment233, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonDocumentRawLine242, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine246, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - run: (*parser).callonDocumentFragment240, - expr: &seqExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - run: (*parser).callonDocumentFragment242, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine249, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"////\"", + want: "\"\\r\\n\"", }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment245, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment248, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonDocumentRawLine256, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentRawLine260, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentRawLine263, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - &andCodeExpr{ - pos: position{line: 541, col: 5, offset: 17609}, - run: (*parser).callonDocumentFragment255, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", }, - &labeledExpr{ - pos: position{line: 546, col: 5, offset: 17810}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 557, col: 5, offset: 18134}, - expr: &actionExpr{ - pos: position{line: 557, col: 6, offset: 18135}, - run: (*parser).callonDocumentFragment258, - expr: &seqExpr{ - pos: position{line: 557, col: 6, offset: 18135}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 557, col: 6, offset: 18135}, - expr: &choiceExpr{ - pos: position{line: 554, col: 29, offset: 18077}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment265, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 41, col: 5, offset: 879}, + run: (*parser).callonDocumentRawLine270, + expr: &seqExpr{ + pos: position{line: 41, col: 5, offset: 879}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 41, col: 5, offset: 879}, + run: (*parser).callonDocumentRawLine272, + }, + &andCodeExpr{ + pos: position{line: 45, col: 5, offset: 1023}, + run: (*parser).callonDocumentRawLine273, + }, + &labeledExpr{ + pos: position{line: 48, col: 5, offset: 1086}, + label: "level", + expr: &actionExpr{ + pos: position{line: 48, col: 12, offset: 1093}, + run: (*parser).callonDocumentRawLine275, + expr: &oneOrMoreExpr{ + pos: position{line: 48, col: 12, offset: 1093}, + expr: &litMatcher{ + pos: position{line: 48, col: 13, offset: 1094}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 52, col: 5, offset: 1202}, + run: (*parser).callonDocumentRawLine278, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonDocumentRawLine279, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &oneOrMoreExpr{ + pos: position{line: 56, col: 12, offset: 1361}, + expr: &charClassMatcher{ + pos: position{line: 56, col: 12, offset: 1361}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + { + name: "FileInclusion", + pos: position{line: 63, col: 1, offset: 1620}, + expr: &actionExpr{ + pos: position{line: 64, col: 5, offset: 1642}, + run: (*parser).callonFileInclusion1, + expr: &seqExpr{ + pos: position{line: 64, col: 5, offset: 1642}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 64, col: 5, offset: 1642}, + run: (*parser).callonFileInclusion3, + }, + &stateCodeExpr{ + pos: position{line: 68, col: 5, offset: 1729}, + run: (*parser).callonFileInclusion4, + }, + &labeledExpr{ + pos: position{line: 73, col: 5, offset: 1910}, + label: "incl", + expr: &actionExpr{ + pos: position{line: 74, col: 9, offset: 1925}, + run: (*parser).callonFileInclusion6, + expr: &seqExpr{ + pos: position{line: 74, col: 9, offset: 1925}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 74, col: 9, offset: 1925}, + val: "include::", + ignoreCase: false, + want: "\"include::\"", + }, + &labeledExpr{ + pos: position{line: 75, col: 9, offset: 1946}, + label: "path", + expr: &actionExpr{ + pos: position{line: 2881, col: 17, offset: 95594}, + run: (*parser).callonFileInclusion10, + expr: &labeledExpr{ + pos: position{line: 2881, col: 17, offset: 95594}, + label: "path", + expr: &oneOrMoreExpr{ + pos: position{line: 2881, col: 22, offset: 95599}, + expr: &choiceExpr{ + pos: position{line: 2881, col: 23, offset: 95600}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2893, col: 13, offset: 96004}, + run: (*parser).callonFileInclusion14, + expr: &labeledExpr{ + pos: position{line: 2893, col: 13, offset: 96004}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 2893, col: 22, offset: 96013}, + expr: &choiceExpr{ + pos: position{line: 2894, col: 5, offset: 96019}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2894, col: 5, offset: 96019}, + run: (*parser).callonFileInclusion18, + expr: &oneOrMoreExpr{ + pos: position{line: 2894, col: 5, offset: 96019}, + expr: &charClassMatcher{ + pos: position{line: 2894, col: 6, offset: 96020}, + val: "[^\\r\\n[]�&<>{ ]", + chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonFileInclusion21, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonFileInclusion23, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonFileInclusion26, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonFileInclusion30, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, inverted: false, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment268, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonFileInclusion37, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonFileInclusion42, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonFileInclusion44, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", }, }, }, - &labeledExpr{ - pos: position{line: 558, col: 5, offset: 18165}, - label: "line", - expr: &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonDocumentFragment278, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonFileInclusion48, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonFileInclusion52, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonDocumentFragment284, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - inverted: true, + inverted: false, }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment288, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonFileInclusion59, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonFileInclusion64, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonFileInclusion66, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 547, col: 5, offset: 17844}, - expr: &choiceExpr{ - pos: position{line: 554, col: 29, offset: 18077}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment300, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonFileInclusion70, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", ignoreCase: false, - inverted: false, + want: "\"{\"", }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment303, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonFileInclusion74, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 823, col: 5, offset: 26237}, - label: "authors", - expr: &actionExpr{ - pos: position{line: 829, col: 20, offset: 26487}, - run: (*parser).callonDocumentFragment313, - expr: &seqExpr{ - pos: position{line: 829, col: 20, offset: 26487}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 829, col: 20, offset: 26487}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment316, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 829, col: 27, offset: 26494}, - label: "authors", - expr: &choiceExpr{ - pos: position{line: 829, col: 36, offset: 26503}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 833, col: 30, offset: 26623}, - run: (*parser).callonDocumentFragment320, - expr: &seqExpr{ - pos: position{line: 833, col: 30, offset: 26623}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 833, col: 30, offset: 26623}, - expr: &litMatcher{ - pos: position{line: 833, col: 31, offset: 26624}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - &labeledExpr{ - pos: position{line: 833, col: 35, offset: 26628}, - label: "authors", - expr: &oneOrMoreExpr{ - pos: position{line: 833, col: 44, offset: 26637}, - expr: &actionExpr{ - pos: position{line: 842, col: 5, offset: 26869}, - run: (*parser).callonDocumentFragment326, - expr: &seqExpr{ - pos: position{line: 842, col: 5, offset: 26869}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 842, col: 5, offset: 26869}, - label: "fullName", - expr: &zeroOrOneExpr{ - pos: position{line: 842, col: 14, offset: 26878}, + &actionExpr{ + pos: position{line: 2632, col: 5, offset: 87865}, + run: (*parser).callonFileInclusion80, + expr: &seqExpr{ + pos: position{line: 2632, col: 5, offset: 87865}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 2632, col: 5, offset: 87865}, + run: (*parser).callonFileInclusion82, + }, + &labeledExpr{ + pos: position{line: 2635, col: 5, offset: 87936}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2637, col: 9, offset: 88034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2637, col: 9, offset: 88034}, + run: (*parser).callonFileInclusion85, + expr: &choiceExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + run: (*parser).callonFileInclusion87, + expr: &seqExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 599, col: 27, offset: 19824}, + val: "<<", + ignoreCase: false, + want: "\"<<\"", + }, + &labeledExpr{ + pos: position{line: 599, col: 32, offset: 19829}, + label: "id", expr: &actionExpr{ - pos: position{line: 853, col: 5, offset: 27258}, - run: (*parser).callonDocumentFragment330, - expr: &seqExpr{ - pos: position{line: 853, col: 5, offset: 27258}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 853, col: 5, offset: 27258}, - label: "part1", - expr: &actionExpr{ - pos: position{line: 853, col: 12, offset: 27265}, - run: (*parser).callonDocumentFragment333, - expr: &oneOrMoreExpr{ - pos: position{line: 853, col: 12, offset: 27265}, - expr: &charClassMatcher{ - pos: position{line: 853, col: 12, offset: 27265}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, + pos: position{line: 2907, col: 7, offset: 96432}, + run: (*parser).callonFileInclusion91, + expr: &oneOrMoreExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + expr: &charClassMatcher{ + pos: position{line: 2907, col: 7, offset: 96432}, + val: "[^[]<>,]", + chars: []rune{'[', ']', '<', '>', ','}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 599, col: 40, offset: 19837}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonFileInclusion95, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 599, col: 47, offset: 19844}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &labeledExpr{ + pos: position{line: 599, col: 51, offset: 19848}, + label: "label", + expr: &oneOrMoreExpr{ + pos: position{line: 609, col: 24, offset: 20261}, + expr: &choiceExpr{ + pos: position{line: 610, col: 5, offset: 20267}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 610, col: 6, offset: 20268}, + run: (*parser).callonFileInclusion101, + expr: &seqExpr{ + pos: position{line: 610, col: 6, offset: 20268}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 610, col: 6, offset: 20268}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - inverted: true, + inverted: false, }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 856, col: 5, offset: 27345}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment337, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 857, col: 5, offset: 27356}, - label: "part2", - expr: &zeroOrOneExpr{ - pos: position{line: 857, col: 11, offset: 27362}, - expr: &actionExpr{ - pos: position{line: 857, col: 12, offset: 27363}, - run: (*parser).callonDocumentFragment341, - expr: &oneOrMoreExpr{ - pos: position{line: 857, col: 12, offset: 27363}, + &oneOrMoreExpr{ + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 857, col: 12, offset: 27363}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, + pos: position{line: 610, col: 14, offset: 20276}, + val: "[^\\r\\n{<>]", + chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, inverted: true, }, @@ -1587,457 +1890,619 @@ var g = &grammar{ }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 860, col: 5, offset: 27444}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment345, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 861, col: 5, offset: 27455}, - label: "part3", - expr: &zeroOrOneExpr{ - pos: position{line: 861, col: 11, offset: 27461}, - expr: &actionExpr{ - pos: position{line: 861, col: 12, offset: 27462}, - run: (*parser).callonDocumentFragment349, - expr: &oneOrMoreExpr{ - pos: position{line: 861, col: 12, offset: 27462}, - expr: &charClassMatcher{ - pos: position{line: 861, col: 12, offset: 27462}, - val: "[^<;\\r\\n]", - chars: []rune{'<', ';', '\r', '\n'}, - ignoreCase: false, - inverted: true, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonFileInclusion106, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonFileInclusion108, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonFileInclusion111, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonFileInclusion115, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonFileInclusion122, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonFileInclusion127, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonFileInclusion129, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonFileInclusion133, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonFileInclusion137, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonFileInclusion144, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonFileInclusion149, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonFileInclusion151, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonFileInclusion155, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonFileInclusion159, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, }, }, }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 864, col: 5, offset: 27541}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment353, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 614, col: 8, offset: 20500}, + run: (*parser).callonFileInclusion165, + expr: &litMatcher{ + pos: position{line: 614, col: 8, offset: 20500}, + val: "{", + ignoreCase: false, + want: "\"{\"", }, }, }, }, }, }, + &litMatcher{ + pos: position{line: 599, col: 79, offset: 19876}, + val: ">>", + ignoreCase: false, + want: "\">>\"", + }, }, - &labeledExpr{ - pos: position{line: 842, col: 40, offset: 26904}, - label: "email", - expr: &zeroOrOneExpr{ - pos: position{line: 842, col: 46, offset: 26910}, + }, + }, + &actionExpr{ + pos: position{line: 601, col: 9, offset: 19949}, + run: (*parser).callonFileInclusion168, + expr: &seqExpr{ + pos: position{line: 601, col: 9, offset: 19949}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 601, col: 9, offset: 19949}, + val: "<<", + ignoreCase: false, + want: "\"<<\"", + }, + &labeledExpr{ + pos: position{line: 601, col: 14, offset: 19954}, + label: "id", expr: &actionExpr{ - pos: position{line: 870, col: 5, offset: 27663}, - run: (*parser).callonDocumentFragment357, - expr: &seqExpr{ - pos: position{line: 870, col: 5, offset: 27663}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 870, col: 5, offset: 27663}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &litMatcher{ - pos: position{line: 871, col: 5, offset: 27673}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 872, col: 5, offset: 27682}, - label: "email", - expr: &actionExpr{ - pos: position{line: 872, col: 12, offset: 27689}, - run: (*parser).callonDocumentFragment364, - expr: &oneOrMoreExpr{ - pos: position{line: 872, col: 13, offset: 27690}, - expr: &charClassMatcher{ - pos: position{line: 872, col: 13, offset: 27690}, - val: "[^>\\r\\n]", - chars: []rune{'>', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 875, col: 5, offset: 27750}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, + pos: position{line: 2907, col: 7, offset: 96432}, + run: (*parser).callonFileInclusion172, + expr: &oneOrMoreExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + expr: &charClassMatcher{ + pos: position{line: 2907, col: 7, offset: 96432}, + val: "[^[]<>,]", + chars: []rune{'[', ']', '<', '>', ','}, + ignoreCase: false, + inverted: true, }, }, }, }, - }, - &zeroOrMoreExpr{ - pos: position{line: 842, col: 69, offset: 26933}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment369, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 842, col: 76, offset: 26940}, - expr: &litMatcher{ - pos: position{line: 842, col: 76, offset: 26940}, - val: ";", + &litMatcher{ + pos: position{line: 601, col: 22, offset: 19962}, + val: ">>", ignoreCase: false, - want: "\";\"", - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 842, col: 81, offset: 26945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment374, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + want: "\">>\"", }, }, - &andCodeExpr{ - pos: position{line: 843, col: 5, offset: 26957}, - run: (*parser).callonDocumentFragment376, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 837, col: 33, offset: 26755}, - run: (*parser).callonDocumentFragment377, - expr: &seqExpr{ - pos: position{line: 837, col: 33, offset: 26755}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 837, col: 33, offset: 26755}, - val: ":author:", - ignoreCase: false, - want: "\":author:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 837, col: 44, offset: 26766}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment381, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 837, col: 51, offset: 26773}, - label: "author", - expr: &actionExpr{ - pos: position{line: 842, col: 5, offset: 26869}, - run: (*parser).callonDocumentFragment384, - expr: &seqExpr{ - pos: position{line: 842, col: 5, offset: 26869}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 842, col: 5, offset: 26869}, - label: "fullName", - expr: &zeroOrOneExpr{ - pos: position{line: 842, col: 14, offset: 26878}, - expr: &actionExpr{ - pos: position{line: 853, col: 5, offset: 27258}, - run: (*parser).callonDocumentFragment388, - expr: &seqExpr{ - pos: position{line: 853, col: 5, offset: 27258}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 853, col: 5, offset: 27258}, - label: "part1", - expr: &actionExpr{ - pos: position{line: 853, col: 12, offset: 27265}, - run: (*parser).callonDocumentFragment391, - expr: &oneOrMoreExpr{ - pos: position{line: 853, col: 12, offset: 27265}, - expr: &charClassMatcher{ - pos: position{line: 853, col: 12, offset: 27265}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 856, col: 5, offset: 27345}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment395, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 857, col: 5, offset: 27356}, - label: "part2", - expr: &zeroOrOneExpr{ - pos: position{line: 857, col: 11, offset: 27362}, - expr: &actionExpr{ - pos: position{line: 857, col: 12, offset: 27363}, - run: (*parser).callonDocumentFragment399, - expr: &oneOrMoreExpr{ - pos: position{line: 857, col: 12, offset: 27363}, - expr: &charClassMatcher{ - pos: position{line: 857, col: 12, offset: 27363}, - val: "[^<;\\r\\n ]", - chars: []rune{'<', ';', '\r', '\n', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 860, col: 5, offset: 27444}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment403, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 861, col: 5, offset: 27455}, - label: "part3", - expr: &zeroOrOneExpr{ - pos: position{line: 861, col: 11, offset: 27461}, - expr: &actionExpr{ - pos: position{line: 861, col: 12, offset: 27462}, - run: (*parser).callonDocumentFragment407, - expr: &oneOrMoreExpr{ - pos: position{line: 861, col: 12, offset: 27462}, - expr: &charClassMatcher{ - pos: position{line: 861, col: 12, offset: 27462}, - val: "[^<;\\r\\n]", - chars: []rune{'<', ';', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 864, col: 5, offset: 27541}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment411, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 842, col: 40, offset: 26904}, - label: "email", - expr: &zeroOrOneExpr{ - pos: position{line: 842, col: 46, offset: 26910}, - expr: &actionExpr{ - pos: position{line: 870, col: 5, offset: 27663}, - run: (*parser).callonDocumentFragment415, - expr: &seqExpr{ - pos: position{line: 870, col: 5, offset: 27663}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 870, col: 5, offset: 27663}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &litMatcher{ - pos: position{line: 871, col: 5, offset: 27673}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 872, col: 5, offset: 27682}, - label: "email", - expr: &actionExpr{ - pos: position{line: 872, col: 12, offset: 27689}, - run: (*parser).callonDocumentFragment422, - expr: &oneOrMoreExpr{ - pos: position{line: 872, col: 13, offset: 27690}, - expr: &charClassMatcher{ - pos: position{line: 872, col: 13, offset: 27690}, - val: "[^>\\r\\n]", - chars: []rune{'>', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 875, col: 5, offset: 27750}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 842, col: 69, offset: 26933}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment427, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 842, col: 76, offset: 26940}, - expr: &litMatcher{ - pos: position{line: 842, col: 76, offset: 26940}, - val: ";", - ignoreCase: false, - want: "\";\"", - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 842, col: 81, offset: 26945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment432, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 843, col: 5, offset: 26957}, - run: (*parser).callonDocumentFragment434, }, }, }, }, }, + &actionExpr{ + pos: position{line: 2640, col: 11, offset: 88138}, + run: (*parser).callonFileInclusion176, + expr: &charClassMatcher{ + pos: position{line: 2640, col: 12, offset: 88139}, + val: "[<>&]", + chars: []rune{'<', '>', '&'}, + ignoreCase: false, + inverted: false, + }, + }, }, }, }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment436, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + &actionExpr{ + pos: position{line: 2899, col: 7, offset: 96216}, + run: (*parser).callonFileInclusion178, + expr: &litMatcher{ + pos: position{line: 2899, col: 7, offset: 96216}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonFileInclusion180, + expr: &seqExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + &labeledExpr{ + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonFileInclusion184, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 76, col: 9, offset: 1975}, + label: "inlineAttributes", + expr: &ruleRefExpr{ + pos: position{line: 76, col: 27, offset: 1993}, + name: "InlineAttributes", + }, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 80, col: 5, offset: 2154}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonFileInclusion191, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonFileInclusion194, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "LineRanges", + pos: position{line: 87, col: 1, offset: 2287}, + expr: &actionExpr{ + pos: position{line: 87, col: 15, offset: 2301}, + run: (*parser).callonLineRanges1, + expr: &seqExpr{ + pos: position{line: 87, col: 15, offset: 2301}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 87, col: 15, offset: 2301}, + label: "value", + expr: &choiceExpr{ + pos: position{line: 87, col: 22, offset: 2308}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 94, col: 23, offset: 2491}, + run: (*parser).callonLineRanges5, + expr: &seqExpr{ + pos: position{line: 94, col: 23, offset: 2491}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 94, col: 23, offset: 2491}, + label: "first", + expr: &choiceExpr{ + pos: position{line: 94, col: 30, offset: 2498}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 103, col: 19, offset: 2856}, + run: (*parser).callonLineRanges9, + expr: &seqExpr{ + pos: position{line: 103, col: 19, offset: 2856}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 103, col: 19, offset: 2856}, + label: "start", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges12, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges17, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 103, col: 34, offset: 2871}, + val: "..", + ignoreCase: false, + want: "\"..\"", + }, + &labeledExpr{ + pos: position{line: 103, col: 39, offset: 2876}, + label: "end", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges21, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges26, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, @@ -2046,729 +2511,652 @@ var g = &grammar{ }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 824, col: 5, offset: 26268}, + }, + }, + &actionExpr{ + pos: position{line: 107, col: 20, offset: 2996}, + run: (*parser).callonLineRanges28, + expr: &labeledExpr{ + pos: position{line: 107, col: 20, offset: 2996}, + label: "singleline", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges30, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges35, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 95, col: 5, offset: 2537}, + label: "others", + expr: &oneOrMoreExpr{ + pos: position{line: 95, col: 12, offset: 2544}, + expr: &actionExpr{ + pos: position{line: 96, col: 9, offset: 2554}, + run: (*parser).callonLineRanges39, + expr: &seqExpr{ + pos: position{line: 96, col: 9, offset: 2554}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 96, col: 10, offset: 2555}, + val: "[,;]", + chars: []rune{',', ';'}, + ignoreCase: false, + inverted: false, + }, + &labeledExpr{ + pos: position{line: 97, col: 9, offset: 2672}, + label: "other", expr: &choiceExpr{ - pos: position{line: 824, col: 6, offset: 26269}, + pos: position{line: 97, col: 16, offset: 2679}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonDocumentFragment445, + pos: position{line: 103, col: 19, offset: 2856}, + run: (*parser).callonLineRanges44, expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 103, col: 19, offset: 2856}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, - expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, - label: "content", + pos: position{line: 103, col: 19, offset: 2856}, + label: "start", expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonDocumentFragment451, - expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges47, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges52, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment455, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", + &litMatcher{ + pos: position{line: 103, col: 34, offset: 2871}, + val: "..", + ignoreCase: false, + want: "\"..\"", + }, + &labeledExpr{ + pos: position{line: 103, col: 39, offset: 2876}, + label: "end", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges56, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", ignoreCase: false, - want: "\"\\r\\n\"", + want: "\"-\"", }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges61, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, }, &actionExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - run: (*parser).callonDocumentFragment462, - expr: &seqExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - run: (*parser).callonDocumentFragment464, - }, - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment467, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment470, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + pos: position{line: 107, col: 20, offset: 2996}, + run: (*parser).callonLineRanges63, + expr: &labeledExpr{ + pos: position{line: 107, col: 20, offset: 2996}, + label: "singleline", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges65, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", }, }, - }, - }, - &andCodeExpr{ - pos: position{line: 541, col: 5, offset: 17609}, - run: (*parser).callonDocumentFragment477, - }, - &labeledExpr{ - pos: position{line: 546, col: 5, offset: 17810}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 557, col: 5, offset: 18134}, - expr: &actionExpr{ - pos: position{line: 557, col: 6, offset: 18135}, - run: (*parser).callonDocumentFragment480, - expr: &seqExpr{ - pos: position{line: 557, col: 6, offset: 18135}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 557, col: 6, offset: 18135}, - expr: &choiceExpr{ - pos: position{line: 554, col: 29, offset: 18077}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment487, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment490, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 558, col: 5, offset: 18165}, - label: "line", - expr: &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonDocumentFragment500, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonDocumentFragment506, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment510, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges70, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, }, }, - &zeroOrOneExpr{ - pos: position{line: 547, col: 5, offset: 17844}, - expr: &choiceExpr{ - pos: position{line: 554, col: 29, offset: 18077}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment522, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment525, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 103, col: 19, offset: 2856}, + run: (*parser).callonLineRanges72, + expr: &seqExpr{ + pos: position{line: 103, col: 19, offset: 2856}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 103, col: 19, offset: 2856}, + label: "start", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges75, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges80, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 103, col: 34, offset: 2871}, + val: "..", + ignoreCase: false, + want: "\"..\"", + }, + &labeledExpr{ + pos: position{line: 103, col: 39, offset: 2876}, + label: "end", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges84, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges89, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 107, col: 20, offset: 2996}, + run: (*parser).callonLineRanges91, + expr: &labeledExpr{ + pos: position{line: 107, col: 20, offset: 2996}, + label: "singleline", + expr: &actionExpr{ + pos: position{line: 2915, col: 11, offset: 96634}, + run: (*parser).callonLineRanges93, + expr: &seqExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 2915, col: 12, offset: 96635}, + expr: &litMatcher{ + pos: position{line: 2915, col: 12, offset: 96635}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2915, col: 17, offset: 96640}, + expr: &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonLineRanges98, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + { + name: "TagRanges", + pos: position{line: 112, col: 1, offset: 3131}, + expr: &actionExpr{ + pos: position{line: 112, col: 14, offset: 3144}, + run: (*parser).callonTagRanges1, + expr: &seqExpr{ + pos: position{line: 112, col: 14, offset: 3144}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 112, col: 14, offset: 3144}, + label: "value", + expr: &actionExpr{ + pos: position{line: 116, col: 22, offset: 3281}, + run: (*parser).callonTagRanges4, + expr: &seqExpr{ + pos: position{line: 116, col: 22, offset: 3281}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 116, col: 22, offset: 3281}, + label: "first", + expr: &choiceExpr{ + pos: position{line: 125, col: 13, offset: 3591}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 125, col: 13, offset: 3591}, + run: (*parser).callonTagRanges8, + expr: &labeledExpr{ + pos: position{line: 125, col: 13, offset: 3591}, + label: "tag", + expr: &choiceExpr{ + pos: position{line: 125, col: 18, offset: 3596}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonTagRanges11, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + run: (*parser).callonTagRanges14, + expr: &seqExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + label: "stars", + expr: &actionExpr{ + pos: position{line: 131, col: 23, offset: 3803}, + run: (*parser).callonTagRanges17, + expr: &oneOrMoreExpr{ + pos: position{line: 131, col: 23, offset: 3803}, + expr: &litMatcher{ + pos: position{line: 131, col: 24, offset: 3804}, + val: "*", + ignoreCase: false, + want: "\"*\"", }, }, }, }, + &andCodeExpr{ + pos: position{line: 134, col: 5, offset: 3858}, + run: (*parser).callonTagRanges20, + }, }, }, }, - &labeledExpr{ - pos: position{line: 825, col: 5, offset: 26343}, - label: "revision", - expr: &zeroOrOneExpr{ - pos: position{line: 825, col: 14, offset: 26352}, - expr: &actionExpr{ - pos: position{line: 881, col: 21, offset: 27939}, - run: (*parser).callonDocumentFragment536, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 127, col: 9, offset: 3684}, + run: (*parser).callonTagRanges21, + expr: &seqExpr{ + pos: position{line: 127, col: 9, offset: 3684}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 127, col: 9, offset: 3684}, + val: "!", + ignoreCase: false, + want: "\"!\"", + }, + &labeledExpr{ + pos: position{line: 127, col: 13, offset: 3688}, + label: "tag", + expr: &choiceExpr{ + pos: position{line: 127, col: 18, offset: 3693}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonTagRanges26, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + run: (*parser).callonTagRanges29, expr: &seqExpr{ - pos: position{line: 881, col: 21, offset: 27939}, + pos: position{line: 131, col: 16, offset: 3796}, exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 881, col: 21, offset: 27939}, + &labeledExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + label: "stars", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment539, + pos: position{line: 131, col: 23, offset: 3803}, + run: (*parser).callonTagRanges32, + expr: &oneOrMoreExpr{ + pos: position{line: 131, col: 23, offset: 3803}, + expr: &litMatcher{ + pos: position{line: 131, col: 24, offset: 3804}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 134, col: 5, offset: 3858}, + run: (*parser).callonTagRanges35, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 117, col: 5, offset: 3302}, + label: "others", + expr: &zeroOrMoreExpr{ + pos: position{line: 117, col: 12, offset: 3309}, + expr: &actionExpr{ + pos: position{line: 118, col: 9, offset: 3319}, + run: (*parser).callonTagRanges38, + expr: &seqExpr{ + pos: position{line: 118, col: 9, offset: 3319}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 118, col: 10, offset: 3320}, + val: "[,;]", + chars: []rune{',', ';'}, + ignoreCase: false, + inverted: false, + }, + &labeledExpr{ + pos: position{line: 119, col: 9, offset: 3437}, + label: "other", + expr: &choiceExpr{ + pos: position{line: 125, col: 13, offset: 3591}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 125, col: 13, offset: 3591}, + run: (*parser).callonTagRanges43, + expr: &labeledExpr{ + pos: position{line: 125, col: 13, offset: 3591}, + label: "tag", + expr: &choiceExpr{ + pos: position{line: 125, col: 18, offset: 3596}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonTagRanges46, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, inverted: false, }, }, }, - ¬Expr{ - pos: position{line: 881, col: 28, offset: 27946}, - expr: &litMatcher{ - pos: position{line: 881, col: 29, offset: 27947}, - val: ":", - ignoreCase: false, - want: "\":\"", + &actionExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + run: (*parser).callonTagRanges49, + expr: &seqExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + label: "stars", + expr: &actionExpr{ + pos: position{line: 131, col: 23, offset: 3803}, + run: (*parser).callonTagRanges52, + expr: &oneOrMoreExpr{ + pos: position{line: 131, col: 23, offset: 3803}, + expr: &litMatcher{ + pos: position{line: 131, col: 24, offset: 3804}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 134, col: 5, offset: 3858}, + run: (*parser).callonTagRanges55, + }, + }, }, }, - &labeledExpr{ - pos: position{line: 881, col: 33, offset: 27951}, - label: "revision", - expr: &choiceExpr{ - pos: position{line: 882, col: 9, offset: 27970}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 882, col: 10, offset: 27971}, - run: (*parser).callonDocumentFragment545, - expr: &seqExpr{ - pos: position{line: 882, col: 10, offset: 27971}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 882, col: 10, offset: 27971}, - label: "revnumber", - expr: &choiceExpr{ - pos: position{line: 891, col: 27, offset: 28488}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 891, col: 27, offset: 28488}, - run: (*parser).callonDocumentFragment549, - expr: &seqExpr{ - pos: position{line: 891, col: 27, offset: 28488}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 891, col: 27, offset: 28488}, - val: "v", - ignoreCase: true, - want: "\"v\"i", - }, - &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonDocumentFragment552, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 891, col: 39, offset: 28500}, - expr: &charClassMatcher{ - pos: position{line: 891, col: 39, offset: 28500}, - val: "[^:,\\r\\n]", - chars: []rune{':', ',', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 893, col: 5, offset: 28548}, - run: (*parser).callonDocumentFragment556, - expr: &seqExpr{ - pos: position{line: 893, col: 5, offset: 28548}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 893, col: 5, offset: 28548}, - expr: &litMatcher{ - pos: position{line: 893, col: 5, offset: 28548}, - val: "v", - ignoreCase: true, - want: "\"v\"i", - }, - }, - &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonDocumentFragment560, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 893, col: 18, offset: 28561}, - expr: &charClassMatcher{ - pos: position{line: 893, col: 18, offset: 28561}, - val: "[^:,\\r\\n]", - chars: []rune{':', ',', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 893, col: 29, offset: 28572}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment565, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &andExpr{ - pos: position{line: 893, col: 36, offset: 28579}, - expr: &litMatcher{ - pos: position{line: 893, col: 37, offset: 28580}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 882, col: 45, offset: 28006}, - expr: &litMatcher{ - pos: position{line: 882, col: 45, offset: 28006}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - }, - &labeledExpr{ - pos: position{line: 882, col: 50, offset: 28011}, - label: "revdate", - expr: &zeroOrOneExpr{ - pos: position{line: 882, col: 58, offset: 28019}, - expr: &actionExpr{ - pos: position{line: 897, col: 25, offset: 28644}, - run: (*parser).callonDocumentFragment573, - expr: &oneOrMoreExpr{ - pos: position{line: 897, col: 25, offset: 28644}, - expr: &charClassMatcher{ - pos: position{line: 897, col: 25, offset: 28644}, - val: "[^:\\r\\n]", - chars: []rune{':', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 882, col: 82, offset: 28043}, - expr: &litMatcher{ - pos: position{line: 882, col: 82, offset: 28043}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - &labeledExpr{ - pos: position{line: 882, col: 87, offset: 28048}, - label: "revremark", - expr: &zeroOrOneExpr{ - pos: position{line: 882, col: 97, offset: 28058}, - expr: &actionExpr{ - pos: position{line: 901, col: 27, offset: 28716}, - run: (*parser).callonDocumentFragment580, - expr: &oneOrMoreExpr{ - pos: position{line: 901, col: 27, offset: 28716}, - expr: &charClassMatcher{ - pos: position{line: 901, col: 27, offset: 28716}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 127, col: 9, offset: 3684}, + run: (*parser).callonTagRanges56, + expr: &seqExpr{ + pos: position{line: 127, col: 9, offset: 3684}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 127, col: 9, offset: 3684}, + val: "!", + ignoreCase: false, + want: "\"!\"", + }, + &labeledExpr{ + pos: position{line: 127, col: 13, offset: 3688}, + label: "tag", + expr: &choiceExpr{ + pos: position{line: 127, col: 18, offset: 3693}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonTagRanges61, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, - &actionExpr{ - pos: position{line: 884, col: 15, offset: 28176}, - run: (*parser).callonDocumentFragment583, - expr: &seqExpr{ - pos: position{line: 884, col: 15, offset: 28176}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 884, col: 15, offset: 28176}, - label: "revdate", - expr: &actionExpr{ - pos: position{line: 897, col: 25, offset: 28644}, - run: (*parser).callonDocumentFragment586, - expr: &oneOrMoreExpr{ - pos: position{line: 897, col: 25, offset: 28644}, - expr: &charClassMatcher{ - pos: position{line: 897, col: 25, offset: 28644}, - val: "[^:\\r\\n]", - chars: []rune{':', '\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 884, col: 46, offset: 28207}, - expr: &litMatcher{ - pos: position{line: 884, col: 46, offset: 28207}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - &labeledExpr{ - pos: position{line: 884, col: 51, offset: 28212}, - label: "revremark", - expr: &zeroOrOneExpr{ - pos: position{line: 884, col: 61, offset: 28222}, - expr: &actionExpr{ - pos: position{line: 901, col: 27, offset: 28716}, - run: (*parser).callonDocumentFragment593, - expr: &oneOrMoreExpr{ - pos: position{line: 901, col: 27, offset: 28716}, - expr: &charClassMatcher{ - pos: position{line: 901, col: 27, offset: 28716}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, + }, + &actionExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + run: (*parser).callonTagRanges64, + expr: &seqExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 131, col: 16, offset: 3796}, + label: "stars", + expr: &actionExpr{ + pos: position{line: 131, col: 23, offset: 3803}, + run: (*parser).callonTagRanges67, + expr: &oneOrMoreExpr{ + pos: position{line: 131, col: 23, offset: 3803}, + expr: &litMatcher{ + pos: position{line: 131, col: 24, offset: 3804}, + val: "*", + ignoreCase: false, + want: "\"*\"", }, }, }, }, - }, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment597, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &andCodeExpr{ + pos: position{line: 134, col: 5, offset: 3858}, + run: (*parser).callonTagRanges70, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, @@ -2781,470 +3169,669 @@ var g = &grammar{ }, }, }, - &labeledExpr{ - pos: position{line: 808, col: 5, offset: 25658}, - label: "extraAttrs", - expr: &zeroOrMoreExpr{ - pos: position{line: 808, col: 16, offset: 25669}, - expr: &choiceExpr{ - pos: position{line: 808, col: 17, offset: 25670}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 110, col: 5, offset: 3252}, - run: (*parser).callonDocumentFragment607, - expr: &seqExpr{ - pos: position{line: 110, col: 5, offset: 3252}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 110, col: 5, offset: 3252}, - val: ":", - ignoreCase: false, - want: "\":\"", + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + { + name: "IncludedFileLine", + pos: position{line: 141, col: 1, offset: 4025}, + expr: &actionExpr{ + pos: position{line: 141, col: 21, offset: 4045}, + run: (*parser).callonIncludedFileLine1, + expr: &seqExpr{ + pos: position{line: 141, col: 21, offset: 4045}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 141, col: 21, offset: 4045}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 141, col: 29, offset: 4053}, + expr: &choiceExpr{ + pos: position{line: 141, col: 30, offset: 4054}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 145, col: 25, offset: 4234}, + run: (*parser).callonIncludedFileLine6, + expr: &seqExpr{ + pos: position{line: 145, col: 25, offset: 4234}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 145, col: 25, offset: 4234}, + val: "tag::", + ignoreCase: false, + want: "\"tag::\"", + }, + &labeledExpr{ + pos: position{line: 145, col: 33, offset: 4242}, + label: "tag", + expr: &actionExpr{ + pos: position{line: 145, col: 38, offset: 4247}, + run: (*parser).callonIncludedFileLine10, + expr: &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonIncludedFileLine11, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 145, col: 78, offset: 4287}, + val: "[]", + ignoreCase: false, + want: "\"[]\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 149, col: 23, offset: 4382}, + run: (*parser).callonIncludedFileLine15, + expr: &seqExpr{ + pos: position{line: 149, col: 23, offset: 4382}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 149, col: 23, offset: 4382}, + val: "end::", + ignoreCase: false, + want: "\"end::\"", + }, + &labeledExpr{ + pos: position{line: 149, col: 31, offset: 4390}, + label: "tag", + expr: &actionExpr{ + pos: position{line: 149, col: 36, offset: 4395}, + run: (*parser).callonIncludedFileLine19, + expr: &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonIncludedFileLine20, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 149, col: 76, offset: 4435}, + val: "[]", + ignoreCase: false, + want: "\"[]\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 141, col: 74, offset: 4098}, + run: (*parser).callonIncludedFileLine24, + expr: &anyMatcher{ + line: 141, col: 74, offset: 4098, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonIncludedFileLine27, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "DocumentFragment", + pos: position{line: 165, col: 1, offset: 4921}, + expr: &actionExpr{ + pos: position{line: 166, col: 5, offset: 4945}, + run: (*parser).callonDocumentFragment1, + expr: &seqExpr{ + pos: position{line: 166, col: 5, offset: 4945}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 166, col: 5, offset: 4945}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 167, col: 5, offset: 4954}, + label: "attributes", + expr: &zeroOrOneExpr{ + pos: position{line: 167, col: 16, offset: 4965}, + expr: &ruleRefExpr{ + pos: position{line: 167, col: 17, offset: 4966}, + name: "BlockAttributes", + }, + }, + }, + &labeledExpr{ + pos: position{line: 168, col: 5, offset: 4988}, + label: "element", + expr: &zeroOrOneExpr{ + pos: position{line: 168, col: 13, offset: 4996}, + expr: &choiceExpr{ + pos: position{line: 169, col: 9, offset: 5006}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 169, col: 9, offset: 5006}, + name: "ImageBlock", + }, + &ruleRefExpr{ + pos: position{line: 170, col: 11, offset: 5067}, + name: "UserMacroBlock", + }, + &ruleRefExpr{ + pos: position{line: 171, col: 11, offset: 5132}, + name: "ShortcutParagraph", + }, + &actionExpr{ + pos: position{line: 253, col: 5, offset: 7909}, + run: (*parser).callonDocumentFragment15, + expr: &seqExpr{ + pos: position{line: 253, col: 5, offset: 7909}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 253, col: 5, offset: 7909}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 253, col: 9, offset: 7913}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment19, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 253, col: 30, offset: 7934}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 254, col: 5, offset: 7943}, + label: "value", + expr: &zeroOrOneExpr{ + pos: position{line: 254, col: 11, offset: 7949}, + expr: &actionExpr{ + pos: position{line: 267, col: 5, offset: 8397}, + run: (*parser).callonDocumentFragment27, + expr: &seqExpr{ + pos: position{line: 267, col: 5, offset: 8397}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonDocumentFragment29, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, - &labeledExpr{ - pos: position{line: 110, col: 9, offset: 3256}, - label: "name", + }, + &labeledExpr{ + pos: position{line: 267, col: 12, offset: 8404}, + label: "elements", + expr: &zeroOrMoreExpr{ + pos: position{line: 267, col: 21, offset: 8413}, expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment611, + pos: position{line: 271, col: 37, offset: 8572}, + run: (*parser).callonDocumentFragment34, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 271, col: 37, offset: 8572}, exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 110, col: 30, offset: 3277}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 111, col: 5, offset: 3286}, - label: "value", - expr: &zeroOrOneExpr{ - pos: position{line: 111, col: 11, offset: 3292}, - expr: &actionExpr{ - pos: position{line: 125, col: 5, offset: 3744}, - run: (*parser).callonDocumentFragment619, - expr: &seqExpr{ - pos: position{line: 125, col: 5, offset: 3744}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonDocumentFragment621, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + ¬Expr{ + pos: position{line: 271, col: 37, offset: 8572}, + expr: &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment38, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, - &labeledExpr{ - pos: position{line: 125, col: 12, offset: 3751}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 125, col: 21, offset: 3760}, - expr: &actionExpr{ - pos: position{line: 129, col: 37, offset: 3919}, - run: (*parser).callonDocumentFragment626, - expr: &seqExpr{ - pos: position{line: 129, col: 37, offset: 3919}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 129, col: 37, offset: 3919}, - expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment630, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, + }, + &labeledExpr{ + pos: position{line: 272, col: 5, offset: 8582}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 273, col: 9, offset: 8600}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 273, col: 10, offset: 8601}, + run: (*parser).callonDocumentFragment47, + expr: &oneOrMoreExpr{ + pos: position{line: 273, col: 10, offset: 8601}, + expr: &charClassMatcher{ + pos: position{line: 273, col: 10, offset: 8601}, + val: "[^\\r\\n{]", + chars: []rune{'\r', '\n', '{'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonDocumentFragment50, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonDocumentFragment52, }, &labeledExpr{ - pos: position{line: 130, col: 5, offset: 3929}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 131, col: 9, offset: 3947}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 131, col: 10, offset: 3948}, - run: (*parser).callonDocumentFragment639, - expr: &oneOrMoreExpr{ - pos: position{line: 131, col: 10, offset: 3948}, - expr: &charClassMatcher{ - pos: position{line: 131, col: 10, offset: 3948}, - val: "[^\\r\\n{]", - chars: []rune{'\r', '\n', '{'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonDocumentFragment642, + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonDocumentFragment55, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonDocumentFragment644, + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonDocumentFragment647, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment651, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonDocumentFragment658, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonDocumentFragment663, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonDocumentFragment665, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment59, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonDocumentFragment669, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment673, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonDocumentFragment66, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonDocumentFragment71, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonDocumentFragment73, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, inverted: false, }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonDocumentFragment680, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonDocumentFragment685, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonDocumentFragment687, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, }, }, }, }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonDocumentFragment691, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment695, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonDocumentFragment77, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment81, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonDocumentFragment88, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonDocumentFragment93, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonDocumentFragment95, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, inverted: false, }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, }, }, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, }, }, }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, &actionExpr{ - pos: position{line: 135, col: 12, offset: 4076}, - run: (*parser).callonDocumentFragment701, - expr: &litMatcher{ - pos: position{line: 135, col: 12, offset: 4076}, - val: "{", - ignoreCase: false, - want: "\"{\"", + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonDocumentFragment99, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment103, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, }, }, }, @@ -3253,6 +3840,16 @@ var g = &grammar{ }, }, }, + &actionExpr{ + pos: position{line: 277, col: 12, offset: 8729}, + run: (*parser).callonDocumentFragment109, + expr: &litMatcher{ + pos: position{line: 277, col: 12, offset: 8729}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, }, }, }, @@ -3260,759 +3857,420 @@ var g = &grammar{ }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment704, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, }, }, }, - &actionExpr{ - pos: position{line: 142, col: 19, offset: 4231}, - run: (*parser).callonDocumentFragment711, - expr: &seqExpr{ - pos: position{line: 142, col: 19, offset: 4231}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 142, col: 19, offset: 4231}, - val: ":!", - ignoreCase: false, - want: "\":!\"", - }, - &labeledExpr{ - pos: position{line: 142, col: 24, offset: 4236}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment715, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 142, col: 45, offset: 4257}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 142, col: 49, offset: 4261}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment722, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment725, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment112, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - }, - &actionExpr{ - pos: position{line: 144, col: 5, offset: 4328}, - run: (*parser).callonDocumentFragment732, - expr: &seqExpr{ - pos: position{line: 144, col: 5, offset: 4328}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 144, col: 5, offset: 4328}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 144, col: 9, offset: 4332}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonDocumentFragment736, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 144, col: 30, offset: 4353}, - val: "!:", - ignoreCase: false, - want: "\"!:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 144, col: 35, offset: 4358}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment743, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment746, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, - }, - &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment753, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment759, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 284, col: 19, offset: 8884}, + run: (*parser).callonDocumentFragment119, + expr: &seqExpr{ + pos: position{line: 284, col: 19, offset: 8884}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 284, col: 19, offset: 8884}, + val: ":!", + ignoreCase: false, + want: "\":!\"", }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment762, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", + &labeledExpr{ + pos: position{line: 284, col: 24, offset: 8889}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment123, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"\\r\\n\"", + inverted: false, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2336, col: 5, offset: 79188}, - run: (*parser).callonDocumentFragment769, - expr: &seqExpr{ - pos: position{line: 2336, col: 5, offset: 79188}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2336, col: 5, offset: 79188}, - run: (*parser).callonDocumentFragment771, - }, - &labeledExpr{ - pos: position{line: 2339, col: 5, offset: 79251}, - label: "level", - expr: &actionExpr{ - pos: position{line: 2339, col: 12, offset: 79258}, - run: (*parser).callonDocumentFragment773, - expr: &oneOrMoreExpr{ - pos: position{line: 2339, col: 12, offset: 79258}, - expr: &litMatcher{ - pos: position{line: 2339, col: 13, offset: 79259}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, }, - }, - &andCodeExpr{ - pos: position{line: 2343, col: 5, offset: 79367}, - run: (*parser).callonDocumentFragment776, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonDocumentFragment777, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &litMatcher{ + pos: position{line: 284, col: 45, offset: 8910}, + val: ":", + ignoreCase: false, + want: "\":\"", }, - }, - &labeledExpr{ - pos: position{line: 2347, col: 12, offset: 79526}, - label: "title", - expr: &actionExpr{ - pos: position{line: 2351, col: 20, offset: 79654}, - run: (*parser).callonDocumentFragment781, - expr: &oneOrMoreExpr{ - pos: position{line: 2351, col: 20, offset: 79654}, + &zeroOrMoreExpr{ + pos: position{line: 284, col: 49, offset: 8914}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment130, expr: &charClassMatcher{ - pos: position{line: 2351, col: 20, offset: 79654}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - inverted: true, + inverted: false, }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment785, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment133, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - }, - &ruleRefExpr{ - pos: position{line: 34, col: 11, offset: 1001}, - name: "DelimitedBlock", - }, - &actionExpr{ - pos: position{line: 2741, col: 18, offset: 91169}, - run: (*parser).callonDocumentFragment793, - expr: &seqExpr{ - pos: position{line: 2741, col: 18, offset: 91169}, - exprs: []interface{}{ - &choiceExpr{ - pos: position{line: 2742, col: 9, offset: 91179}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2742, col: 9, offset: 91179}, - val: "'''", - ignoreCase: false, - want: "\"'''\"", - }, - &litMatcher{ - pos: position{line: 2743, col: 11, offset: 91215}, - val: "***", - ignoreCase: false, - want: "\"***\"", - }, - &litMatcher{ - pos: position{line: 2743, col: 19, offset: 91223}, - val: "* * *", - ignoreCase: false, - want: "\"* * *\"", - }, - &litMatcher{ - pos: position{line: 2743, col: 29, offset: 91233}, - val: "---", - ignoreCase: false, - want: "\"---\"", - }, - &litMatcher{ - pos: position{line: 2743, col: 37, offset: 91241}, - val: "- - -", - ignoreCase: false, - want: "\"- - -\"", - }, - &litMatcher{ - pos: position{line: 2743, col: 47, offset: 91251}, - val: "___", - ignoreCase: false, - want: "\"___\"", - }, - &litMatcher{ - pos: position{line: 2743, col: 55, offset: 91259}, - val: "_ _ _", - ignoreCase: false, - want: "\"_ _ _\"", - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 2744, col: 11, offset: 91317}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment804, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 286, col: 5, offset: 8997}, + run: (*parser).callonDocumentFragment140, + expr: &seqExpr{ + pos: position{line: 286, col: 5, offset: 8997}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 286, col: 5, offset: 8997}, + val: ":", + ignoreCase: false, + want: "\":\"", }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment807, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", + &labeledExpr{ + pos: position{line: 286, col: 9, offset: 9001}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment144, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"\\r\\n\"", + inverted: false, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + }, + &litMatcher{ + pos: position{line: 286, col: 30, offset: 9022}, + val: "!:", + ignoreCase: false, + want: "\"!:\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 286, col: 35, offset: 9027}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment151, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment815, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment154, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - }, - &ruleRefExpr{ - pos: position{line: 36, col: 11, offset: 1087}, - name: "ListElements", - }, - &actionExpr{ - pos: position{line: 2639, col: 5, offset: 88300}, - run: (*parser).callonDocumentFragment823, - expr: &seqExpr{ - pos: position{line: 2639, col: 5, offset: 88300}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment827, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 959, col: 5, offset: 30555}, + run: (*parser).callonDocumentFragment161, + expr: &seqExpr{ + pos: position{line: 959, col: 5, offset: 30555}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 959, col: 5, offset: 30555}, + run: (*parser).callonDocumentFragment163, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment830, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", + &zeroOrMoreExpr{ + pos: position{line: 962, col: 5, offset: 30616}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment165, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment171, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment174, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, - }, - &labeledExpr{ - pos: position{line: 2640, col: 5, offset: 88324}, - label: "header", - expr: &zeroOrOneExpr{ - pos: position{line: 2640, col: 12, offset: 88331}, + &labeledExpr{ + pos: position{line: 963, col: 5, offset: 30666}, + label: "title", expr: &actionExpr{ - pos: position{line: 2655, col: 5, offset: 88644}, - run: (*parser).callonDocumentFragment839, + pos: position{line: 971, col: 5, offset: 30974}, + run: (*parser).callonDocumentFragment182, expr: &seqExpr{ - pos: position{line: 2655, col: 5, offset: 88644}, + pos: position{line: 971, col: 5, offset: 30974}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 2655, col: 5, offset: 88644}, - label: "cells", + &litMatcher{ + pos: position{line: 971, col: 5, offset: 30974}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonDocumentFragment185, expr: &oneOrMoreExpr{ - pos: position{line: 2655, col: 11, offset: 88650}, - expr: &actionExpr{ - pos: position{line: 2661, col: 5, offset: 88767}, - run: (*parser).callonDocumentFragment843, - expr: &seqExpr{ - pos: position{line: 2661, col: 5, offset: 88767}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2661, col: 5, offset: 88767}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2661, col: 9, offset: 88771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment847, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2662, col: 5, offset: 88783}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2662, col: 14, offset: 88792}, - expr: &actionExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - run: (*parser).callonDocumentFragment851, - expr: &labeledExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - run: (*parser).callonDocumentFragment853, - expr: &oneOrMoreExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - expr: &charClassMatcher{ - pos: position{line: 2694, col: 14, offset: 89589}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 971, col: 16, offset: 30985}, + label: "title", + expr: &actionExpr{ + pos: position{line: 2411, col: 17, offset: 81408}, + run: (*parser).callonDocumentFragment189, + expr: &oneOrMoreExpr{ + pos: position{line: 2411, col: 17, offset: 81408}, + expr: &charClassMatcher{ + pos: position{line: 2411, col: 17, offset: 81408}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment857, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment193, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -4021,78 +4279,94 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, - &oneOrMoreExpr{ - pos: position{line: 2656, col: 5, offset: 88672}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment865, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 964, col: 5, offset: 30690}, + label: "info", + expr: &zeroOrOneExpr{ + pos: position{line: 964, col: 10, offset: 30695}, + expr: &actionExpr{ + pos: position{line: 976, col: 5, offset: 31079}, + run: (*parser).callonDocumentFragment202, + expr: &seqExpr{ + pos: position{line: 976, col: 5, offset: 31079}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 976, col: 5, offset: 31079}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment205, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment871, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment211, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment874, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment214, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, @@ -4100,77 +4374,73 @@ var g = &grammar{ }, }, }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2641, col: 5, offset: 88350}, - label: "rows", - expr: &zeroOrMoreExpr{ - pos: position{line: 2641, col: 10, offset: 88355}, - expr: &choiceExpr{ - pos: position{line: 2666, col: 13, offset: 88889}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2676, col: 5, offset: 89108}, - run: (*parser).callonDocumentFragment884, - expr: &seqExpr{ - pos: position{line: 2676, col: 5, offset: 89108}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2676, col: 5, offset: 89108}, - expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + &zeroOrMoreExpr{ + pos: position{line: 977, col: 5, offset: 31094}, + expr: &choiceExpr{ + pos: position{line: 977, col: 6, offset: 31095}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonDocumentFragment223, + expr: &seqExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, - val: "|===", + pos: position{line: 2654, col: 31, offset: 88719}, + val: "//", ignoreCase: false, - want: "\"|===\"", + want: "\"//\"", }, - &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + ¬Expr{ + pos: position{line: 2654, col: 36, offset: 88724}, + expr: &litMatcher{ + pos: position{line: 2654, col: 37, offset: 88725}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + }, + &labeledExpr{ + pos: position{line: 2649, col: 49, offset: 88525}, + label: "content", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment891, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonDocumentFragment229, + expr: &zeroOrMoreExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + expr: &charClassMatcher{ + pos: position{line: 2656, col: 29, offset: 88760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, }, }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment894, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment233, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -4179,95 +4449,248 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, - }, - }, - &labeledExpr{ - pos: position{line: 2677, col: 5, offset: 89131}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2677, col: 11, offset: 89137}, - expr: &actionExpr{ - pos: position{line: 2677, col: 12, offset: 89138}, - run: (*parser).callonDocumentFragment905, + &actionExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonDocumentFragment240, expr: &seqExpr{ - pos: position{line: 2677, col: 12, offset: 89138}, + pos: position{line: 693, col: 5, offset: 22586}, exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonDocumentFragment242, + }, + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment243, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment247, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment250, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 698, col: 5, offset: 22769}, + run: (*parser).callonDocumentFragment257, + }, &labeledExpr{ - pos: position{line: 2677, col: 12, offset: 89138}, - label: "cell", - expr: &actionExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, - run: (*parser).callonDocumentFragment908, - expr: &seqExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2686, col: 5, offset: 89379}, - expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 703, col: 5, offset: 22970}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 714, col: 5, offset: 23294}, + expr: &actionExpr{ + pos: position{line: 714, col: 6, offset: 23295}, + run: (*parser).callonDocumentFragment260, + expr: &seqExpr{ + pos: position{line: 714, col: 6, offset: 23295}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 714, col: 6, offset: 23295}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment264, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment268, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment271, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 715, col: 5, offset: 23325}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment281, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, - &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment915, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment287, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, }, }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment918, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment291, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -4276,140 +4699,87 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, - ¬Expr{ - pos: position{line: 2687, col: 5, offset: 89402}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment928, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment934, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 704, col: 5, offset: 23004}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment300, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment304, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment937, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment307, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 2688, col: 5, offset: 89417}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2688, col: 9, offset: 89421}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment946, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2688, col: 16, offset: 89428}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2688, col: 25, offset: 89437}, - expr: &actionExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - run: (*parser).callonDocumentFragment950, - expr: &labeledExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - run: (*parser).callonDocumentFragment952, - expr: &oneOrMoreExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - expr: &charClassMatcher{ - pos: position{line: 2694, col: 14, offset: 89589}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, - ignoreCase: false, - inverted: true, - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, @@ -4417,45 +4787,13 @@ var g = &grammar{ }, }, }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment956, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, @@ -4463,74 +4801,536 @@ var g = &grammar{ }, }, }, - &choiceExpr{ - pos: position{line: 2680, col: 6, offset: 89200}, - alternatives: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 2680, col: 6, offset: 89200}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment965, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment971, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + }, + &labeledExpr{ + pos: position{line: 978, col: 5, offset: 31169}, + label: "authors", + expr: &actionExpr{ + pos: position{line: 984, col: 20, offset: 31419}, + run: (*parser).callonDocumentFragment317, + expr: &seqExpr{ + pos: position{line: 984, col: 20, offset: 31419}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 984, col: 20, offset: 31419}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment320, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 984, col: 27, offset: 31426}, + label: "authors", + expr: &choiceExpr{ + pos: position{line: 984, col: 36, offset: 31435}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 988, col: 30, offset: 31555}, + run: (*parser).callonDocumentFragment324, + expr: &seqExpr{ + pos: position{line: 988, col: 30, offset: 31555}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 988, col: 30, offset: 31555}, + expr: &litMatcher{ + pos: position{line: 988, col: 31, offset: 31556}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + &labeledExpr{ + pos: position{line: 988, col: 35, offset: 31560}, + label: "authors", + expr: &oneOrMoreExpr{ + pos: position{line: 988, col: 44, offset: 31569}, + expr: &actionExpr{ + pos: position{line: 997, col: 5, offset: 31801}, + run: (*parser).callonDocumentFragment330, + expr: &seqExpr{ + pos: position{line: 997, col: 5, offset: 31801}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 997, col: 5, offset: 31801}, + label: "fullName", + expr: &zeroOrOneExpr{ + pos: position{line: 997, col: 14, offset: 31810}, + expr: &actionExpr{ + pos: position{line: 1008, col: 5, offset: 32190}, + run: (*parser).callonDocumentFragment334, + expr: &seqExpr{ + pos: position{line: 1008, col: 5, offset: 32190}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1008, col: 5, offset: 32190}, + label: "part1", + expr: &actionExpr{ + pos: position{line: 1008, col: 12, offset: 32197}, + run: (*parser).callonDocumentFragment337, + expr: &oneOrMoreExpr{ + pos: position{line: 1008, col: 12, offset: 32197}, + expr: &charClassMatcher{ + pos: position{line: 1008, col: 12, offset: 32197}, + val: "[^<;\\r\\n ]", + chars: []rune{'<', ';', '\r', '\n', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1011, col: 5, offset: 32277}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment341, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1012, col: 5, offset: 32288}, + label: "part2", + expr: &zeroOrOneExpr{ + pos: position{line: 1012, col: 11, offset: 32294}, + expr: &actionExpr{ + pos: position{line: 1012, col: 12, offset: 32295}, + run: (*parser).callonDocumentFragment345, + expr: &oneOrMoreExpr{ + pos: position{line: 1012, col: 12, offset: 32295}, + expr: &charClassMatcher{ + pos: position{line: 1012, col: 12, offset: 32295}, + val: "[^<;\\r\\n ]", + chars: []rune{'<', ';', '\r', '\n', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1015, col: 5, offset: 32376}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment349, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1016, col: 5, offset: 32387}, + label: "part3", + expr: &zeroOrOneExpr{ + pos: position{line: 1016, col: 11, offset: 32393}, + expr: &actionExpr{ + pos: position{line: 1016, col: 12, offset: 32394}, + run: (*parser).callonDocumentFragment353, + expr: &oneOrMoreExpr{ + pos: position{line: 1016, col: 12, offset: 32394}, + expr: &charClassMatcher{ + pos: position{line: 1016, col: 12, offset: 32394}, + val: "[^<;\\r\\n]", + chars: []rune{'<', ';', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1019, col: 5, offset: 32473}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment357, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 997, col: 40, offset: 31836}, + label: "email", + expr: &zeroOrOneExpr{ + pos: position{line: 997, col: 46, offset: 31842}, + expr: &actionExpr{ + pos: position{line: 1025, col: 5, offset: 32595}, + run: (*parser).callonDocumentFragment361, + expr: &seqExpr{ + pos: position{line: 1025, col: 5, offset: 32595}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1025, col: 5, offset: 32595}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &litMatcher{ + pos: position{line: 1026, col: 5, offset: 32605}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1027, col: 5, offset: 32614}, + label: "email", + expr: &actionExpr{ + pos: position{line: 1027, col: 12, offset: 32621}, + run: (*parser).callonDocumentFragment368, + expr: &oneOrMoreExpr{ + pos: position{line: 1027, col: 13, offset: 32622}, + expr: &charClassMatcher{ + pos: position{line: 1027, col: 13, offset: 32622}, + val: "[^>\\r\\n]", + chars: []rune{'>', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1030, col: 5, offset: 32682}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 997, col: 69, offset: 31865}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment373, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 997, col: 76, offset: 31872}, + expr: &litMatcher{ + pos: position{line: 997, col: 76, offset: 31872}, + val: ";", + ignoreCase: false, + want: "\";\"", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 997, col: 81, offset: 31877}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment378, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 998, col: 5, offset: 31889}, + run: (*parser).callonDocumentFragment380, + }, + }, + }, + }, + }, + }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment974, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + &actionExpr{ + pos: position{line: 992, col: 33, offset: 31687}, + run: (*parser).callonDocumentFragment381, + expr: &seqExpr{ + pos: position{line: 992, col: 33, offset: 31687}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 992, col: 33, offset: 31687}, + val: ":author:", + ignoreCase: false, + want: "\":author:\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 992, col: 44, offset: 31698}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment385, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"\\r\"", + inverted: false, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &labeledExpr{ + pos: position{line: 992, col: 51, offset: 31705}, + label: "author", + expr: &actionExpr{ + pos: position{line: 997, col: 5, offset: 31801}, + run: (*parser).callonDocumentFragment388, + expr: &seqExpr{ + pos: position{line: 997, col: 5, offset: 31801}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 997, col: 5, offset: 31801}, + label: "fullName", + expr: &zeroOrOneExpr{ + pos: position{line: 997, col: 14, offset: 31810}, + expr: &actionExpr{ + pos: position{line: 1008, col: 5, offset: 32190}, + run: (*parser).callonDocumentFragment392, + expr: &seqExpr{ + pos: position{line: 1008, col: 5, offset: 32190}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1008, col: 5, offset: 32190}, + label: "part1", + expr: &actionExpr{ + pos: position{line: 1008, col: 12, offset: 32197}, + run: (*parser).callonDocumentFragment395, + expr: &oneOrMoreExpr{ + pos: position{line: 1008, col: 12, offset: 32197}, + expr: &charClassMatcher{ + pos: position{line: 1008, col: 12, offset: 32197}, + val: "[^<;\\r\\n ]", + chars: []rune{'<', ';', '\r', '\n', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1011, col: 5, offset: 32277}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment399, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1012, col: 5, offset: 32288}, + label: "part2", + expr: &zeroOrOneExpr{ + pos: position{line: 1012, col: 11, offset: 32294}, + expr: &actionExpr{ + pos: position{line: 1012, col: 12, offset: 32295}, + run: (*parser).callonDocumentFragment403, + expr: &oneOrMoreExpr{ + pos: position{line: 1012, col: 12, offset: 32295}, + expr: &charClassMatcher{ + pos: position{line: 1012, col: 12, offset: 32295}, + val: "[^<;\\r\\n ]", + chars: []rune{'<', ';', '\r', '\n', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1015, col: 5, offset: 32376}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment407, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1016, col: 5, offset: 32387}, + label: "part3", + expr: &zeroOrOneExpr{ + pos: position{line: 1016, col: 11, offset: 32393}, + expr: &actionExpr{ + pos: position{line: 1016, col: 12, offset: 32394}, + run: (*parser).callonDocumentFragment411, + expr: &oneOrMoreExpr{ + pos: position{line: 1016, col: 12, offset: 32394}, + expr: &charClassMatcher{ + pos: position{line: 1016, col: 12, offset: 32394}, + val: "[^<;\\r\\n]", + chars: []rune{'<', ';', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1019, col: 5, offset: 32473}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment415, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 997, col: 40, offset: 31836}, + label: "email", + expr: &zeroOrOneExpr{ + pos: position{line: 997, col: 46, offset: 31842}, + expr: &actionExpr{ + pos: position{line: 1025, col: 5, offset: 32595}, + run: (*parser).callonDocumentFragment419, + expr: &seqExpr{ + pos: position{line: 1025, col: 5, offset: 32595}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1025, col: 5, offset: 32595}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &litMatcher{ + pos: position{line: 1026, col: 5, offset: 32605}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1027, col: 5, offset: 32614}, + label: "email", + expr: &actionExpr{ + pos: position{line: 1027, col: 12, offset: 32621}, + run: (*parser).callonDocumentFragment426, + expr: &oneOrMoreExpr{ + pos: position{line: 1027, col: 13, offset: 32622}, + expr: &charClassMatcher{ + pos: position{line: 1027, col: 13, offset: 32622}, + val: "[^>\\r\\n]", + chars: []rune{'>', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1030, col: 5, offset: 32682}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + }, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 997, col: 69, offset: 31865}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment431, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 997, col: 76, offset: 31872}, + expr: &litMatcher{ + pos: position{line: 997, col: 76, offset: 31872}, + val: ";", + ignoreCase: false, + want: "\";\"", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 997, col: 81, offset: 31877}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment436, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 998, col: 5, offset: 31889}, + run: (*parser).callonDocumentFragment438, + }, + }, + }, + }, }, }, }, @@ -4538,79 +5338,40 @@ var g = &grammar{ }, }, }, - }, - &andExpr{ - pos: position{line: 2680, col: 19, offset: 89213}, - expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment986, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment440, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment989, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -4619,65 +5380,73 @@ var g = &grammar{ }, }, }, - }, - }, - &actionExpr{ - pos: position{line: 2669, col: 5, offset: 88956}, - run: (*parser).callonDocumentFragment998, - expr: &seqExpr{ - pos: position{line: 2669, col: 5, offset: 88956}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2669, col: 5, offset: 88956}, - expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + &zeroOrMoreExpr{ + pos: position{line: 979, col: 5, offset: 31200}, + expr: &choiceExpr{ + pos: position{line: 979, col: 6, offset: 31201}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonDocumentFragment449, + expr: &seqExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, - val: "|===", + pos: position{line: 2654, col: 31, offset: 88719}, + val: "//", ignoreCase: false, - want: "\"|===\"", + want: "\"//\"", }, - &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + ¬Expr{ + pos: position{line: 2654, col: 36, offset: 88724}, + expr: &litMatcher{ + pos: position{line: 2654, col: 37, offset: 88725}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + }, + &labeledExpr{ + pos: position{line: 2649, col: 49, offset: 88525}, + label: "content", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1005, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonDocumentFragment455, + expr: &zeroOrMoreExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + expr: &charClassMatcher{ + pos: position{line: 2656, col: 29, offset: 88760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, }, }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1008, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment459, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -4686,231 +5455,350 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, - }, - }, - &labeledExpr{ - pos: position{line: 2670, col: 5, offset: 88979}, - label: "cells", - expr: &oneOrMoreExpr{ - pos: position{line: 2670, col: 11, offset: 88985}, - expr: &actionExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, - run: (*parser).callonDocumentFragment1019, + &actionExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonDocumentFragment466, expr: &seqExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, + pos: position{line: 693, col: 5, offset: 22586}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 2686, col: 5, offset: 89379}, - expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, - val: "|===", + &andCodeExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonDocumentFragment468, + }, + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment469, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment473, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1026, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + inverted: false, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1029, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment476, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 2687, col: 5, offset: 89402}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment1039, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1045, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &andCodeExpr{ + pos: position{line: 698, col: 5, offset: 22769}, + run: (*parser).callonDocumentFragment483, + }, + &labeledExpr{ + pos: position{line: 703, col: 5, offset: 22970}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 714, col: 5, offset: 23294}, + expr: &actionExpr{ + pos: position{line: 714, col: 6, offset: 23295}, + run: (*parser).callonDocumentFragment486, + expr: &seqExpr{ + pos: position{line: 714, col: 6, offset: 23295}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 714, col: 6, offset: 23295}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment490, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment494, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment497, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1048, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", + &labeledExpr{ + pos: position{line: 715, col: 5, offset: 23325}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment507, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment513, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment517, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, }, }, - &litMatcher{ - pos: position{line: 2688, col: 5, offset: 89417}, - val: "|", - ignoreCase: false, - want: "\"|\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2688, col: 9, offset: 89421}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1057, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 2688, col: 16, offset: 89428}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 2688, col: 25, offset: 89437}, - expr: &actionExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - run: (*parser).callonDocumentFragment1061, - expr: &labeledExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - run: (*parser).callonDocumentFragment1063, - expr: &oneOrMoreExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - expr: &charClassMatcher{ - pos: position{line: 2694, col: 14, offset: 89589}, - val: "[^\\r\\n|]", - chars: []rune{'\r', '\n', '|'}, + &zeroOrOneExpr{ + pos: position{line: 704, col: 5, offset: 23004}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment526, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", ignoreCase: false, - inverted: true, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment530, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment533, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, @@ -4919,68 +5807,25 @@ var g = &grammar{ }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1067, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 2671, col: 5, offset: 89006}, + }, + &labeledExpr{ + pos: position{line: 980, col: 5, offset: 31275}, + label: "revision", + expr: &zeroOrOneExpr{ + pos: position{line: 980, col: 14, offset: 31284}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDocumentFragment1075, + pos: position{line: 1036, col: 21, offset: 32871}, + run: (*parser).callonDocumentFragment544, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 1036, col: 21, offset: 32871}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 1036, col: 21, offset: 32871}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1081, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment547, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -4988,29 +5833,280 @@ var g = &grammar{ }, }, }, + ¬Expr{ + pos: position{line: 1036, col: 28, offset: 32878}, + expr: &litMatcher{ + pos: position{line: 1036, col: 29, offset: 32879}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + &labeledExpr{ + pos: position{line: 1036, col: 33, offset: 32883}, + label: "revision", + expr: &choiceExpr{ + pos: position{line: 1037, col: 9, offset: 32902}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1037, col: 10, offset: 32903}, + run: (*parser).callonDocumentFragment553, + expr: &seqExpr{ + pos: position{line: 1037, col: 10, offset: 32903}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1037, col: 10, offset: 32903}, + label: "revnumber", + expr: &choiceExpr{ + pos: position{line: 1046, col: 27, offset: 33420}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1046, col: 27, offset: 33420}, + run: (*parser).callonDocumentFragment557, + expr: &seqExpr{ + pos: position{line: 1046, col: 27, offset: 33420}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1046, col: 27, offset: 33420}, + val: "v", + ignoreCase: true, + want: "\"v\"i", + }, + &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonDocumentFragment560, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + &oneOrMoreExpr{ + pos: position{line: 1046, col: 39, offset: 33432}, + expr: &charClassMatcher{ + pos: position{line: 1046, col: 39, offset: 33432}, + val: "[^:,\\r\\n]", + chars: []rune{':', ',', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1048, col: 5, offset: 33480}, + run: (*parser).callonDocumentFragment564, + expr: &seqExpr{ + pos: position{line: 1048, col: 5, offset: 33480}, + exprs: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 1048, col: 5, offset: 33480}, + expr: &litMatcher{ + pos: position{line: 1048, col: 5, offset: 33480}, + val: "v", + ignoreCase: true, + want: "\"v\"i", + }, + }, + &actionExpr{ + pos: position{line: 2911, col: 10, offset: 96574}, + run: (*parser).callonDocumentFragment568, + expr: &charClassMatcher{ + pos: position{line: 2911, col: 10, offset: 96574}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + &oneOrMoreExpr{ + pos: position{line: 1048, col: 18, offset: 33493}, + expr: &charClassMatcher{ + pos: position{line: 1048, col: 18, offset: 33493}, + val: "[^:,\\r\\n]", + chars: []rune{':', ',', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1048, col: 29, offset: 33504}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment573, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &andExpr{ + pos: position{line: 1048, col: 36, offset: 33511}, + expr: &litMatcher{ + pos: position{line: 1048, col: 37, offset: 33512}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + }, + }, + }, + }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 1037, col: 45, offset: 32938}, + expr: &litMatcher{ + pos: position{line: 1037, col: 45, offset: 32938}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + }, + &labeledExpr{ + pos: position{line: 1037, col: 50, offset: 32943}, + label: "revdate", + expr: &zeroOrOneExpr{ + pos: position{line: 1037, col: 58, offset: 32951}, + expr: &actionExpr{ + pos: position{line: 1052, col: 25, offset: 33576}, + run: (*parser).callonDocumentFragment581, + expr: &oneOrMoreExpr{ + pos: position{line: 1052, col: 25, offset: 33576}, + expr: &charClassMatcher{ + pos: position{line: 1052, col: 25, offset: 33576}, + val: "[^:\\r\\n]", + chars: []rune{':', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 1037, col: 82, offset: 32975}, + expr: &litMatcher{ + pos: position{line: 1037, col: 82, offset: 32975}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + &labeledExpr{ + pos: position{line: 1037, col: 87, offset: 32980}, + label: "revremark", + expr: &zeroOrOneExpr{ + pos: position{line: 1037, col: 97, offset: 32990}, + expr: &actionExpr{ + pos: position{line: 1056, col: 27, offset: 33648}, + run: (*parser).callonDocumentFragment588, + expr: &oneOrMoreExpr{ + pos: position{line: 1056, col: 27, offset: 33648}, + expr: &charClassMatcher{ + pos: position{line: 1056, col: 27, offset: 33648}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1039, col: 15, offset: 33108}, + run: (*parser).callonDocumentFragment591, + expr: &seqExpr{ + pos: position{line: 1039, col: 15, offset: 33108}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1039, col: 15, offset: 33108}, + label: "revdate", + expr: &actionExpr{ + pos: position{line: 1052, col: 25, offset: 33576}, + run: (*parser).callonDocumentFragment594, + expr: &oneOrMoreExpr{ + pos: position{line: 1052, col: 25, offset: 33576}, + expr: &charClassMatcher{ + pos: position{line: 1052, col: 25, offset: 33576}, + val: "[^:\\r\\n]", + chars: []rune{':', '\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 1039, col: 46, offset: 33139}, + expr: &litMatcher{ + pos: position{line: 1039, col: 46, offset: 33139}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + &labeledExpr{ + pos: position{line: 1039, col: 51, offset: 33144}, + label: "revremark", + expr: &zeroOrOneExpr{ + pos: position{line: 1039, col: 61, offset: 33154}, + expr: &actionExpr{ + pos: position{line: 1056, col: 27, offset: 33648}, + run: (*parser).callonDocumentFragment601, + expr: &oneOrMoreExpr{ + pos: position{line: 1056, col: 27, offset: 33648}, + expr: &charClassMatcher{ + pos: position{line: 1056, col: 27, offset: 33648}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1084, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment605, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -5019,9 +6115,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -5036,788 +6132,734 @@ var g = &grammar{ }, }, }, - }, - &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, - val: "|===", - ignoreCase: false, - want: "\"|===\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1095, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1098, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + &labeledExpr{ + pos: position{line: 965, col: 5, offset: 30720}, + label: "extraAttrs", + expr: &zeroOrMoreExpr{ + pos: position{line: 965, col: 16, offset: 30731}, + expr: &choiceExpr{ + pos: position{line: 965, col: 17, offset: 30732}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 253, col: 5, offset: 7909}, + run: (*parser).callonDocumentFragment615, + expr: &seqExpr{ + pos: position{line: 253, col: 5, offset: 7909}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 253, col: 5, offset: 7909}, + val: ":", + ignoreCase: false, + want: "\":\"", }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonDocumentFragment1107, - expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, - expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonDocumentFragment1113, - expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1117, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1572, col: 5, offset: 52684}, - run: (*parser).callonDocumentFragment1124, - expr: &seqExpr{ - pos: position{line: 1572, col: 5, offset: 52684}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1572, col: 5, offset: 52684}, - label: "kind", - expr: &choiceExpr{ - pos: position{line: 94, col: 19, offset: 2789}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 94, col: 19, offset: 2789}, - run: (*parser).callonDocumentFragment1128, - expr: &litMatcher{ - pos: position{line: 94, col: 19, offset: 2789}, - val: "TIP", - ignoreCase: false, - want: "\"TIP\"", - }, - }, - &actionExpr{ - pos: position{line: 96, col: 5, offset: 2827}, - run: (*parser).callonDocumentFragment1130, - expr: &litMatcher{ - pos: position{line: 96, col: 5, offset: 2827}, - val: "NOTE", - ignoreCase: false, - want: "\"NOTE\"", - }, - }, - &actionExpr{ - pos: position{line: 98, col: 5, offset: 2867}, - run: (*parser).callonDocumentFragment1132, - expr: &litMatcher{ - pos: position{line: 98, col: 5, offset: 2867}, - val: "IMPORTANT", - ignoreCase: false, - want: "\"IMPORTANT\"", - }, - }, - &actionExpr{ - pos: position{line: 100, col: 5, offset: 2917}, - run: (*parser).callonDocumentFragment1134, - expr: &litMatcher{ - pos: position{line: 100, col: 5, offset: 2917}, - val: "WARNING", - ignoreCase: false, - want: "\"WARNING\"", - }, - }, - &actionExpr{ - pos: position{line: 102, col: 5, offset: 2963}, - run: (*parser).callonDocumentFragment1136, - expr: &litMatcher{ - pos: position{line: 102, col: 5, offset: 2963}, - val: "CAUTION", - ignoreCase: false, - want: "\"CAUTION\"", - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1572, col: 27, offset: 52706}, - val: ": ", - ignoreCase: false, - want: "\": \"", - }, - &labeledExpr{ - pos: position{line: 1573, col: 5, offset: 52716}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - run: (*parser).callonDocumentFragment1140, - expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - run: (*parser).callonDocumentFragment1143, - expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, - run: (*parser).callonDocumentFragment1146, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1148, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1574, col: 5, offset: 52750}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1574, col: 16, offset: 52761}, - expr: &actionExpr{ - pos: position{line: 1575, col: 9, offset: 52771}, - run: (*parser).callonDocumentFragment1157, - expr: &seqExpr{ - pos: position{line: 1575, col: 9, offset: 52771}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1575, col: 9, offset: 52771}, - expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, + &labeledExpr{ + pos: position{line: 253, col: 9, offset: 7913}, + label: "name", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1163, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1165, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1576, col: 9, offset: 52810}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 1576, col: 15, offset: 52816}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonDocumentFragment1172, - expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, - expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, - val: "//", + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment619, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonDocumentFragment1178, - expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, + inverted: false, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1182, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - run: (*parser).callonDocumentFragment1189, - expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - run: (*parser).callonDocumentFragment1192, - expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, - run: (*parser).callonDocumentFragment1195, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 253, col: 30, offset: 7934}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 254, col: 5, offset: 7943}, + label: "value", + expr: &zeroOrOneExpr{ + pos: position{line: 254, col: 11, offset: 7949}, + expr: &actionExpr{ + pos: position{line: 267, col: 5, offset: 8397}, + run: (*parser).callonDocumentFragment627, + expr: &seqExpr{ + pos: position{line: 267, col: 5, offset: 8397}, + exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1197, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonDocumentFragment629, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1595, col: 5, offset: 53290}, - run: (*parser).callonDocumentFragment1204, - expr: &seqExpr{ - pos: position{line: 1595, col: 5, offset: 53290}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1595, col: 5, offset: 53290}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 1602, col: 5, offset: 53575}, - run: (*parser).callonDocumentFragment1207, - expr: &seqExpr{ - pos: position{line: 1602, col: 5, offset: 53575}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1602, col: 5, offset: 53575}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1602, col: 14, offset: 53584}, - run: (*parser).callonDocumentFragment1210, - expr: &seqExpr{ - pos: position{line: 1602, col: 14, offset: 53584}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonDocumentFragment1212, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 1602, col: 21, offset: 53591}, - expr: &charClassMatcher{ - pos: position{line: 1602, col: 21, offset: 53591}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1605, col: 5, offset: 53648}, - run: (*parser).callonDocumentFragment1217, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1219, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1596, col: 5, offset: 53331}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 1596, col: 16, offset: 53342}, - expr: &choiceExpr{ - pos: position{line: 1596, col: 17, offset: 53343}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonDocumentFragment1229, - expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, - expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, - &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, - label: "content", - expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonDocumentFragment1235, - expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1239, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - run: (*parser).callonDocumentFragment1246, - expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - run: (*parser).callonDocumentFragment1249, - expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, - run: (*parser).callonDocumentFragment1252, + &labeledExpr{ + pos: position{line: 267, col: 12, offset: 8404}, + label: "elements", + expr: &zeroOrMoreExpr{ + pos: position{line: 267, col: 21, offset: 8413}, + expr: &actionExpr{ + pos: position{line: 271, col: 37, offset: 8572}, + run: (*parser).callonDocumentFragment634, + expr: &seqExpr{ + pos: position{line: 271, col: 37, offset: 8572}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 271, col: 37, offset: 8572}, + expr: &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment638, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 272, col: 5, offset: 8582}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 273, col: 9, offset: 8600}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 273, col: 10, offset: 8601}, + run: (*parser).callonDocumentFragment647, + expr: &oneOrMoreExpr{ + pos: position{line: 273, col: 10, offset: 8601}, + expr: &charClassMatcher{ + pos: position{line: 273, col: 10, offset: 8601}, + val: "[^\\r\\n{]", + chars: []rune{'\r', '\n', '{'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonDocumentFragment650, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonDocumentFragment652, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonDocumentFragment655, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment659, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonDocumentFragment666, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonDocumentFragment671, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonDocumentFragment673, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonDocumentFragment677, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment681, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonDocumentFragment688, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonDocumentFragment693, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonDocumentFragment695, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonDocumentFragment699, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment703, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 277, col: 12, offset: 8729}, + run: (*parser).callonDocumentFragment709, + expr: &litMatcher{ + pos: position{line: 277, col: 12, offset: 8729}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment712, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1254, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", + }, + }, + &actionExpr{ + pos: position{line: 284, col: 19, offset: 8884}, + run: (*parser).callonDocumentFragment719, + expr: &seqExpr{ + pos: position{line: 284, col: 19, offset: 8884}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 284, col: 19, offset: 8884}, + val: ":!", + ignoreCase: false, + want: "\":!\"", + }, + &labeledExpr{ + pos: position{line: 284, col: 24, offset: 8889}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment723, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"\\n\"", + inverted: false, }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 284, col: 45, offset: 8910}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 284, col: 49, offset: 8914}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment730, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment733, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 286, col: 5, offset: 8997}, + run: (*parser).callonDocumentFragment740, + expr: &seqExpr{ + pos: position{line: 286, col: 5, offset: 8997}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 286, col: 5, offset: 8997}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 286, col: 9, offset: 9001}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonDocumentFragment744, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"\\r\"", + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + }, + &litMatcher{ + pos: position{line: 286, col: 30, offset: 9022}, + val: "!:", + ignoreCase: false, + want: "\"!:\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 286, col: 35, offset: 9027}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment751, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment754, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, @@ -5831,69 +6873,239 @@ var g = &grammar{ }, }, }, - }, - &actionExpr{ - pos: position{line: 1022, col: 5, offset: 32893}, - run: (*parser).callonDocumentFragment1261, - expr: &seqExpr{ - pos: position{line: 1022, col: 5, offset: 32893}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 1022, col: 5, offset: 32893}, - run: (*parser).callonDocumentFragment1263, - }, - &labeledExpr{ - pos: position{line: 1025, col: 5, offset: 32951}, - label: "frontmatter", - expr: &actionExpr{ - pos: position{line: 1031, col: 20, offset: 33108}, - run: (*parser).callonDocumentFragment1265, - expr: &seqExpr{ - pos: position{line: 1031, col: 20, offset: 33108}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1035, col: 30, offset: 33280}, - val: "---", - ignoreCase: false, - want: "\"---\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1035, col: 36, offset: 33286}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1269, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1272, + &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment761, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment767, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment770, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2396, col: 5, offset: 80951}, + run: (*parser).callonDocumentFragment777, + expr: &seqExpr{ + pos: position{line: 2396, col: 5, offset: 80951}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 2396, col: 5, offset: 80951}, + run: (*parser).callonDocumentFragment779, + }, + &labeledExpr{ + pos: position{line: 2399, col: 5, offset: 81014}, + label: "level", + expr: &actionExpr{ + pos: position{line: 2399, col: 12, offset: 81021}, + run: (*parser).callonDocumentFragment781, + expr: &oneOrMoreExpr{ + pos: position{line: 2399, col: 12, offset: 81021}, + expr: &litMatcher{ + pos: position{line: 2399, col: 13, offset: 81022}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 2403, col: 5, offset: 81130}, + run: (*parser).callonDocumentFragment784, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonDocumentFragment785, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2407, col: 12, offset: 81289}, + label: "title", + expr: &actionExpr{ + pos: position{line: 2411, col: 17, offset: 81408}, + run: (*parser).callonDocumentFragment789, + expr: &oneOrMoreExpr{ + pos: position{line: 2411, col: 17, offset: 81408}, + expr: &charClassMatcher{ + pos: position{line: 2411, col: 17, offset: 81408}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment793, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonDocumentFragment800, + expr: &seqExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonDocumentFragment802, + }, + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment803, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment807, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment810, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -5902,117 +7114,308 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, - &labeledExpr{ - pos: position{line: 1031, col: 45, offset: 33133}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1031, col: 53, offset: 33141}, - expr: &actionExpr{ - pos: position{line: 1037, col: 27, offset: 33324}, - run: (*parser).callonDocumentFragment1281, - expr: &zeroOrMoreExpr{ - pos: position{line: 1037, col: 27, offset: 33324}, - expr: &oneOrMoreExpr{ - pos: position{line: 1037, col: 28, offset: 33325}, - expr: &seqExpr{ - pos: position{line: 1037, col: 29, offset: 33326}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1037, col: 29, offset: 33326}, - expr: &seqExpr{ - pos: position{line: 1035, col: 30, offset: 33280}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1035, col: 30, offset: 33280}, - val: "---", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 698, col: 5, offset: 22769}, + run: (*parser).callonDocumentFragment817, + }, + &labeledExpr{ + pos: position{line: 703, col: 5, offset: 22970}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 714, col: 5, offset: 23294}, + expr: &actionExpr{ + pos: position{line: 714, col: 6, offset: 23295}, + run: (*parser).callonDocumentFragment820, + expr: &seqExpr{ + pos: position{line: 714, col: 6, offset: 23295}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 714, col: 6, offset: 23295}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment824, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment828, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"---\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1035, col: 36, offset: 33286}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1289, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + inverted: false, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1292, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment831, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 715, col: 5, offset: 23325}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment841, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment847, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment851, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, - &anyMatcher{ - line: 1037, col: 55, offset: 33352, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 704, col: 5, offset: 23004}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonDocumentFragment860, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment864, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment867, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 723, col: 5, offset: 23478}, + run: (*parser).callonDocumentFragment876, + expr: &seqExpr{ + pos: position{line: 723, col: 5, offset: 23478}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 723, col: 5, offset: 23478}, + run: (*parser).callonDocumentFragment878, + }, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonDocumentFragment879, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 1035, col: 30, offset: 33280}, - val: "---", + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", ignoreCase: false, - want: "\"---\"", + want: "\"====\"", }, &zeroOrMoreExpr{ - pos: position{line: 1035, col: 36, offset: 33286}, + pos: position{line: 653, col: 33, offset: 21484}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDocumentFragment1302, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment883, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -6021,28 +7424,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragment1305, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment886, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -6051,9 +7454,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -6061,1094 +7464,510 @@ var g = &grammar{ }, }, }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 42, col: 11, offset: 1233}, - name: "Paragraph", - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "DocumentFragmentWithinVerbatimBlock", - pos: position{line: 53, col: 1, offset: 1610}, - expr: &actionExpr{ - pos: position{line: 54, col: 5, offset: 1653}, - run: (*parser).callonDocumentFragmentWithinVerbatimBlock1, - expr: &seqExpr{ - pos: position{line: 54, col: 5, offset: 1653}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 54, col: 5, offset: 1653}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 54, col: 14, offset: 1662}, - expr: &choiceExpr{ - pos: position{line: 55, col: 9, offset: 1672}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 55, col: 9, offset: 1672}, - name: "FileInclusion", - }, - &actionExpr{ - pos: position{line: 62, col: 5, offset: 1769}, - run: (*parser).callonDocumentFragmentWithinVerbatimBlock7, - expr: &seqExpr{ - pos: position{line: 62, col: 5, offset: 1769}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 62, col: 5, offset: 1769}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + &andCodeExpr{ + pos: position{line: 728, col: 5, offset: 23661}, + run: (*parser).callonDocumentFragment893, }, &labeledExpr{ - pos: position{line: 63, col: 5, offset: 1778}, + pos: position{line: 733, col: 5, offset: 23862}, label: "content", - expr: &actionExpr{ - pos: position{line: 63, col: 14, offset: 1787}, - run: (*parser).callonDocumentFragmentWithinVerbatimBlock13, - expr: &zeroOrMoreExpr{ - pos: position{line: 63, col: 14, offset: 1787}, - expr: &charClassMatcher{ - pos: position{line: 63, col: 14, offset: 1787}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDocumentFragmentWithinVerbatimBlock17, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + expr: &zeroOrMoreExpr{ + pos: position{line: 744, col: 4, offset: 24184}, + expr: &actionExpr{ + pos: position{line: 744, col: 5, offset: 24185}, + run: (*parser).callonDocumentFragment896, + expr: &seqExpr{ + pos: position{line: 744, col: 5, offset: 24185}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 744, col: 5, offset: 24185}, + expr: &choiceExpr{ + pos: position{line: 741, col: 29, offset: 24128}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonDocumentFragment900, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment904, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment907, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - { - name: "DelimitedBlockElements", - pos: position{line: 72, col: 1, offset: 1978}, - expr: &actionExpr{ - pos: position{line: 73, col: 5, offset: 2009}, - run: (*parser).callonDelimitedBlockElements1, - expr: &seqExpr{ - pos: position{line: 73, col: 5, offset: 2009}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 73, col: 5, offset: 2009}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 73, col: 14, offset: 2018}, - expr: &choiceExpr{ - pos: position{line: 74, col: 9, offset: 2028}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonDelimitedBlockElements6, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonDelimitedBlockElements10, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 75, col: 11, offset: 2090}, - name: "DocumentFragment", - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - { - name: "BlockAttributes", - pos: position{line: 151, col: 1, offset: 4633}, - expr: &actionExpr{ - pos: position{line: 152, col: 5, offset: 4656}, - run: (*parser).callonBlockAttributes1, - expr: &labeledExpr{ - pos: position{line: 152, col: 5, offset: 4656}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 152, col: 16, offset: 4667}, - expr: &choiceExpr{ - pos: position{line: 154, col: 9, offset: 4734}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 154, col: 10, offset: 4735}, - run: (*parser).callonBlockAttributes5, - expr: &seqExpr{ - pos: position{line: 154, col: 10, offset: 4735}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 154, col: 10, offset: 4735}, - label: "anchor", - expr: &actionExpr{ - pos: position{line: 186, col: 4, offset: 5578}, - run: (*parser).callonBlockAttributes8, - expr: &seqExpr{ - pos: position{line: 186, col: 4, offset: 5578}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 186, col: 4, offset: 5578}, - val: "[[", - ignoreCase: false, - want: "\"[[\"", - }, - &labeledExpr{ - pos: position{line: 187, col: 5, offset: 5588}, - label: "id", - expr: &actionExpr{ - pos: position{line: 188, col: 9, offset: 5601}, - run: (*parser).callonBlockAttributes12, - expr: &labeledExpr{ - pos: position{line: 188, col: 9, offset: 5601}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 188, col: 18, offset: 5610}, - expr: &choiceExpr{ - pos: position{line: 189, col: 13, offset: 5624}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 189, col: 14, offset: 5625}, - run: (*parser).callonBlockAttributes16, - expr: &oneOrMoreExpr{ - pos: position{line: 189, col: 14, offset: 5625}, - expr: &charClassMatcher{ - pos: position{line: 189, col: 14, offset: 5625}, - val: "[^=\\r\\n�{]]", - chars: []rune{'=', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, + &labeledExpr{ + pos: position{line: 745, col: 5, offset: 24215}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment917, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonBlockAttributes19, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonBlockAttributes23, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment923, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, }, }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonBlockAttributes27, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonBlockAttributes29, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment927, expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonBlockAttributes32, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonBlockAttributes36, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonBlockAttributes43, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonBlockAttributes48, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonBlockAttributes50, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonBlockAttributes54, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonBlockAttributes58, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonBlockAttributes65, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonBlockAttributes70, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonBlockAttributes72, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonBlockAttributes76, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonBlockAttributes80, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, - &actionExpr{ - pos: position{line: 194, col: 16, offset: 5861}, - run: (*parser).callonBlockAttributes86, - expr: &litMatcher{ - pos: position{line: 194, col: 16, offset: 5861}, - val: "{", - ignoreCase: false, - want: "\"{\"", + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 741, col: 29, offset: 24128}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonDocumentFragment935, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment939, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment942, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, - &litMatcher{ - pos: position{line: 200, col: 5, offset: 6047}, - val: "]]", - ignoreCase: false, - want: "\"]]\"", + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 154, col: 35, offset: 4760}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonBlockAttributes90, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + }, + &actionExpr{ + pos: position{line: 753, col: 5, offset: 24368}, + run: (*parser).callonDocumentFragment951, + expr: &seqExpr{ + pos: position{line: 753, col: 5, offset: 24368}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 753, col: 5, offset: 24368}, + run: (*parser).callonDocumentFragment953, }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonBlockAttributes93, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonDocumentFragment954, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", ignoreCase: false, - want: "\"\\r\\n\"", + want: "\"```\"", }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment958, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 158, col: 12, offset: 4881}, - run: (*parser).callonBlockAttributes100, - expr: &seqExpr{ - pos: position{line: 158, col: 12, offset: 4881}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 158, col: 12, offset: 4881}, - label: "title", - expr: &actionExpr{ - pos: position{line: 205, col: 19, offset: 6166}, - run: (*parser).callonBlockAttributes103, - expr: &seqExpr{ - pos: position{line: 205, col: 19, offset: 6166}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 205, col: 19, offset: 6166}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - &labeledExpr{ - pos: position{line: 205, col: 23, offset: 6170}, - label: "title", - expr: &actionExpr{ - pos: position{line: 206, col: 5, offset: 6182}, - run: (*parser).callonBlockAttributes107, - expr: &seqExpr{ - pos: position{line: 206, col: 5, offset: 6182}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 206, col: 5, offset: 6182}, - expr: &charClassMatcher{ - pos: position{line: 206, col: 6, offset: 6183}, - val: "[. ]", - chars: []rune{'.', ' '}, - ignoreCase: false, - inverted: false, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment961, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, - &labeledExpr{ - pos: position{line: 207, col: 5, offset: 6295}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 207, col: 14, offset: 6304}, - expr: &choiceExpr{ - pos: position{line: 208, col: 9, offset: 6314}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 208, col: 10, offset: 6315}, - run: (*parser).callonBlockAttributes114, - expr: &oneOrMoreExpr{ - pos: position{line: 208, col: 10, offset: 6315}, - expr: &charClassMatcher{ - pos: position{line: 208, col: 10, offset: 6315}, - val: "[^\\r\\n�{]", - chars: []rune{'\r', '\n', '�', '{'}, - ignoreCase: false, - inverted: true, - }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 758, col: 5, offset: 24549}, + run: (*parser).callonDocumentFragment968, + }, + &labeledExpr{ + pos: position{line: 763, col: 5, offset: 24749}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 774, col: 5, offset: 25069}, + expr: &actionExpr{ + pos: position{line: 774, col: 6, offset: 25070}, + run: (*parser).callonDocumentFragment971, + expr: &seqExpr{ + pos: position{line: 774, col: 6, offset: 25070}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 774, col: 6, offset: 25070}, + expr: &choiceExpr{ + pos: position{line: 771, col: 28, offset: 25014}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonDocumentFragment975, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonBlockAttributes117, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonBlockAttributes121, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment979, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"�\"", + inverted: false, }, }, }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonBlockAttributes125, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonBlockAttributes127, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment982, expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonBlockAttributes130, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonBlockAttributes134, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonBlockAttributes141, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonBlockAttributes146, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonBlockAttributes148, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonBlockAttributes152, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonBlockAttributes156, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonBlockAttributes163, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonBlockAttributes168, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonBlockAttributes170, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonBlockAttributes174, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonBlockAttributes178, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, - &actionExpr{ - pos: position{line: 213, col: 12, offset: 6474}, - run: (*parser).callonBlockAttributes184, - expr: &litMatcher{ - pos: position{line: 213, col: 12, offset: 6474}, - val: "{", - ignoreCase: false, - want: "\"{\"", + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 775, col: 5, offset: 25099}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment992, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment998, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1002, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, @@ -7161,1085 +7980,997 @@ var g = &grammar{ }, }, }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 158, col: 35, offset: 4904}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonBlockAttributes187, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &choiceExpr{ + pos: position{line: 771, col: 28, offset: 25014}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonDocumentFragment1010, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1014, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1017, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonBlockAttributes190, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, + }, + &actionExpr{ + pos: position{line: 783, col: 5, offset: 25254}, + run: (*parser).callonDocumentFragment1026, + expr: &seqExpr{ + pos: position{line: 783, col: 5, offset: 25254}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 783, col: 5, offset: 25254}, + run: (*parser).callonDocumentFragment1028, + }, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonDocumentFragment1029, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", ignoreCase: false, - want: "\"\\r\\n\"", + want: "\"----\"", }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1033, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1036, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &andCodeExpr{ + pos: position{line: 788, col: 5, offset: 25437}, + run: (*parser).callonDocumentFragment1043, + }, + &labeledExpr{ + pos: position{line: 793, col: 5, offset: 25638}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 804, col: 5, offset: 25966}, + expr: &actionExpr{ + pos: position{line: 804, col: 6, offset: 25967}, + run: (*parser).callonDocumentFragment1046, + expr: &seqExpr{ + pos: position{line: 804, col: 6, offset: 25967}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 804, col: 6, offset: 25967}, + expr: &choiceExpr{ + pos: position{line: 801, col: 29, offset: 25909}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonDocumentFragment1050, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1054, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1057, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 805, col: 5, offset: 25997}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment1067, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment1073, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1077, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, }, }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 162, col: 12, offset: 4995}, - run: (*parser).callonBlockAttributes197, - expr: &seqExpr{ - pos: position{line: 162, col: 12, offset: 4995}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 162, col: 12, offset: 4995}, - label: "attributes", - expr: &ruleRefExpr{ - pos: position{line: 162, col: 24, offset: 5007}, - name: "LongHandAttributes", - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 162, col: 44, offset: 5027}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonBlockAttributes202, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &choiceExpr{ + pos: position{line: 801, col: 29, offset: 25909}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonDocumentFragment1085, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1089, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1092, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ + }, + &actionExpr{ + pos: position{line: 813, col: 5, offset: 26152}, + run: (*parser).callonDocumentFragment1101, + expr: &seqExpr{ + pos: position{line: 813, col: 5, offset: 26152}, + exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonBlockAttributes205, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonDocumentFragment1103, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", ignoreCase: false, - want: "\"\\n\"", + want: "\"....\"", }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1107, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1110, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "InlineAttributes", - pos: position{line: 170, col: 1, offset: 5212}, - expr: &actionExpr{ - pos: position{line: 171, col: 5, offset: 5236}, - run: (*parser).callonInlineAttributes1, - expr: &seqExpr{ - pos: position{line: 171, col: 5, offset: 5236}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 171, col: 5, offset: 5236}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - &labeledExpr{ - pos: position{line: 172, col: 5, offset: 5244}, - label: "attributes", - expr: &zeroOrMoreExpr{ - pos: position{line: 172, col: 16, offset: 5255}, - expr: &actionExpr{ - pos: position{line: 173, col: 9, offset: 5265}, - run: (*parser).callonInlineAttributes6, - expr: &seqExpr{ - pos: position{line: 174, col: 13, offset: 5279}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 174, col: 13, offset: 5279}, - expr: &litMatcher{ - pos: position{line: 174, col: 14, offset: 5280}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - &labeledExpr{ - pos: position{line: 175, col: 13, offset: 5312}, - label: "attribute", - expr: &choiceExpr{ - pos: position{line: 175, col: 24, offset: 5323}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 175, col: 24, offset: 5323}, - name: "PositionalAttribute", - }, - &ruleRefExpr{ - pos: position{line: 175, col: 46, offset: 5345}, - name: "NamedAttribute", - }, + &andCodeExpr{ + pos: position{line: 814, col: 5, offset: 26183}, + run: (*parser).callonDocumentFragment1117, }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 180, col: 5, offset: 5428}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - }, - }, - }, - { - name: "LongHandAttributes", - pos: position{line: 224, col: 1, offset: 6874}, - expr: &actionExpr{ - pos: position{line: 225, col: 5, offset: 6900}, - run: (*parser).callonLongHandAttributes1, - expr: &seqExpr{ - pos: position{line: 225, col: 5, offset: 6900}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 225, col: 5, offset: 6900}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - ¬Expr{ - pos: position{line: 225, col: 9, offset: 6904}, - expr: &litMatcher{ - pos: position{line: 225, col: 10, offset: 6905}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 227, col: 5, offset: 7074}, - label: "firstPositionalAttributes", - expr: &zeroOrOneExpr{ - pos: position{line: 227, col: 31, offset: 7100}, - expr: &actionExpr{ - pos: position{line: 243, col: 5, offset: 7755}, - run: (*parser).callonLongHandAttributes8, - expr: &seqExpr{ - pos: position{line: 243, col: 5, offset: 7755}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 243, col: 5, offset: 7755}, - label: "main", - expr: &zeroOrOneExpr{ - pos: position{line: 243, col: 10, offset: 7760}, - expr: &actionExpr{ - pos: position{line: 275, col: 23, offset: 8570}, - run: (*parser).callonLongHandAttributes12, - expr: &labeledExpr{ - pos: position{line: 275, col: 23, offset: 8570}, - label: "value", - expr: &choiceExpr{ - pos: position{line: 291, col: 5, offset: 9049}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - run: (*parser).callonLongHandAttributes15, - expr: &seqExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 346, col: 5, offset: 11010}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - ¬Expr{ - pos: position{line: 346, col: 9, offset: 11014}, - expr: &litMatcher{ - pos: position{line: 346, col: 10, offset: 11015}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &labeledExpr{ - pos: position{line: 347, col: 5, offset: 11094}, - label: "content", - expr: &actionExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - run: (*parser).callonLongHandAttributes21, - expr: &labeledExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 353, col: 14, offset: 11240}, - expr: &choiceExpr{ - pos: position{line: 354, col: 9, offset: 11250}, + &labeledExpr{ + pos: position{line: 818, col: 5, offset: 26335}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 834, col: 5, offset: 26860}, + expr: &actionExpr{ + pos: position{line: 834, col: 6, offset: 26861}, + run: (*parser).callonDocumentFragment1120, + expr: &seqExpr{ + pos: position{line: 834, col: 6, offset: 26861}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 834, col: 6, offset: 26861}, + expr: &choiceExpr{ + pos: position{line: 831, col: 29, offset: 26803}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonDocumentFragment1124, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1128, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes25, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1131, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes28, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes30, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes32, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes35, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes39, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes46, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes51, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes53, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes57, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes61, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes68, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes73, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes75, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes79, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes83, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 835, col: 5, offset: 26891}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment1141, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment1147, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1151, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &actionExpr{ - pos: position{line: 357, col: 12, offset: 11319}, - run: (*parser).callonLongHandAttributes89, - expr: &litMatcher{ - pos: position{line: 357, col: 12, offset: 11319}, - val: "\\'", + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"\\\\'\"", + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 819, col: 5, offset: 26369}, + run: (*parser).callonDocumentFragment1158, + }, + &zeroOrOneExpr{ + pos: position{line: 824, col: 5, offset: 26570}, + expr: &choiceExpr{ + pos: position{line: 831, col: 29, offset: 26803}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonDocumentFragment1161, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1165, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1168, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 843, col: 5, offset: 27060}, + run: (*parser).callonDocumentFragment1177, + expr: &seqExpr{ + pos: position{line: 843, col: 5, offset: 27060}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 843, col: 5, offset: 27060}, + label: "firstLine", + expr: &actionExpr{ + pos: position{line: 850, col: 5, offset: 27319}, + run: (*parser).callonDocumentFragment1180, + expr: &seqExpr{ + pos: position{line: 850, col: 5, offset: 27319}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 850, col: 5, offset: 27319}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment1183, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1189, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1192, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ &litMatcher{ - pos: position{line: 360, col: 13, offset: 11421}, - val: "'`", + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"'`\"", + want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 360, col: 20, offset: 11428}, - val: "`'", + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"`'\"", - }, - &actionExpr{ - pos: position{line: 360, col: 27, offset: 11435}, - run: (*parser).callonLongHandAttributes93, - expr: &litMatcher{ - pos: position{line: 360, col: 27, offset: 11435}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, + want: "\"\\r\\n\"", }, - &actionExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - run: (*parser).callonLongHandAttributes95, - expr: &oneOrMoreExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - expr: &charClassMatcher{ - pos: position{line: 363, col: 12, offset: 11595}, - val: "[^\\r\\n\\\\\\ ]", - chars: []rune{'\r', '\n', '\\', '\'', ' '}, - ignoreCase: false, - inverted: true, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, - &litMatcher{ - pos: position{line: 348, col: 5, offset: 11145}, - val: "'", + }, + }, + }, + &litMatcher{ + pos: position{line: 851, col: 5, offset: 27334}, + val: "> ", + ignoreCase: false, + want: "\"> \"", + }, + &labeledExpr{ + pos: position{line: 852, col: 5, offset: 27344}, + label: "content", + expr: &actionExpr{ + pos: position{line: 852, col: 14, offset: 27353}, + run: (*parser).callonDocumentFragment1201, + expr: &oneOrMoreExpr{ + pos: position{line: 852, col: 15, offset: 27354}, + expr: &charClassMatcher{ + pos: position{line: 852, col: 15, offset: 27354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - want: "\"'\"", + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1205, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 844, col: 5, offset: 27097}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 844, col: 16, offset: 27108}, + expr: &choiceExpr{ + pos: position{line: 844, col: 17, offset: 27109}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - run: (*parser).callonLongHandAttributes99, + pos: position{line: 850, col: 5, offset: 27319}, + run: (*parser).callonDocumentFragment1215, expr: &seqExpr{ - pos: position{line: 371, col: 5, offset: 11830}, + pos: position{line: 850, col: 5, offset: 27319}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 371, col: 5, offset: 11830}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, ¬Expr{ - pos: position{line: 371, col: 10, offset: 11835}, - expr: &litMatcher{ - pos: position{line: 371, col: 11, offset: 11836}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &labeledExpr{ - pos: position{line: 372, col: 5, offset: 11915}, - label: "content", + pos: position{line: 850, col: 5, offset: 27319}, expr: &actionExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - run: (*parser).callonLongHandAttributes105, - expr: &labeledExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 377, col: 14, offset: 12078}, - expr: &choiceExpr{ - pos: position{line: 378, col: 9, offset: 12088}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes109, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment1218, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes112, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1224, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes114, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes116, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1227, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes119, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes123, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes130, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes135, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes137, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes141, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes145, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes152, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes157, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes159, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes163, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes167, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - &actionExpr{ - pos: position{line: 381, col: 12, offset: 12157}, - run: (*parser).callonLongHandAttributes173, - expr: &litMatcher{ - pos: position{line: 381, col: 12, offset: 12157}, - val: "\\\"", - ignoreCase: false, - want: "\"\\\\\\\"\"", - }, - }, - &litMatcher{ - pos: position{line: 384, col: 13, offset: 12259}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - &litMatcher{ - pos: position{line: 384, col: 21, offset: 12267}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - &litMatcher{ - pos: position{line: 384, col: 29, offset: 12275}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &actionExpr{ - pos: position{line: 384, col: 35, offset: 12281}, - run: (*parser).callonLongHandAttributes178, - expr: &litMatcher{ - pos: position{line: 384, col: 35, offset: 12281}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - run: (*parser).callonLongHandAttributes180, - expr: &oneOrMoreExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - expr: &charClassMatcher{ - pos: position{line: 387, col: 12, offset: 12464}, - val: "[^\\r\\n\\\\\"` ]", - chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, - ignoreCase: false, - inverted: true, - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, @@ -8249,439 +8980,262 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 373, col: 5, offset: 11966}, - val: "\"", + pos: position{line: 851, col: 5, offset: 27334}, + val: "> ", ignoreCase: false, - want: "\"\\\"\"", + want: "\"> \"", }, - &andExpr{ - pos: position{line: 373, col: 10, offset: 11971}, - expr: ¬Expr{ - pos: position{line: 373, col: 12, offset: 11973}, - expr: &seqExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes188, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &labeledExpr{ + pos: position{line: 852, col: 5, offset: 27344}, + label: "content", + expr: &actionExpr{ + pos: position{line: 852, col: 14, offset: 27353}, + run: (*parser).callonDocumentFragment1236, + expr: &oneOrMoreExpr{ + pos: position{line: 852, col: 15, offset: 27354}, + expr: &charClassMatcher{ + pos: position{line: 852, col: 15, offset: 27354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1240, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, - }, - &litMatcher{ - pos: position{line: 373, col: 21, offset: 11982}, - val: "=", - ignoreCase: false, - want: "\"=\"", }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, &actionExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - run: (*parser).callonLongHandAttributes191, + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonDocumentFragment1247, expr: &seqExpr{ - pos: position{line: 293, col: 7, offset: 9123}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 293, col: 16, offset: 9132}, - expr: &choiceExpr{ - pos: position{line: 296, col: 9, offset: 9314}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - run: (*parser).callonLongHandAttributes196, - expr: &oneOrMoreExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - expr: &charClassMatcher{ - pos: position{line: 296, col: 10, offset: 9315}, - val: "[^,=.%# \\r\\n�{]]", - chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, - }, + pos: position{line: 1644, col: 5, offset: 54823}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonDocumentFragment1250, + expr: &oneOrMoreExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + expr: &charClassMatcher{ + pos: position{line: 1644, col: 14, offset: 54832}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonDocumentFragment1253, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1255, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonLongHandAttributes199, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonLongHandAttributes203, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes207, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes209, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes212, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes216, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes223, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes228, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes230, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes234, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes238, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes245, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes250, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes252, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes256, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes260, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 302, col: 12, offset: 9503}, - run: (*parser).callonLongHandAttributes266, - expr: &litMatcher{ - pos: position{line: 302, col: 12, offset: 9503}, - val: "{", - ignoreCase: false, - want: "\"{\"", + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, - &andExpr{ - pos: position{line: 305, col: 8, offset: 9586}, - expr: ¬Expr{ - pos: position{line: 305, col: 10, offset: 9588}, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 869, col: 5, offset: 27712}, + run: (*parser).callonDocumentFragment1262, + expr: &seqExpr{ + pos: position{line: 869, col: 5, offset: 27712}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 869, col: 5, offset: 27712}, + run: (*parser).callonDocumentFragment1264, + }, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonDocumentFragment1265, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1269, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1272, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 874, col: 5, offset: 27903}, + run: (*parser).callonDocumentFragment1279, + }, + &labeledExpr{ + pos: position{line: 879, col: 5, offset: 28108}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 890, col: 5, offset: 28464}, + expr: &actionExpr{ + pos: position{line: 890, col: 6, offset: 28465}, + run: (*parser).callonDocumentFragment1282, + expr: &seqExpr{ + pos: position{line: 890, col: 6, offset: 28465}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 890, col: 6, offset: 28465}, + expr: &choiceExpr{ + pos: position{line: 887, col: 33, offset: 28399}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonDocumentFragment1286, expr: &seqExpr{ - pos: position{line: 305, col: 12, offset: 9590}, + pos: position{line: 669, col: 30, offset: 21934}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, &zeroOrMoreExpr{ - pos: position{line: 305, col: 12, offset: 9590}, + pos: position{line: 669, col: 37, offset: 21941}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes272, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1290, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -8689,2225 +9243,1556 @@ var g = &grammar{ }, }, }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1293, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 891, col: 5, offset: 28499}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment1303, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment1309, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1313, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 880, col: 5, offset: 28146}, + expr: &choiceExpr{ + pos: position{line: 887, col: 33, offset: 28399}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonDocumentFragment1322, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1326, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1329, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, &litMatcher{ - pos: position{line: 305, col: 19, offset: 9597}, - val: "=", + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"=\"", + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 246, col: 5, offset: 7800}, - label: "extras", - expr: &zeroOrMoreExpr{ - pos: position{line: 246, col: 12, offset: 7807}, - expr: &actionExpr{ - pos: position{line: 247, col: 9, offset: 7818}, - run: (*parser).callonLongHandAttributes277, + }, + &actionExpr{ + pos: position{line: 899, col: 5, offset: 28650}, + run: (*parser).callonDocumentFragment1338, + expr: &seqExpr{ + pos: position{line: 899, col: 5, offset: 28650}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 899, col: 5, offset: 28650}, + run: (*parser).callonDocumentFragment1340, + }, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonDocumentFragment1341, expr: &seqExpr{ - pos: position{line: 247, col: 9, offset: 7818}, + pos: position{line: 673, col: 24, offset: 22050}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 247, col: 9, offset: 7818}, - expr: &litMatcher{ - pos: position{line: 247, col: 10, offset: 7819}, - val: ",", - ignoreCase: false, - want: "\",\"", + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1345, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - ¬Expr{ - pos: position{line: 247, col: 14, offset: 7823}, - expr: &litMatcher{ - pos: position{line: 247, col: 15, offset: 7824}, - val: "]", - ignoreCase: false, - want: "\"]\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1348, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, - &labeledExpr{ - pos: position{line: 248, col: 9, offset: 7836}, - label: "extra", - expr: &choiceExpr{ - pos: position{line: 249, col: 13, offset: 7856}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 271, col: 25, offset: 8466}, - run: (*parser).callonLongHandAttributes285, - expr: &seqExpr{ - pos: position{line: 271, col: 25, offset: 8466}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 271, col: 25, offset: 8466}, - val: "#", - ignoreCase: false, - want: "\"#\"", - }, - &labeledExpr{ - pos: position{line: 271, col: 29, offset: 8470}, - label: "id", - expr: &choiceExpr{ - pos: position{line: 291, col: 5, offset: 9049}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - run: (*parser).callonLongHandAttributes290, - expr: &seqExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 346, col: 5, offset: 11010}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - ¬Expr{ - pos: position{line: 346, col: 9, offset: 11014}, - expr: &litMatcher{ - pos: position{line: 346, col: 10, offset: 11015}, - val: "`", + }, + }, + }, + &andCodeExpr{ + pos: position{line: 904, col: 5, offset: 28829}, + run: (*parser).callonDocumentFragment1355, + }, + &labeledExpr{ + pos: position{line: 909, col: 5, offset: 29028}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 920, col: 4, offset: 29334}, + expr: &actionExpr{ + pos: position{line: 920, col: 5, offset: 29335}, + run: (*parser).callonDocumentFragment1358, + expr: &seqExpr{ + pos: position{line: 920, col: 5, offset: 29335}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 920, col: 5, offset: 29335}, + expr: &choiceExpr{ + pos: position{line: 917, col: 27, offset: 29282}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonDocumentFragment1362, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1366, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1369, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"`\"", + want: "\"\\n\"", }, - }, - &labeledExpr{ - pos: position{line: 347, col: 5, offset: 11094}, - label: "content", - expr: &actionExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - run: (*parser).callonLongHandAttributes296, - expr: &labeledExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 353, col: 14, offset: 11240}, - expr: &choiceExpr{ - pos: position{line: 354, col: 9, offset: 11250}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes300, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes303, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes305, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes307, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes310, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes314, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes321, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes326, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes328, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes332, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes336, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes343, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes348, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes350, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes354, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes358, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 357, col: 12, offset: 11319}, - run: (*parser).callonLongHandAttributes364, - expr: &litMatcher{ - pos: position{line: 357, col: 12, offset: 11319}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - }, - &litMatcher{ - pos: position{line: 360, col: 13, offset: 11421}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - &litMatcher{ - pos: position{line: 360, col: 20, offset: 11428}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - &actionExpr{ - pos: position{line: 360, col: 27, offset: 11435}, - run: (*parser).callonLongHandAttributes368, - expr: &litMatcher{ - pos: position{line: 360, col: 27, offset: 11435}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &actionExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - run: (*parser).callonLongHandAttributes370, - expr: &oneOrMoreExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - expr: &charClassMatcher{ - pos: position{line: 363, col: 12, offset: 11595}, - val: "[^\\r\\n\\\\\\ ]", - chars: []rune{'\r', '\n', '\\', '\'', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, - &litMatcher{ - pos: position{line: 348, col: 5, offset: 11145}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, - &actionExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - run: (*parser).callonLongHandAttributes374, - expr: &seqExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 371, col: 5, offset: 11830}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - ¬Expr{ - pos: position{line: 371, col: 10, offset: 11835}, - expr: &litMatcher{ - pos: position{line: 371, col: 11, offset: 11836}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &labeledExpr{ - pos: position{line: 372, col: 5, offset: 11915}, - label: "content", - expr: &actionExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - run: (*parser).callonLongHandAttributes380, - expr: &labeledExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 377, col: 14, offset: 12078}, - expr: &choiceExpr{ - pos: position{line: 378, col: 9, offset: 12088}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes384, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes387, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes389, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes391, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes394, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes398, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes405, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes410, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes412, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes416, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes420, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes427, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes432, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes434, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes438, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes442, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 381, col: 12, offset: 12157}, - run: (*parser).callonLongHandAttributes448, - expr: &litMatcher{ - pos: position{line: 381, col: 12, offset: 12157}, - val: "\\\"", - ignoreCase: false, - want: "\"\\\\\\\"\"", - }, - }, - &litMatcher{ - pos: position{line: 384, col: 13, offset: 12259}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - &litMatcher{ - pos: position{line: 384, col: 21, offset: 12267}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - &litMatcher{ - pos: position{line: 384, col: 29, offset: 12275}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &actionExpr{ - pos: position{line: 384, col: 35, offset: 12281}, - run: (*parser).callonLongHandAttributes453, - expr: &litMatcher{ - pos: position{line: 384, col: 35, offset: 12281}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - run: (*parser).callonLongHandAttributes455, - expr: &oneOrMoreExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - expr: &charClassMatcher{ - pos: position{line: 387, col: 12, offset: 12464}, - val: "[^\\r\\n\\\\\"` ]", - chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 921, col: 5, offset: 29363}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment1379, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment1385, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1389, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 917, col: 27, offset: 29282}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonDocumentFragment1397, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1401, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1404, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 929, col: 5, offset: 29518}, + run: (*parser).callonDocumentFragment1413, + expr: &seqExpr{ + pos: position{line: 929, col: 5, offset: 29518}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 929, col: 5, offset: 29518}, + run: (*parser).callonDocumentFragment1415, + }, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonDocumentFragment1416, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1420, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1423, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 934, col: 5, offset: 29701}, + run: (*parser).callonDocumentFragment1430, + }, + &labeledExpr{ + pos: position{line: 939, col: 5, offset: 29902}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 950, col: 4, offset: 30226}, + expr: &actionExpr{ + pos: position{line: 950, col: 5, offset: 30227}, + run: (*parser).callonDocumentFragment1433, + expr: &seqExpr{ + pos: position{line: 950, col: 5, offset: 30227}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 950, col: 5, offset: 30227}, + expr: &choiceExpr{ + pos: position{line: 947, col: 29, offset: 30169}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonDocumentFragment1437, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1441, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1444, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &litMatcher{ - pos: position{line: 373, col: 5, offset: 11966}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &andExpr{ - pos: position{line: 373, col: 10, offset: 11971}, - expr: ¬Expr{ - pos: position{line: 373, col: 12, offset: 11973}, - expr: &seqExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes463, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 373, col: 21, offset: 11982}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - run: (*parser).callonLongHandAttributes466, - expr: &seqExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 293, col: 16, offset: 9132}, - expr: &choiceExpr{ - pos: position{line: 296, col: 9, offset: 9314}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - run: (*parser).callonLongHandAttributes471, - expr: &oneOrMoreExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - expr: &charClassMatcher{ - pos: position{line: 296, col: 10, offset: 9315}, - val: "[^,=.%# \\r\\n�{]]", - chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonLongHandAttributes474, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonLongHandAttributes478, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes482, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes484, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes487, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes491, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes498, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes503, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes505, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes509, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes513, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes520, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes525, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes527, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes531, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes535, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 302, col: 12, offset: 9503}, - run: (*parser).callonLongHandAttributes541, - expr: &litMatcher{ - pos: position{line: 302, col: 12, offset: 9503}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &andExpr{ - pos: position{line: 305, col: 8, offset: 9586}, - expr: ¬Expr{ - pos: position{line: 305, col: 10, offset: 9588}, - expr: &seqExpr{ - pos: position{line: 305, col: 12, offset: 9590}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 305, col: 12, offset: 9590}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes547, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 305, col: 19, offset: 9597}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, - &actionExpr{ - pos: position{line: 285, col: 29, offset: 8892}, - run: (*parser).callonLongHandAttributes550, + }, + &labeledExpr{ + pos: position{line: 951, col: 5, offset: 30257}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonDocumentFragment1454, expr: &seqExpr{ - pos: position{line: 285, col: 29, offset: 8892}, + pos: position{line: 682, col: 5, offset: 22281}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 285, col: 29, offset: 8892}, - val: "%", - ignoreCase: false, - want: "\"%\"", + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, &labeledExpr{ - pos: position{line: 285, col: 33, offset: 8896}, - label: "option", - expr: &choiceExpr{ - pos: position{line: 291, col: 5, offset: 9049}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - run: (*parser).callonLongHandAttributes555, - expr: &seqExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 346, col: 5, offset: 11010}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - ¬Expr{ - pos: position{line: 346, col: 9, offset: 11014}, - expr: &litMatcher{ - pos: position{line: 346, col: 10, offset: 11015}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &labeledExpr{ - pos: position{line: 347, col: 5, offset: 11094}, - label: "content", - expr: &actionExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - run: (*parser).callonLongHandAttributes561, - expr: &labeledExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 353, col: 14, offset: 11240}, - expr: &choiceExpr{ - pos: position{line: 354, col: 9, offset: 11250}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes565, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes568, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes570, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes572, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes575, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes579, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes586, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes591, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes593, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes597, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes601, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes608, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes613, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes615, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes619, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes623, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 357, col: 12, offset: 11319}, - run: (*parser).callonLongHandAttributes629, - expr: &litMatcher{ - pos: position{line: 357, col: 12, offset: 11319}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - }, - &litMatcher{ - pos: position{line: 360, col: 13, offset: 11421}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - &litMatcher{ - pos: position{line: 360, col: 20, offset: 11428}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - &actionExpr{ - pos: position{line: 360, col: 27, offset: 11435}, - run: (*parser).callonLongHandAttributes633, - expr: &litMatcher{ - pos: position{line: 360, col: 27, offset: 11435}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &actionExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - run: (*parser).callonLongHandAttributes635, - expr: &oneOrMoreExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - expr: &charClassMatcher{ - pos: position{line: 363, col: 12, offset: 11595}, - val: "[^\\r\\n\\\\\\ ]", - chars: []rune{'\r', '\n', '\\', '\'', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 348, col: 5, offset: 11145}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonDocumentFragment1460, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1464, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - &actionExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - run: (*parser).callonLongHandAttributes639, - expr: &seqExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 371, col: 5, offset: 11830}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - ¬Expr{ - pos: position{line: 371, col: 10, offset: 11835}, - expr: &litMatcher{ - pos: position{line: 371, col: 11, offset: 11836}, - val: "`", + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 947, col: 29, offset: 30169}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonDocumentFragment1472, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1476, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1479, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2801, col: 18, offset: 92923}, + run: (*parser).callonDocumentFragment1488, + expr: &seqExpr{ + pos: position{line: 2801, col: 18, offset: 92923}, + exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 2802, col: 9, offset: 92933}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2802, col: 9, offset: 92933}, + val: "'''", + ignoreCase: false, + want: "\"'''\"", + }, + &litMatcher{ + pos: position{line: 2803, col: 11, offset: 92969}, + val: "***", + ignoreCase: false, + want: "\"***\"", + }, + &litMatcher{ + pos: position{line: 2803, col: 19, offset: 92977}, + val: "* * *", + ignoreCase: false, + want: "\"* * *\"", + }, + &litMatcher{ + pos: position{line: 2803, col: 29, offset: 92987}, + val: "---", + ignoreCase: false, + want: "\"---\"", + }, + &litMatcher{ + pos: position{line: 2803, col: 37, offset: 92995}, + val: "- - -", + ignoreCase: false, + want: "\"- - -\"", + }, + &litMatcher{ + pos: position{line: 2803, col: 47, offset: 93005}, + val: "___", + ignoreCase: false, + want: "\"___\"", + }, + &litMatcher{ + pos: position{line: 2803, col: 55, offset: 93013}, + val: "_ _ _", + ignoreCase: false, + want: "\"_ _ _\"", + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 2804, col: 11, offset: 93071}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1499, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1502, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1510, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &ruleRefExpr{ + pos: position{line: 179, col: 11, offset: 5520}, + name: "ListElements", + }, + &actionExpr{ + pos: position{line: 2699, col: 5, offset: 90054}, + run: (*parser).callonDocumentFragment1518, + expr: &seqExpr{ + pos: position{line: 2699, col: 5, offset: 90054}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2707, col: 19, offset: 90231}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2707, col: 26, offset: 90238}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1522, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1525, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2700, col: 5, offset: 90078}, + label: "header", + expr: &zeroOrOneExpr{ + pos: position{line: 2700, col: 12, offset: 90085}, + expr: &actionExpr{ + pos: position{line: 2715, col: 5, offset: 90398}, + run: (*parser).callonDocumentFragment1534, + expr: &seqExpr{ + pos: position{line: 2715, col: 5, offset: 90398}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2715, col: 5, offset: 90398}, + label: "cells", + expr: &oneOrMoreExpr{ + pos: position{line: 2715, col: 11, offset: 90404}, + expr: &actionExpr{ + pos: position{line: 2721, col: 5, offset: 90521}, + run: (*parser).callonDocumentFragment1538, + expr: &seqExpr{ + pos: position{line: 2721, col: 5, offset: 90521}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2721, col: 5, offset: 90521}, + val: "|", + ignoreCase: false, + want: "\"|\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2721, col: 9, offset: 90525}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1542, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2722, col: 5, offset: 90537}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 2722, col: 14, offset: 90546}, + expr: &actionExpr{ + pos: position{line: 2754, col: 5, offset: 91334}, + run: (*parser).callonDocumentFragment1546, + expr: &labeledExpr{ + pos: position{line: 2754, col: 5, offset: 91334}, + label: "content", + expr: &actionExpr{ + pos: position{line: 2754, col: 14, offset: 91343}, + run: (*parser).callonDocumentFragment1548, + expr: &oneOrMoreExpr{ + pos: position{line: 2754, col: 14, offset: 91343}, + expr: &charClassMatcher{ + pos: position{line: 2754, col: 14, offset: 91343}, + val: "[^\\r\\n|]", + chars: []rune{'\r', '\n', '|'}, ignoreCase: false, - want: "\"`\"", + inverted: true, }, }, - &labeledExpr{ - pos: position{line: 372, col: 5, offset: 11915}, - label: "content", - expr: &actionExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - run: (*parser).callonLongHandAttributes645, - expr: &labeledExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 377, col: 14, offset: 12078}, - expr: &choiceExpr{ - pos: position{line: 378, col: 9, offset: 12088}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes649, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes652, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes654, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes656, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes659, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes663, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes670, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes675, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes677, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes681, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes685, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes692, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes697, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes699, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes703, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes707, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1552, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + &oneOrMoreExpr{ + pos: position{line: 2716, col: 5, offset: 90426}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment1560, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1566, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1569, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2701, col: 5, offset: 90104}, + label: "rows", + expr: &zeroOrMoreExpr{ + pos: position{line: 2701, col: 10, offset: 90109}, + expr: &choiceExpr{ + pos: position{line: 2726, col: 13, offset: 90643}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2736, col: 5, offset: 90862}, + run: (*parser).callonDocumentFragment1579, + expr: &seqExpr{ + pos: position{line: 2736, col: 5, offset: 90862}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2736, col: 5, offset: 90862}, + expr: &choiceExpr{ + pos: position{line: 2711, col: 22, offset: 90311}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 2707, col: 19, offset: 90231}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2707, col: 19, offset: 90231}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2707, col: 26, offset: 90238}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1586, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1589, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2737, col: 5, offset: 90885}, + label: "cells", + expr: &oneOrMoreExpr{ + pos: position{line: 2737, col: 11, offset: 90891}, + expr: &actionExpr{ + pos: position{line: 2737, col: 12, offset: 90892}, + run: (*parser).callonDocumentFragment1600, + expr: &seqExpr{ + pos: position{line: 2737, col: 12, offset: 90892}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 2737, col: 12, offset: 90892}, + label: "cell", + expr: &actionExpr{ + pos: position{line: 2746, col: 5, offset: 91133}, + run: (*parser).callonDocumentFragment1603, + expr: &seqExpr{ + pos: position{line: 2746, col: 5, offset: 91133}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2746, col: 5, offset: 91133}, + expr: &choiceExpr{ + pos: position{line: 2711, col: 22, offset: 90311}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 2707, col: 19, offset: 90231}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2707, col: 19, offset: 90231}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2707, col: 26, offset: 90238}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1610, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1613, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, - &actionExpr{ - pos: position{line: 381, col: 12, offset: 12157}, - run: (*parser).callonLongHandAttributes713, - expr: &litMatcher{ - pos: position{line: 381, col: 12, offset: 12157}, - val: "\\\"", - ignoreCase: false, - want: "\"\\\\\\\"\"", + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2747, col: 5, offset: 91156}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment1623, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, - &litMatcher{ - pos: position{line: 384, col: 13, offset: 12259}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - &litMatcher{ - pos: position{line: 384, col: 21, offset: 12267}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - &litMatcher{ - pos: position{line: 384, col: 29, offset: 12275}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &actionExpr{ - pos: position{line: 384, col: 35, offset: 12281}, - run: (*parser).callonLongHandAttributes718, - expr: &litMatcher{ - pos: position{line: 384, col: 35, offset: 12281}, - val: "`", + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1629, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"`\"", + inverted: false, }, }, - &actionExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - run: (*parser).callonLongHandAttributes720, - expr: &oneOrMoreExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - expr: &charClassMatcher{ - pos: position{line: 387, col: 12, offset: 12464}, - val: "[^\\r\\n\\\\\"` ]", - chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, - ignoreCase: false, - inverted: true, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1632, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, @@ -10916,40 +10801,52 @@ var g = &grammar{ }, }, }, - }, - &litMatcher{ - pos: position{line: 373, col: 5, offset: 11966}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &andExpr{ - pos: position{line: 373, col: 10, offset: 11971}, - expr: ¬Expr{ - pos: position{line: 373, col: 12, offset: 11973}, - expr: &seqExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 373, col: 14, offset: 11975}, + &litMatcher{ + pos: position{line: 2748, col: 5, offset: 91171}, + val: "|", + ignoreCase: false, + want: "\"|\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2748, col: 9, offset: 91175}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1641, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2748, col: 16, offset: 91182}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 2748, col: 25, offset: 91191}, + expr: &actionExpr{ + pos: position{line: 2754, col: 5, offset: 91334}, + run: (*parser).callonDocumentFragment1645, + expr: &labeledExpr{ + pos: position{line: 2754, col: 5, offset: 91334}, + label: "content", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes728, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 2754, col: 14, offset: 91343}, + run: (*parser).callonDocumentFragment1647, + expr: &oneOrMoreExpr{ + pos: position{line: 2754, col: 14, offset: 91343}, + expr: &charClassMatcher{ + pos: position{line: 2754, col: 14, offset: 91343}, + val: "[^\\r\\n|]", + chars: []rune{'\r', '\n', '|'}, + ignoreCase: false, + inverted: true, + }, }, }, }, - &litMatcher{ - pos: position{line: 373, col: 21, offset: 11982}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, }, }, }, @@ -10957,1736 +10854,610 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - run: (*parser).callonLongHandAttributes731, - expr: &seqExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 293, col: 16, offset: 9132}, - expr: &choiceExpr{ - pos: position{line: 296, col: 9, offset: 9314}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - run: (*parser).callonLongHandAttributes736, - expr: &oneOrMoreExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - expr: &charClassMatcher{ - pos: position{line: 296, col: 10, offset: 9315}, - val: "[^,=.%# \\r\\n�{]]", - chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonLongHandAttributes739, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonLongHandAttributes743, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes747, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes749, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes752, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes756, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes763, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes768, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes770, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes774, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes778, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes785, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes790, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes792, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes796, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes800, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 302, col: 12, offset: 9503}, - run: (*parser).callonLongHandAttributes806, - expr: &litMatcher{ - pos: position{line: 302, col: 12, offset: 9503}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1651, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2740, col: 6, offset: 90954}, + alternatives: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 2740, col: 6, offset: 90954}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment1660, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1666, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1669, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - &andExpr{ - pos: position{line: 305, col: 8, offset: 9586}, - expr: ¬Expr{ - pos: position{line: 305, col: 10, offset: 9588}, - expr: &seqExpr{ - pos: position{line: 305, col: 12, offset: 9590}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 305, col: 12, offset: 9590}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes812, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &andExpr{ + pos: position{line: 2740, col: 19, offset: 90967}, + expr: &choiceExpr{ + pos: position{line: 2711, col: 22, offset: 90311}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 2707, col: 19, offset: 90231}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2707, col: 19, offset: 90231}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2707, col: 26, offset: 90238}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1681, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1684, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 305, col: 19, offset: 9597}, - val: "=", + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"=\"", + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 280, col: 30, offset: 8732}, - run: (*parser).callonLongHandAttributes815, - expr: &seqExpr{ - pos: position{line: 280, col: 30, offset: 8732}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 280, col: 30, offset: 8732}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - &labeledExpr{ - pos: position{line: 280, col: 34, offset: 8736}, - label: "role", - expr: &choiceExpr{ - pos: position{line: 291, col: 5, offset: 9049}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - run: (*parser).callonLongHandAttributes820, - expr: &seqExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 346, col: 5, offset: 11010}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - ¬Expr{ - pos: position{line: 346, col: 9, offset: 11014}, - expr: &litMatcher{ - pos: position{line: 346, col: 10, offset: 11015}, - val: "`", - ignoreCase: false, - want: "\"`\"", + }, + }, + &actionExpr{ + pos: position{line: 2729, col: 5, offset: 90710}, + run: (*parser).callonDocumentFragment1693, + expr: &seqExpr{ + pos: position{line: 2729, col: 5, offset: 90710}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2729, col: 5, offset: 90710}, + expr: &choiceExpr{ + pos: position{line: 2711, col: 22, offset: 90311}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 2707, col: 19, offset: 90231}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2707, col: 19, offset: 90231}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2707, col: 26, offset: 90238}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1700, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1703, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, - &labeledExpr{ - pos: position{line: 347, col: 5, offset: 11094}, - label: "content", - expr: &actionExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - run: (*parser).callonLongHandAttributes826, - expr: &labeledExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 353, col: 14, offset: 11240}, - expr: &choiceExpr{ - pos: position{line: 354, col: 9, offset: 11250}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes830, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes833, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes835, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes837, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes840, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes844, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes851, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes856, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes858, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes862, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes866, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes873, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes878, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes880, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes884, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes888, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2730, col: 5, offset: 90733}, + label: "cells", + expr: &oneOrMoreExpr{ + pos: position{line: 2730, col: 11, offset: 90739}, + expr: &actionExpr{ + pos: position{line: 2746, col: 5, offset: 91133}, + run: (*parser).callonDocumentFragment1714, + expr: &seqExpr{ + pos: position{line: 2746, col: 5, offset: 91133}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 2746, col: 5, offset: 91133}, + expr: &choiceExpr{ + pos: position{line: 2711, col: 22, offset: 90311}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 2707, col: 19, offset: 90231}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2707, col: 19, offset: 90231}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2707, col: 26, offset: 90238}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1721, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1724, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &actionExpr{ - pos: position{line: 357, col: 12, offset: 11319}, - run: (*parser).callonLongHandAttributes894, - expr: &litMatcher{ - pos: position{line: 357, col: 12, offset: 11319}, - val: "\\'", + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"\\\\'\"", + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2747, col: 5, offset: 91156}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment1734, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1740, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1743, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ &litMatcher{ - pos: position{line: 360, col: 13, offset: 11421}, - val: "'`", + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"'`\"", + want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 360, col: 20, offset: 11428}, - val: "`'", + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"`'\"", - }, - &actionExpr{ - pos: position{line: 360, col: 27, offset: 11435}, - run: (*parser).callonLongHandAttributes898, - expr: &litMatcher{ - pos: position{line: 360, col: 27, offset: 11435}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, + want: "\"\\r\\n\"", }, - &actionExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - run: (*parser).callonLongHandAttributes900, - expr: &oneOrMoreExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - expr: &charClassMatcher{ - pos: position{line: 363, col: 12, offset: 11595}, - val: "[^\\r\\n\\\\\\ ]", - chars: []rune{'\r', '\n', '\\', '\'', ' '}, - ignoreCase: false, - inverted: true, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, - &litMatcher{ - pos: position{line: 348, col: 5, offset: 11145}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, }, }, }, - &actionExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - run: (*parser).callonLongHandAttributes904, - expr: &seqExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 371, col: 5, offset: 11830}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", + &litMatcher{ + pos: position{line: 2748, col: 5, offset: 91171}, + val: "|", + ignoreCase: false, + want: "\"|\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2748, col: 9, offset: 91175}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1752, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 2748, col: 16, offset: 91182}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 2748, col: 25, offset: 91191}, + expr: &actionExpr{ + pos: position{line: 2754, col: 5, offset: 91334}, + run: (*parser).callonDocumentFragment1756, + expr: &labeledExpr{ + pos: position{line: 2754, col: 5, offset: 91334}, + label: "content", + expr: &actionExpr{ + pos: position{line: 2754, col: 14, offset: 91343}, + run: (*parser).callonDocumentFragment1758, + expr: &oneOrMoreExpr{ + pos: position{line: 2754, col: 14, offset: 91343}, + expr: &charClassMatcher{ + pos: position{line: 2754, col: 14, offset: 91343}, + val: "[^\\r\\n|]", + chars: []rune{'\r', '\n', '|'}, + ignoreCase: false, + inverted: true, + }, + }, + }, }, - ¬Expr{ - pos: position{line: 371, col: 10, offset: 11835}, - expr: &litMatcher{ - pos: position{line: 371, col: 11, offset: 11836}, - val: "`", + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1762, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 2731, col: 5, offset: 90760}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonDocumentFragment1770, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1776, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1779, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"`\"", - }, - }, - &labeledExpr{ - pos: position{line: 372, col: 5, offset: 11915}, - label: "content", - expr: &actionExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - run: (*parser).callonLongHandAttributes910, - expr: &labeledExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 377, col: 14, offset: 12078}, - expr: &choiceExpr{ - pos: position{line: 378, col: 9, offset: 12088}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonLongHandAttributes914, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes917, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes919, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes921, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes924, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes928, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes935, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes940, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes942, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes946, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes950, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes957, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes962, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes964, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes968, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes972, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 381, col: 12, offset: 12157}, - run: (*parser).callonLongHandAttributes978, - expr: &litMatcher{ - pos: position{line: 381, col: 12, offset: 12157}, - val: "\\\"", - ignoreCase: false, - want: "\"\\\\\\\"\"", - }, - }, - &litMatcher{ - pos: position{line: 384, col: 13, offset: 12259}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - &litMatcher{ - pos: position{line: 384, col: 21, offset: 12267}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - &litMatcher{ - pos: position{line: 384, col: 29, offset: 12275}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &actionExpr{ - pos: position{line: 384, col: 35, offset: 12281}, - run: (*parser).callonLongHandAttributes983, - expr: &litMatcher{ - pos: position{line: 384, col: 35, offset: 12281}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &actionExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - run: (*parser).callonLongHandAttributes985, - expr: &oneOrMoreExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - expr: &charClassMatcher{ - pos: position{line: 387, col: 12, offset: 12464}, - val: "[^\\r\\n\\\\\"` ]", - chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 373, col: 5, offset: 11966}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &andExpr{ - pos: position{line: 373, col: 10, offset: 11971}, - expr: ¬Expr{ - pos: position{line: 373, col: 12, offset: 11973}, - expr: &seqExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes993, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 373, col: 21, offset: 11982}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - run: (*parser).callonLongHandAttributes996, - expr: &seqExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 293, col: 7, offset: 9123}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 293, col: 16, offset: 9132}, - expr: &choiceExpr{ - pos: position{line: 296, col: 9, offset: 9314}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - run: (*parser).callonLongHandAttributes1001, - expr: &oneOrMoreExpr{ - pos: position{line: 296, col: 10, offset: 9315}, - expr: &charClassMatcher{ - pos: position{line: 296, col: 10, offset: 9315}, - val: "[^,=.%# \\r\\n�{]]", - chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonLongHandAttributes1004, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonLongHandAttributes1008, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes1012, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonLongHandAttributes1014, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonLongHandAttributes1017, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes1021, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes1028, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes1033, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes1035, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonLongHandAttributes1039, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes1043, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonLongHandAttributes1050, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonLongHandAttributes1055, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonLongHandAttributes1057, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonLongHandAttributes1061, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonLongHandAttributes1065, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 302, col: 12, offset: 9503}, - run: (*parser).callonLongHandAttributes1071, - expr: &litMatcher{ - pos: position{line: 302, col: 12, offset: 9503}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - &andExpr{ - pos: position{line: 305, col: 8, offset: 9586}, - expr: ¬Expr{ - pos: position{line: 305, col: 10, offset: 9588}, - expr: &seqExpr{ - pos: position{line: 305, col: 12, offset: 9590}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 305, col: 12, offset: 9590}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes1077, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 305, col: 19, offset: 9597}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, @@ -12700,703 +11471,521 @@ var g = &grammar{ }, }, }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 254, col: 8, offset: 8007}, - expr: &seqExpr{ - pos: position{line: 254, col: 9, offset: 8008}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 254, col: 9, offset: 8008}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 254, col: 13, offset: 8012}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLongHandAttributes1084, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &choiceExpr{ + pos: position{line: 2711, col: 22, offset: 90311}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 2707, col: 19, offset: 90231}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2707, col: 19, offset: 90231}, + val: "|===", + ignoreCase: false, + want: "\"|===\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 2707, col: 26, offset: 90238}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1790, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1793, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, }, }, - &andCodeExpr{ - pos: position{line: 255, col: 5, offset: 8026}, - run: (*parser).callonLongHandAttributes1086, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 228, col: 5, offset: 7133}, - label: "otherAttributes", - expr: &zeroOrMoreExpr{ - pos: position{line: 228, col: 21, offset: 7149}, - expr: &choiceExpr{ - pos: position{line: 228, col: 22, offset: 7150}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 228, col: 22, offset: 7150}, - name: "PositionalAttribute", - }, - &ruleRefExpr{ - pos: position{line: 228, col: 44, offset: 7172}, - name: "NamedAttribute", }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 229, col: 5, offset: 7193}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - }, - }, - }, - { - name: "PositionalAttribute", - pos: position{line: 309, col: 1, offset: 9674}, - expr: &choiceExpr{ - pos: position{line: 309, col: 24, offset: 9697}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 310, col: 5, offset: 9703}, - run: (*parser).callonPositionalAttribute2, - expr: &seqExpr{ - pos: position{line: 310, col: 5, offset: 9703}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 310, col: 5, offset: 9703}, - label: "value", - expr: &ruleRefExpr{ - pos: position{line: 310, col: 12, offset: 9710}, - name: "AttributeRawValue", - }, - }, - &choiceExpr{ - pos: position{line: 310, col: 32, offset: 9730}, - alternatives: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 310, col: 32, offset: 9730}, + &actionExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonDocumentFragment1802, expr: &seqExpr{ - pos: position{line: 310, col: 33, offset: 9731}, + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 310, col: 33, offset: 9731}, - val: ",", + pos: position{line: 2654, col: 31, offset: 88719}, + val: "//", ignoreCase: false, - want: "\",\"", + want: "\"//\"", }, - &zeroOrMoreExpr{ - pos: position{line: 310, col: 37, offset: 9735}, + ¬Expr{ + pos: position{line: 2654, col: 36, offset: 88724}, + expr: &litMatcher{ + pos: position{line: 2654, col: 37, offset: 88725}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + }, + &labeledExpr{ + pos: position{line: 2649, col: 49, offset: 88525}, + label: "content", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonPositionalAttribute11, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonDocumentFragment1808, + expr: &zeroOrMoreExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + expr: &charClassMatcher{ + pos: position{line: 2656, col: 29, offset: 88760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, }, }, }, - }, - }, - }, - &andExpr{ - pos: position{line: 310, col: 48, offset: 9746}, - expr: &litMatcher{ - pos: position{line: 310, col: 49, offset: 9747}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 315, col: 6, offset: 9984}, - run: (*parser).callonPositionalAttribute15, - expr: &seqExpr{ - pos: position{line: 315, col: 6, offset: 9984}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 315, col: 6, offset: 9984}, - label: "value", - expr: &seqExpr{ - pos: position{line: 315, col: 13, offset: 9991}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 315, col: 13, offset: 9991}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonPositionalAttribute20, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1812, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, - &choiceExpr{ - pos: position{line: 315, col: 21, offset: 9999}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 315, col: 22, offset: 10000}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 315, col: 22, offset: 10000}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 315, col: 26, offset: 10004}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonPositionalAttribute26, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + }, + &actionExpr{ + pos: position{line: 1632, col: 5, offset: 54447}, + run: (*parser).callonDocumentFragment1819, + expr: &seqExpr{ + pos: position{line: 1632, col: 5, offset: 54447}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1632, col: 5, offset: 54447}, + label: "kind", + expr: &choiceExpr{ + pos: position{line: 237, col: 19, offset: 7446}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 237, col: 19, offset: 7446}, + run: (*parser).callonDocumentFragment1823, + expr: &litMatcher{ + pos: position{line: 237, col: 19, offset: 7446}, + val: "TIP", ignoreCase: false, - inverted: false, + want: "\"TIP\"", + }, + }, + &actionExpr{ + pos: position{line: 239, col: 5, offset: 7484}, + run: (*parser).callonDocumentFragment1825, + expr: &litMatcher{ + pos: position{line: 239, col: 5, offset: 7484}, + val: "NOTE", + ignoreCase: false, + want: "\"NOTE\"", + }, + }, + &actionExpr{ + pos: position{line: 241, col: 5, offset: 7524}, + run: (*parser).callonDocumentFragment1827, + expr: &litMatcher{ + pos: position{line: 241, col: 5, offset: 7524}, + val: "IMPORTANT", + ignoreCase: false, + want: "\"IMPORTANT\"", + }, + }, + &actionExpr{ + pos: position{line: 243, col: 5, offset: 7574}, + run: (*parser).callonDocumentFragment1829, + expr: &litMatcher{ + pos: position{line: 243, col: 5, offset: 7574}, + val: "WARNING", + ignoreCase: false, + want: "\"WARNING\"", + }, + }, + &actionExpr{ + pos: position{line: 245, col: 5, offset: 7620}, + run: (*parser).callonDocumentFragment1831, + expr: &litMatcher{ + pos: position{line: 245, col: 5, offset: 7620}, + val: "CAUTION", + ignoreCase: false, + want: "\"CAUTION\"", }, }, }, }, }, - &andExpr{ - pos: position{line: 315, col: 36, offset: 10014}, - expr: &litMatcher{ - pos: position{line: 315, col: 37, offset: 10015}, - val: "]", - ignoreCase: false, - want: "\"]\"", + &litMatcher{ + pos: position{line: 1632, col: 27, offset: 54469}, + val: ": ", + ignoreCase: false, + want: "\": \"", + }, + &labeledExpr{ + pos: position{line: 1633, col: 5, offset: 54479}, + label: "firstLine", + expr: &actionExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonDocumentFragment1835, + expr: &seqExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonDocumentFragment1838, + expr: &oneOrMoreExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + expr: &charClassMatcher{ + pos: position{line: 1644, col: 14, offset: 54832}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonDocumentFragment1841, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1843, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, }, }, - }, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 316, col: 5, offset: 10025}, - run: (*parser).callonPositionalAttribute30, - }, - }, - }, - }, - }, - }, - }, - { - name: "NamedAttribute", - pos: position{line: 326, col: 1, offset: 10340}, - expr: &actionExpr{ - pos: position{line: 326, col: 19, offset: 10358}, - run: (*parser).callonNamedAttribute1, - expr: &seqExpr{ - pos: position{line: 326, col: 19, offset: 10358}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 326, col: 19, offset: 10358}, - label: "key", - expr: &actionExpr{ - pos: position{line: 331, col: 22, offset: 10669}, - run: (*parser).callonNamedAttribute4, - expr: &seqExpr{ - pos: position{line: 331, col: 22, offset: 10669}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 331, col: 22, offset: 10669}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonNamedAttribute7, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &oneOrMoreExpr{ - pos: position{line: 331, col: 29, offset: 10676}, - expr: &charClassMatcher{ - pos: position{line: 331, col: 29, offset: 10676}, - val: "[^\\r\\n=,]]", - chars: []rune{'\r', '\n', '=', ',', ']'}, - ignoreCase: false, - inverted: true, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 331, col: 42, offset: 10689}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonNamedAttribute12, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 326, col: 43, offset: 10382}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 326, col: 47, offset: 10386}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonNamedAttribute16, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 326, col: 54, offset: 10393}, - label: "value", - expr: &ruleRefExpr{ - pos: position{line: 326, col: 61, offset: 10400}, - name: "AttributeRawValue", - }, - }, - &zeroOrOneExpr{ - pos: position{line: 326, col: 80, offset: 10419}, - expr: &seqExpr{ - pos: position{line: 326, col: 81, offset: 10420}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 326, col: 81, offset: 10420}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 326, col: 85, offset: 10424}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonNamedAttribute24, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "AttributeRawValue", - pos: position{line: 335, col: 1, offset: 10759}, - expr: &actionExpr{ - pos: position{line: 336, col: 5, offset: 10785}, - run: (*parser).callonAttributeRawValue1, - expr: &seqExpr{ - pos: position{line: 336, col: 5, offset: 10785}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 336, col: 5, offset: 10785}, - label: "value", - expr: &choiceExpr{ - pos: position{line: 337, col: 9, offset: 10801}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - run: (*parser).callonAttributeRawValue5, - expr: &seqExpr{ - pos: position{line: 346, col: 5, offset: 11010}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 346, col: 5, offset: 11010}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, - ¬Expr{ - pos: position{line: 346, col: 9, offset: 11014}, - expr: &litMatcher{ - pos: position{line: 346, col: 10, offset: 11015}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &labeledExpr{ - pos: position{line: 347, col: 5, offset: 11094}, - label: "content", - expr: &actionExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - run: (*parser).callonAttributeRawValue11, - expr: &labeledExpr{ - pos: position{line: 353, col: 5, offset: 11231}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 353, col: 14, offset: 11240}, - expr: &choiceExpr{ - pos: position{line: 354, col: 9, offset: 11250}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonAttributeRawValue15, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonAttributeRawValue18, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonAttributeRawValue20, + &labeledExpr{ + pos: position{line: 1634, col: 5, offset: 54513}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 1634, col: 16, offset: 54524}, + expr: &actionExpr{ + pos: position{line: 1635, col: 9, offset: 54534}, + run: (*parser).callonDocumentFragment1852, + expr: &seqExpr{ + pos: position{line: 1635, col: 9, offset: 54534}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1635, col: 9, offset: 54534}, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 1372, col: 34, offset: 45844}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonAttributeRawValue22, + &litMatcher{ + pos: position{line: 1372, col: 34, offset: 45844}, + val: "+", + ignoreCase: false, + want: "\"+\"", }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", + &zeroOrMoreExpr{ + pos: position{line: 1372, col: 38, offset: 45848}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1858, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1860, expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonAttributeRawValue25, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonAttributeRawValue29, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonAttributeRawValue36, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonAttributeRawValue41, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonAttributeRawValue43, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1636, col: 9, offset: 54573}, + label: "line", + expr: &choiceExpr{ + pos: position{line: 1636, col: 15, offset: 54579}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonDocumentFragment1867, + expr: &seqExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2654, col: 31, offset: 88719}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + ¬Expr{ + pos: position{line: 2654, col: 36, offset: 88724}, + expr: &litMatcher{ + pos: position{line: 2654, col: 37, offset: 88725}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + }, + &labeledExpr{ + pos: position{line: 2649, col: 49, offset: 88525}, + label: "content", + expr: &actionExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonDocumentFragment1873, + expr: &zeroOrMoreExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + expr: &charClassMatcher{ + pos: position{line: 2656, col: 29, offset: 88760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - want: "\"}\"", + inverted: true, }, }, }, }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonAttributeRawValue47, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonAttributeRawValue51, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1877, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonAttributeRawValue58, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonAttributeRawValue63, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonAttributeRawValue65, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonAttributeRawValue69, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", + }, + }, + }, + &actionExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonDocumentFragment1884, + expr: &seqExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonDocumentFragment1887, + expr: &oneOrMoreExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + expr: &charClassMatcher{ + pos: position{line: 1644, col: 14, offset: 54832}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - want: "\"{\"", + inverted: true, }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonAttributeRawValue73, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonDocumentFragment1890, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1892, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, @@ -13407,476 +11996,498 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 357, col: 12, offset: 11319}, - run: (*parser).callonAttributeRawValue79, - expr: &litMatcher{ - pos: position{line: 357, col: 12, offset: 11319}, - val: "\\'", - ignoreCase: false, - want: "\"\\\\'\"", - }, - }, - &litMatcher{ - pos: position{line: 360, col: 13, offset: 11421}, - val: "'`", - ignoreCase: false, - want: "\"'`\"", - }, - &litMatcher{ - pos: position{line: 360, col: 20, offset: 11428}, - val: "`'", - ignoreCase: false, - want: "\"`'\"", - }, - &actionExpr{ - pos: position{line: 360, col: 27, offset: 11435}, - run: (*parser).callonAttributeRawValue83, - expr: &litMatcher{ - pos: position{line: 360, col: 27, offset: 11435}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - }, - &actionExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - run: (*parser).callonAttributeRawValue85, - expr: &oneOrMoreExpr{ - pos: position{line: 363, col: 12, offset: 11595}, - expr: &charClassMatcher{ - pos: position{line: 363, col: 12, offset: 11595}, - val: "[^\\r\\n\\\\\\ ]", - chars: []rune{'\r', '\n', '\\', '\'', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, }, }, }, }, }, }, - &litMatcher{ - pos: position{line: 348, col: 5, offset: 11145}, - val: "'", - ignoreCase: false, - want: "\"'\"", - }, }, }, - }, - &actionExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - run: (*parser).callonAttributeRawValue89, - expr: &seqExpr{ - pos: position{line: 371, col: 5, offset: 11830}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 371, col: 5, offset: 11830}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - ¬Expr{ - pos: position{line: 371, col: 10, offset: 11835}, - expr: &litMatcher{ - pos: position{line: 371, col: 11, offset: 11836}, - val: "`", - ignoreCase: false, - want: "\"`\"", - }, - }, - &labeledExpr{ - pos: position{line: 372, col: 5, offset: 11915}, - label: "content", - expr: &actionExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - run: (*parser).callonAttributeRawValue95, - expr: &labeledExpr{ - pos: position{line: 377, col: 5, offset: 12069}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 377, col: 14, offset: 12078}, - expr: &choiceExpr{ - pos: position{line: 378, col: 9, offset: 12088}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonAttributeRawValue99, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonAttributeRawValue102, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", + &actionExpr{ + pos: position{line: 1655, col: 5, offset: 55053}, + run: (*parser).callonDocumentFragment1899, + expr: &seqExpr{ + pos: position{line: 1655, col: 5, offset: 55053}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1655, col: 5, offset: 55053}, + label: "firstLine", + expr: &actionExpr{ + pos: position{line: 1662, col: 5, offset: 55338}, + run: (*parser).callonDocumentFragment1902, + expr: &seqExpr{ + pos: position{line: 1662, col: 5, offset: 55338}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1662, col: 5, offset: 55338}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1662, col: 14, offset: 55347}, + run: (*parser).callonDocumentFragment1905, + expr: &seqExpr{ + pos: position{line: 1662, col: 14, offset: 55347}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonDocumentFragment1907, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &oneOrMoreExpr{ + pos: position{line: 1662, col: 21, offset: 55354}, + expr: &charClassMatcher{ + pos: position{line: 1662, col: 21, offset: 55354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1665, col: 5, offset: 55411}, + run: (*parser).callonDocumentFragment1912, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1914, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1656, col: 5, offset: 55094}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 1656, col: 16, offset: 55105}, + expr: &choiceExpr{ + pos: position{line: 1656, col: 17, offset: 55106}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonDocumentFragment1924, + expr: &seqExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2654, col: 31, offset: 88719}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + ¬Expr{ + pos: position{line: 2654, col: 36, offset: 88724}, + expr: &litMatcher{ + pos: position{line: 2654, col: 37, offset: 88725}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + }, + &labeledExpr{ + pos: position{line: 2649, col: 49, offset: 88525}, + label: "content", + expr: &actionExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonDocumentFragment1930, + expr: &zeroOrMoreExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + expr: &charClassMatcher{ + pos: position{line: 2656, col: 29, offset: 88760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1934, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonDocumentFragment1941, + expr: &seqExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonDocumentFragment1944, + expr: &oneOrMoreExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + expr: &charClassMatcher{ + pos: position{line: 1644, col: 14, offset: 54832}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonDocumentFragment1947, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1949, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1084, col: 5, offset: 34742}, + run: (*parser).callonDocumentFragment1956, + expr: &seqExpr{ + pos: position{line: 1084, col: 5, offset: 34742}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 1084, col: 5, offset: 34742}, + run: (*parser).callonDocumentFragment1958, + }, + &labeledExpr{ + pos: position{line: 1087, col: 5, offset: 34800}, + label: "frontmatter", + expr: &actionExpr{ + pos: position{line: 1092, col: 20, offset: 34895}, + run: (*parser).callonDocumentFragment1960, + expr: &seqExpr{ + pos: position{line: 1092, col: 20, offset: 34895}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1096, col: 30, offset: 35067}, + val: "---", + ignoreCase: false, + want: "\"---\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1096, col: 36, offset: 35073}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1964, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, inverted: false, }, }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonAttributeRawValue104, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonAttributeRawValue106, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1967, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonAttributeRawValue109, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1092, col: 45, offset: 34920}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 1092, col: 53, offset: 34928}, + expr: &actionExpr{ + pos: position{line: 1098, col: 27, offset: 35111}, + run: (*parser).callonDocumentFragment1976, + expr: &zeroOrMoreExpr{ + pos: position{line: 1098, col: 27, offset: 35111}, + expr: &oneOrMoreExpr{ + pos: position{line: 1098, col: 28, offset: 35112}, + expr: &seqExpr{ + pos: position{line: 1098, col: 29, offset: 35113}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1098, col: 29, offset: 35113}, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 1096, col: 30, offset: 35067}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", + pos: position{line: 1096, col: 30, offset: 35067}, + val: "---", ignoreCase: false, - want: "\"{counter:\"", + want: "\"---\"", }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", + &zeroOrMoreExpr{ + pos: position{line: 1096, col: 36, offset: 35073}, expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonAttributeRawValue113, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1984, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonAttributeRawValue120, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment1987, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonAttributeRawValue125, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonAttributeRawValue127, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, + want: "\"\\n\"", }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonAttributeRawValue131, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonAttributeRawValue135, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - inverted: false, + want: "\"\\r\\n\"", }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonAttributeRawValue142, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonAttributeRawValue147, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonAttributeRawValue149, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, + want: "\"\\r\"", }, }, }, }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonAttributeRawValue153, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonAttributeRawValue157, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, + &anyMatcher{ + line: 1098, col: 55, offset: 35139, + }, }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 381, col: 12, offset: 12157}, - run: (*parser).callonAttributeRawValue163, - expr: &litMatcher{ - pos: position{line: 381, col: 12, offset: 12157}, - val: "\\\"", - ignoreCase: false, - want: "\"\\\\\\\"\"", - }, - }, - &litMatcher{ - pos: position{line: 384, col: 13, offset: 12259}, - val: "\"`", - ignoreCase: false, - want: "\"\\\"`\"", - }, - &litMatcher{ - pos: position{line: 384, col: 21, offset: 12267}, - val: "`\"", - ignoreCase: false, - want: "\"`\\\"\"", - }, - &litMatcher{ - pos: position{line: 384, col: 29, offset: 12275}, - val: "\\", - ignoreCase: false, - want: "\"\\\\\"", - }, - &actionExpr{ - pos: position{line: 384, col: 35, offset: 12281}, - run: (*parser).callonAttributeRawValue168, - expr: &litMatcher{ - pos: position{line: 384, col: 35, offset: 12281}, - val: "`", + }, + &litMatcher{ + pos: position{line: 1096, col: 30, offset: 35067}, + val: "---", + ignoreCase: false, + want: "\"---\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1096, col: 36, offset: 35073}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonDocumentFragment1997, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"`\"", + inverted: false, }, }, - &actionExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - run: (*parser).callonAttributeRawValue170, - expr: &oneOrMoreExpr{ - pos: position{line: 387, col: 12, offset: 12464}, - expr: &charClassMatcher{ - pos: position{line: 387, col: 12, offset: 12464}, - val: "[^\\r\\n\\\\\"` ]", - chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, - ignoreCase: false, - inverted: true, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonDocumentFragment2000, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, @@ -13886,162 +12497,63 @@ var g = &grammar{ }, }, }, - &litMatcher{ - pos: position{line: 373, col: 5, offset: 11966}, - val: "\"", - ignoreCase: false, - want: "\"\\\"\"", - }, - &andExpr{ - pos: position{line: 373, col: 10, offset: 11971}, - expr: ¬Expr{ - pos: position{line: 373, col: 12, offset: 11973}, - expr: &seqExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 373, col: 14, offset: 11975}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonAttributeRawValue178, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 373, col: 21, offset: 11982}, - val: "=", - ignoreCase: false, - want: "\"=\"", - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 339, col: 11, offset: 10883}, - name: "UnquotedAttributeRawValue", - }, - }, - }, - }, - &andExpr{ - pos: position{line: 341, col: 5, offset: 10920}, - expr: ¬Expr{ - pos: position{line: 341, col: 7, offset: 10922}, - expr: &seqExpr{ - pos: position{line: 341, col: 9, offset: 10924}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 341, col: 9, offset: 10924}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonAttributeRawValue186, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, }, }, - &litMatcher{ - pos: position{line: 341, col: 16, offset: 10931}, - val: "=", - ignoreCase: false, - want: "\"=\"", + &ruleRefExpr{ + pos: position{line: 185, col: 11, offset: 5666}, + name: "Paragraph", }, }, }, }, }, + &andCodeExpr{ + pos: position{line: 187, col: 5, offset: 5754}, + run: (*parser).callonDocumentFragment2008, + }, }, }, }, }, { - name: "UnquotedAttributeRawValue", - pos: position{line: 395, col: 1, offset: 12738}, + name: "DelimitedBlockElements", + pos: position{line: 215, col: 1, offset: 6635}, expr: &actionExpr{ - pos: position{line: 398, col: 5, offset: 12925}, - run: (*parser).callonUnquotedAttributeRawValue1, + pos: position{line: 216, col: 5, offset: 6666}, + run: (*parser).callonDelimitedBlockElements1, expr: &seqExpr{ - pos: position{line: 398, col: 5, offset: 12925}, + pos: position{line: 216, col: 5, offset: 6666}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 398, col: 5, offset: 12925}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonUnquotedAttributeRawValue4, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, &labeledExpr{ - pos: position{line: 399, col: 5, offset: 12994}, + pos: position{line: 216, col: 5, offset: 6666}, label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 399, col: 14, offset: 13003}, + expr: &zeroOrMoreExpr{ + pos: position{line: 216, col: 14, offset: 6675}, expr: &choiceExpr{ - pos: position{line: 400, col: 9, offset: 13013}, + pos: position{line: 217, col: 9, offset: 6685}, alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 400, col: 10, offset: 13014}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 400, col: 10, offset: 13014}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - &ruleRefExpr{ - pos: position{line: 400, col: 14, offset: 13018}, - name: "UnquotedAttributeRawValue", - }, - &litMatcher{ - pos: position{line: 400, col: 40, offset: 13044}, - val: "]", - ignoreCase: false, - want: "\"]\"", - }, - }, - }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonUnquotedAttributeRawValue13, + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonDelimitedBlockElements6, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonUnquotedAttributeRawValue17, + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonDelimitedBlockElements10, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -14051,7 +12563,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -14059,647 +12571,897 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonUnquotedAttributeRawValue21, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonUnquotedAttributeRawValue23, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonUnquotedAttributeRawValue26, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonUnquotedAttributeRawValue30, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + &ruleRefExpr{ + pos: position{line: 218, col: 11, offset: 6747}, + name: "DocumentFragment", + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + { + name: "BlockAttributes", + pos: position{line: 293, col: 1, offset: 9318}, + expr: &actionExpr{ + pos: position{line: 294, col: 5, offset: 9341}, + run: (*parser).callonBlockAttributes1, + expr: &labeledExpr{ + pos: position{line: 294, col: 5, offset: 9341}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 294, col: 16, offset: 9352}, + expr: &choiceExpr{ + pos: position{line: 296, col: 9, offset: 9419}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 296, col: 10, offset: 9420}, + run: (*parser).callonBlockAttributes5, + expr: &seqExpr{ + pos: position{line: 296, col: 10, offset: 9420}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 296, col: 10, offset: 9420}, + label: "anchor", + expr: &actionExpr{ + pos: position{line: 328, col: 4, offset: 10263}, + run: (*parser).callonBlockAttributes8, + expr: &seqExpr{ + pos: position{line: 328, col: 4, offset: 10263}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 328, col: 4, offset: 10263}, + val: "[[", + ignoreCase: false, + want: "\"[[\"", + }, + &labeledExpr{ + pos: position{line: 329, col: 5, offset: 10273}, + label: "id", + expr: &actionExpr{ + pos: position{line: 330, col: 9, offset: 10286}, + run: (*parser).callonBlockAttributes12, + expr: &labeledExpr{ + pos: position{line: 330, col: 9, offset: 10286}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 330, col: 18, offset: 10295}, + expr: &choiceExpr{ + pos: position{line: 331, col: 13, offset: 10309}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 331, col: 14, offset: 10310}, + run: (*parser).callonBlockAttributes16, + expr: &oneOrMoreExpr{ + pos: position{line: 331, col: 14, offset: 10310}, + expr: &charClassMatcher{ + pos: position{line: 331, col: 14, offset: 10310}, + val: "[^=\\r\\n�{]]", + chars: []rune{'=', '\r', '\n', '�', '{', ']'}, ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, + inverted: true, }, }, }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonUnquotedAttributeRawValue37, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonBlockAttributes19, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", ignoreCase: false, - want: "\":\"", + want: "\"�\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonUnquotedAttributeRawValue42, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonUnquotedAttributeRawValue44, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonBlockAttributes23, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonUnquotedAttributeRawValue48, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonUnquotedAttributeRawValue52, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", ignoreCase: false, - inverted: false, + want: "\"�\"", }, }, }, }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonUnquotedAttributeRawValue59, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonBlockAttributes27, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonBlockAttributes29, }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonUnquotedAttributeRawValue64, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonBlockAttributes32, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonBlockAttributes36, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonBlockAttributes43, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonBlockAttributes48, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonBlockAttributes50, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonUnquotedAttributeRawValue66, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonBlockAttributes54, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonBlockAttributes58, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonBlockAttributes65, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonBlockAttributes70, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonBlockAttributes72, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, - }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonBlockAttributes76, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonBlockAttributes80, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, }, }, }, }, }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonUnquotedAttributeRawValue70, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonUnquotedAttributeRawValue74, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + &actionExpr{ + pos: position{line: 336, col: 16, offset: 10546}, + run: (*parser).callonBlockAttributes86, + expr: &litMatcher{ + pos: position{line: 336, col: 16, offset: 10546}, + val: "{", + ignoreCase: false, + want: "\"{\"", }, }, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, }, + &litMatcher{ + pos: position{line: 342, col: 5, offset: 10732}, + val: "]]", + ignoreCase: false, + want: "\"]]\"", + }, }, }, }, }, - }, - &actionExpr{ - pos: position{line: 403, col: 12, offset: 13172}, - run: (*parser).callonUnquotedAttributeRawValue80, - expr: &oneOrMoreExpr{ - pos: position{line: 403, col: 12, offset: 13172}, - expr: &charClassMatcher{ - pos: position{line: 403, col: 12, offset: 13172}, - val: "[^=,�] ]", - chars: []rune{'=', ',', '�', ']', ' '}, - ignoreCase: false, - inverted: true, + &zeroOrMoreExpr{ + pos: position{line: 296, col: 35, offset: 9445}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonBlockAttributes90, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonUnquotedAttributeRawValue83, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "CrossReference", - pos: position{line: 456, col: 1, offset: 15131}, - expr: &choiceExpr{ - pos: position{line: 456, col: 19, offset: 15149}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, - run: (*parser).callonCrossReference2, - expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, - label: "id", - expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - run: (*parser).callonCrossReference6, - expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonCrossReference10, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, - expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, - run: (*parser).callonCrossReference16, - expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, - expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonBlockAttributes93, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - inverted: true, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonCrossReference21, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 300, col: 12, offset: 9566}, + run: (*parser).callonBlockAttributes100, + expr: &seqExpr{ + pos: position{line: 300, col: 12, offset: 9566}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 300, col: 12, offset: 9566}, + label: "title", + expr: &actionExpr{ + pos: position{line: 347, col: 19, offset: 10851}, + run: (*parser).callonBlockAttributes103, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 347, col: 19, offset: 10851}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonCrossReference23, + &litMatcher{ + pos: position{line: 347, col: 19, offset: 10851}, + val: ".", + ignoreCase: false, + want: "\".\"", }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonCrossReference26, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonCrossReference30, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + pos: position{line: 347, col: 23, offset: 10855}, + label: "title", + expr: &actionExpr{ + pos: position{line: 348, col: 5, offset: 10867}, + run: (*parser).callonBlockAttributes107, + expr: &seqExpr{ + pos: position{line: 348, col: 5, offset: 10867}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 348, col: 5, offset: 10867}, + expr: &charClassMatcher{ + pos: position{line: 348, col: 6, offset: 10868}, + val: "[. ]", + chars: []rune{'.', ' '}, + ignoreCase: false, + inverted: false, + }, + }, + &labeledExpr{ + pos: position{line: 349, col: 5, offset: 10980}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 349, col: 14, offset: 10989}, + expr: &choiceExpr{ + pos: position{line: 350, col: 9, offset: 10999}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 350, col: 10, offset: 11000}, + run: (*parser).callonBlockAttributes114, + expr: &oneOrMoreExpr{ + pos: position{line: 350, col: 10, offset: 11000}, + expr: &charClassMatcher{ + pos: position{line: 350, col: 10, offset: 11000}, + val: "[^\\r\\n�{]", + chars: []rune{'\r', '\n', '�', '{'}, ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, + inverted: true, }, }, }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonCrossReference37, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonBlockAttributes117, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", ignoreCase: false, - want: "\":\"", + want: "\"�\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonCrossReference42, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonCrossReference44, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonBlockAttributes121, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonCrossReference48, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonCrossReference52, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", ignoreCase: false, - inverted: false, + want: "\"�\"", }, }, }, }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonCrossReference59, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonBlockAttributes125, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonBlockAttributes127, }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonCrossReference64, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonBlockAttributes130, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonBlockAttributes134, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonBlockAttributes141, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonBlockAttributes146, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonBlockAttributes148, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonCrossReference66, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonBlockAttributes152, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonBlockAttributes156, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonBlockAttributes163, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonBlockAttributes168, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonBlockAttributes170, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonBlockAttributes174, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonBlockAttributes178, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, @@ -14709,69 +13471,18 @@ var g = &grammar{ }, }, }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonCrossReference70, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonCrossReference74, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + &actionExpr{ + pos: position{line: 355, col: 12, offset: 11159}, + run: (*parser).callonBlockAttributes184, + expr: &litMatcher{ + pos: position{line: 355, col: 12, offset: 11159}, + val: "{", + ignoreCase: false, + want: "\"{\"", }, }, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, @@ -14781,349 +13492,604 @@ var g = &grammar{ }, }, }, - &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, - run: (*parser).callonCrossReference80, - expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, - val: "{", + }, + &zeroOrMoreExpr{ + pos: position{line: 300, col: 35, offset: 9589}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonBlockAttributes187, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"{\"", + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonBlockAttributes190, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, - val: ">>", - ignoreCase: false, - want: "\">>\"", + &actionExpr{ + pos: position{line: 304, col: 12, offset: 9680}, + run: (*parser).callonBlockAttributes197, + expr: &seqExpr{ + pos: position{line: 304, col: 12, offset: 9680}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 304, col: 12, offset: 9680}, + label: "attributes", + expr: &ruleRefExpr{ + pos: position{line: 304, col: 24, offset: 9692}, + name: "LongHandAttributes", + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 304, col: 44, offset: 9712}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonBlockAttributes202, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonBlockAttributes205, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, }, }, }, }, - &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, - run: (*parser).callonCrossReference83, - expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, - label: "id", - expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - run: (*parser).callonCrossReference87, - expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, + }, + }, + }, + { + name: "InlineAttributes", + pos: position{line: 312, col: 1, offset: 9897}, + expr: &actionExpr{ + pos: position{line: 313, col: 5, offset: 9921}, + run: (*parser).callonInlineAttributes1, + expr: &seqExpr{ + pos: position{line: 313, col: 5, offset: 9921}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 313, col: 5, offset: 9921}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + &labeledExpr{ + pos: position{line: 314, col: 5, offset: 9929}, + label: "attributes", + expr: &zeroOrMoreExpr{ + pos: position{line: 314, col: 16, offset: 9940}, + expr: &actionExpr{ + pos: position{line: 315, col: 9, offset: 9950}, + run: (*parser).callonInlineAttributes6, + expr: &seqExpr{ + pos: position{line: 316, col: 13, offset: 9964}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 316, col: 13, offset: 9964}, + expr: &litMatcher{ + pos: position{line: 316, col: 14, offset: 9965}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + }, + &labeledExpr{ + pos: position{line: 317, col: 13, offset: 9997}, + label: "attribute", + expr: &choiceExpr{ + pos: position{line: 317, col: 24, offset: 10008}, + alternatives: []interface{}{ + &ruleRefExpr{ + pos: position{line: 317, col: 24, offset: 10008}, + name: "PositionalAttribute", + }, + &ruleRefExpr{ + pos: position{line: 317, col: 46, offset: 10030}, + name: "NamedAttribute", + }, + }, + }, }, }, }, }, - &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, }, }, - }, - &ruleRefExpr{ - pos: position{line: 456, col: 44, offset: 15174}, - name: "ExternalCrossReference", + &litMatcher{ + pos: position{line: 322, col: 5, offset: 10113}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, }, }, }, }, { - name: "ExternalCrossReference", - pos: position{line: 464, col: 1, offset: 15434}, + name: "LongHandAttributes", + pos: position{line: 366, col: 1, offset: 11559}, expr: &actionExpr{ - pos: position{line: 464, col: 27, offset: 15460}, - run: (*parser).callonExternalCrossReference1, + pos: position{line: 367, col: 5, offset: 11585}, + run: (*parser).callonLongHandAttributes1, expr: &seqExpr{ - pos: position{line: 464, col: 27, offset: 15460}, + pos: position{line: 367, col: 5, offset: 11585}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 464, col: 27, offset: 15460}, - val: "xref:", + pos: position{line: 367, col: 5, offset: 11585}, + val: "[", ignoreCase: false, - want: "\"xref:\"", + want: "\"[\"", + }, + ¬Expr{ + pos: position{line: 367, col: 9, offset: 11589}, + expr: &litMatcher{ + pos: position{line: 367, col: 10, offset: 11590}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, }, &labeledExpr{ - pos: position{line: 464, col: 35, offset: 15468}, - label: "url", - expr: &actionExpr{ - pos: position{line: 2821, col: 17, offset: 93840}, - run: (*parser).callonExternalCrossReference5, - expr: &labeledExpr{ - pos: position{line: 2821, col: 17, offset: 93840}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 2821, col: 22, offset: 93845}, - expr: &choiceExpr{ - pos: position{line: 2821, col: 23, offset: 93846}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, - run: (*parser).callonExternalCrossReference9, - expr: &labeledExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, - label: "elements", - expr: &oneOrMoreExpr{ - pos: position{line: 2833, col: 22, offset: 94259}, + pos: position{line: 369, col: 5, offset: 11759}, + label: "firstPositionalAttributes", + expr: &zeroOrOneExpr{ + pos: position{line: 369, col: 31, offset: 11785}, + expr: &actionExpr{ + pos: position{line: 385, col: 5, offset: 12440}, + run: (*parser).callonLongHandAttributes8, + expr: &seqExpr{ + pos: position{line: 385, col: 5, offset: 12440}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 385, col: 5, offset: 12440}, + label: "main", + expr: &zeroOrOneExpr{ + pos: position{line: 385, col: 10, offset: 12445}, + expr: &actionExpr{ + pos: position{line: 417, col: 23, offset: 13255}, + run: (*parser).callonLongHandAttributes12, + expr: &labeledExpr{ + pos: position{line: 417, col: 23, offset: 13255}, + label: "value", expr: &choiceExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 433, col: 5, offset: 13734}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, - run: (*parser).callonExternalCrossReference13, - expr: &oneOrMoreExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, - expr: &charClassMatcher{ - pos: position{line: 2834, col: 6, offset: 94266}, - val: "[^\\r\\n[]�&<>{ ]", - chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonExternalCrossReference16, + pos: position{line: 487, col: 5, offset: 15675}, + run: (*parser).callonLongHandAttributes15, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 487, col: 5, offset: 15675}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonExternalCrossReference18, + &litMatcher{ + pos: position{line: 487, col: 5, offset: 15675}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + ¬Expr{ + pos: position{line: 487, col: 9, offset: 15679}, + expr: &litMatcher{ + pos: position{line: 487, col: 10, offset: 15680}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonExternalCrossReference21, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonExternalCrossReference25, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + pos: position{line: 488, col: 5, offset: 15759}, + label: "content", + expr: &actionExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + run: (*parser).callonLongHandAttributes21, + expr: &labeledExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 494, col: 14, offset: 15905}, + expr: &choiceExpr{ + pos: position{line: 495, col: 9, offset: 15915}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes25, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonExternalCrossReference32, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonExternalCrossReference37, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonExternalCrossReference39, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes28, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes30, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes32, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes35, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes39, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes46, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes51, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes53, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", }, }, }, }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonExternalCrossReference43, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonExternalCrossReference47, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonExternalCrossReference54, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonExternalCrossReference59, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes57, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", ignoreCase: false, - inverted: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes61, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes68, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes73, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes75, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", }, }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonExternalCrossReference61, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes79, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes83, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, }, }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, @@ -15133,66 +14099,51 @@ var g = &grammar{ }, }, }, + &actionExpr{ + pos: position{line: 498, col: 12, offset: 15984}, + run: (*parser).callonLongHandAttributes89, + expr: &litMatcher{ + pos: position{line: 498, col: 12, offset: 15984}, + val: "\\'", + ignoreCase: false, + want: "\"\\\\'\"", + }, + }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", + pos: position{line: 501, col: 13, offset: 16086}, + val: "'`", ignoreCase: false, - want: "\"}\"", + want: "\"'`\"", }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonExternalCrossReference65, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", + pos: position{line: 501, col: 20, offset: 16093}, + val: "`'", ignoreCase: false, - want: "\"{\"", + want: "\"`'\"", }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonExternalCrossReference69, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &actionExpr{ + pos: position{line: 501, col: 27, offset: 16100}, + run: (*parser).callonLongHandAttributes93, + expr: &litMatcher{ + pos: position{line: 501, col: 27, offset: 16100}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", + &actionExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + run: (*parser).callonLongHandAttributes95, + expr: &oneOrMoreExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + expr: &charClassMatcher{ + pos: position{line: 504, col: 12, offset: 16260}, + val: "[^\\r\\n\\\\\\ ]", + chars: []rune{'\r', '\n', '\\', '\'', ' '}, + ignoreCase: false, + inverted: true, + }, + }, }, }, }, @@ -15200,406 +14151,298 @@ var g = &grammar{ }, }, }, + &litMatcher{ + pos: position{line: 489, col: 5, offset: 15810}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, }, }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, - run: (*parser).callonExternalCrossReference75, + pos: position{line: 512, col: 5, offset: 16495}, + run: (*parser).callonLongHandAttributes99, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 512, col: 5, offset: 16495}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, - run: (*parser).callonExternalCrossReference77, + &litMatcher{ + pos: position{line: 512, col: 5, offset: 16495}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + ¬Expr{ + pos: position{line: 512, col: 10, offset: 16500}, + expr: &litMatcher{ + pos: position{line: 512, col: 11, offset: 16501}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, - run: (*parser).callonExternalCrossReference80, + pos: position{line: 513, col: 5, offset: 16580}, + label: "content", + expr: &actionExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + run: (*parser).callonLongHandAttributes105, + expr: &labeledExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 518, col: 14, offset: 16743}, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 519, col: 9, offset: 16753}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, - run: (*parser).callonExternalCrossReference82, + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes109, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes112, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes114, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, - label: "id", - expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - run: (*parser).callonExternalCrossReference86, - expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExternalCrossReference90, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, - val: ",", - ignoreCase: false, - want: "\",\"", + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes116, }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, - expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, - run: (*parser).callonExternalCrossReference96, - expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, - expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes119, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonExternalCrossReference101, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonExternalCrossReference103, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes123, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonExternalCrossReference106, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonExternalCrossReference110, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes130, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes135, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, }, }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonExternalCrossReference117, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonExternalCrossReference122, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonExternalCrossReference124, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes137, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonExternalCrossReference128, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonExternalCrossReference132, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonExternalCrossReference139, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonExternalCrossReference144, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonExternalCrossReference146, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes141, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes145, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonExternalCrossReference150, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonExternalCrossReference154, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes152, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes157, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes159, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, @@ -15607,82 +14450,166 @@ var g = &grammar{ }, }, }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, - &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, - run: (*parser).callonExternalCrossReference160, - expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, - val: "{", - ignoreCase: false, - want: "\"{\"", + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes163, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes167, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, }, }, }, - &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, }, }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, - run: (*parser).callonExternalCrossReference163, - expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, - label: "id", - expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - run: (*parser).callonExternalCrossReference167, - expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, + pos: position{line: 522, col: 12, offset: 16822}, + run: (*parser).callonLongHandAttributes173, + expr: &litMatcher{ + pos: position{line: 522, col: 12, offset: 16822}, + val: "\\\"", + ignoreCase: false, + want: "\"\\\\\\\"\"", + }, + }, + &litMatcher{ + pos: position{line: 525, col: 13, offset: 16924}, + val: "\"`", + ignoreCase: false, + want: "\"\\\"`\"", + }, + &litMatcher{ + pos: position{line: 525, col: 21, offset: 16932}, + val: "`\"", + ignoreCase: false, + want: "\"`\\\"\"", + }, + &litMatcher{ + pos: position{line: 525, col: 29, offset: 16940}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &actionExpr{ + pos: position{line: 525, col: 35, offset: 16946}, + run: (*parser).callonLongHandAttributes178, + expr: &litMatcher{ + pos: position{line: 525, col: 35, offset: 16946}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &actionExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + run: (*parser).callonLongHandAttributes180, + expr: &oneOrMoreExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + expr: &charClassMatcher{ + pos: position{line: 528, col: 12, offset: 17129}, + val: "[^\\r\\n\\\\\"` ]", + chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, + ignoreCase: false, + inverted: true, }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, - run: (*parser).callonExternalCrossReference171, - expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 5, offset: 16631}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + &andExpr{ + pos: position{line: 514, col: 10, offset: 16636}, + expr: ¬Expr{ + pos: position{line: 514, col: 12, offset: 16638}, + expr: &seqExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes188, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 21, offset: 16647}, + val: "=", ignoreCase: false, - inverted: false, + want: "\"=\"", }, }, }, @@ -15692,1829 +14619,4612 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2840, col: 7, offset: 94490}, - run: (*parser).callonExternalCrossReference173, - expr: &litMatcher{ - pos: position{line: 2840, col: 7, offset: 94490}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonExternalCrossReference175, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonExternalCrossReference179, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 464, col: 54, offset: 15487}, - label: "inlineAttributes", - expr: &ruleRefExpr{ - pos: position{line: 464, col: 72, offset: 15505}, - name: "InlineAttributes", - }, - }, - }, - }, - }, - }, - { - name: "DelimitedBlock", - pos: position{line: 482, col: 1, offset: 16176}, - expr: &choiceExpr{ - pos: position{line: 483, col: 5, offset: 16198}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - run: (*parser).callonDelimitedBlock2, - expr: &seqExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 536, col: 5, offset: 17426}, - run: (*parser).callonDelimitedBlock4, - }, - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDelimitedBlock7, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock10, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 541, col: 5, offset: 17609}, - run: (*parser).callonDelimitedBlock17, - }, - &labeledExpr{ - pos: position{line: 546, col: 5, offset: 17810}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 557, col: 5, offset: 18134}, - expr: &actionExpr{ - pos: position{line: 557, col: 6, offset: 18135}, - run: (*parser).callonDelimitedBlock20, - expr: &seqExpr{ - pos: position{line: 557, col: 6, offset: 18135}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 557, col: 6, offset: 18135}, - expr: &choiceExpr{ - pos: position{line: 554, col: 29, offset: 18077}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDelimitedBlock27, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock30, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + pos: position{line: 435, col: 7, offset: 13808}, + run: (*parser).callonLongHandAttributes191, + expr: &seqExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 435, col: 16, offset: 13817}, + expr: &choiceExpr{ + pos: position{line: 438, col: 9, offset: 13999}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + run: (*parser).callonLongHandAttributes196, + expr: &oneOrMoreExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + expr: &charClassMatcher{ + pos: position{line: 438, col: 10, offset: 14000}, + val: "[^,=.%# \\r\\n�{]]", + chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonLongHandAttributes199, + expr: &seqExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + &labeledExpr{ + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonLongHandAttributes203, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes207, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes209, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes212, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes216, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes223, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes228, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes230, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes234, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes238, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes245, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes250, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes252, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes256, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes260, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 443, col: 12, offset: 14168}, + run: (*parser).callonLongHandAttributes266, + expr: &litMatcher{ + pos: position{line: 443, col: 12, offset: 14168}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &andExpr{ + pos: position{line: 446, col: 8, offset: 14251}, + expr: ¬Expr{ + pos: position{line: 446, col: 10, offset: 14253}, + expr: &seqExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes272, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 446, col: 19, offset: 14262}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, - &labeledExpr{ - pos: position{line: 558, col: 5, offset: 18165}, - label: "line", - expr: &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonDelimitedBlock40, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonDelimitedBlock46, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock50, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &zeroOrOneExpr{ - pos: position{line: 547, col: 5, offset: 17844}, - expr: &choiceExpr{ - pos: position{line: 554, col: 29, offset: 18077}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDelimitedBlock62, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock65, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + }, + }, + &labeledExpr{ + pos: position{line: 388, col: 5, offset: 12485}, + label: "extras", + expr: &zeroOrMoreExpr{ + pos: position{line: 388, col: 12, offset: 12492}, + expr: &actionExpr{ + pos: position{line: 389, col: 9, offset: 12503}, + run: (*parser).callonLongHandAttributes277, + expr: &seqExpr{ + pos: position{line: 389, col: 9, offset: 12503}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 389, col: 9, offset: 12503}, + expr: &litMatcher{ + pos: position{line: 389, col: 10, offset: 12504}, + val: ",", + ignoreCase: false, + want: "\",\"", }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 484, col: 7, offset: 16217}, - name: "ExampleBlock", - }, - &ruleRefExpr{ - pos: position{line: 485, col: 7, offset: 16236}, - name: "FencedBlock", - }, - &ruleRefExpr{ - pos: position{line: 486, col: 7, offset: 16254}, - name: "ListingBlock", - }, - &ruleRefExpr{ - pos: position{line: 487, col: 7, offset: 16273}, - name: "LiteralBlock", - }, - &actionExpr{ - pos: position{line: 686, col: 5, offset: 21956}, - run: (*parser).callonDelimitedBlock78, - expr: &seqExpr{ - pos: position{line: 686, col: 5, offset: 21956}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 686, col: 5, offset: 21956}, - label: "firstLine", - expr: &actionExpr{ - pos: position{line: 693, col: 5, offset: 22215}, - run: (*parser).callonDelimitedBlock81, - expr: &seqExpr{ - pos: position{line: 693, col: 5, offset: 22215}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 693, col: 5, offset: 22215}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDelimitedBlock84, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDelimitedBlock90, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock93, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 694, col: 5, offset: 22230}, - val: "> ", - ignoreCase: false, - want: "\"> \"", - }, - &labeledExpr{ - pos: position{line: 695, col: 5, offset: 22240}, - label: "content", - expr: &actionExpr{ - pos: position{line: 695, col: 14, offset: 22249}, - run: (*parser).callonDelimitedBlock102, - expr: &oneOrMoreExpr{ - pos: position{line: 695, col: 15, offset: 22250}, - expr: &charClassMatcher{ - pos: position{line: 695, col: 15, offset: 22250}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock106, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + pos: position{line: 389, col: 14, offset: 12508}, + expr: &litMatcher{ + pos: position{line: 389, col: 15, offset: 12509}, + val: "]", ignoreCase: false, - want: "\"\\r\"", + want: "\"]\"", }, }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 687, col: 5, offset: 21993}, - label: "otherLines", - expr: &zeroOrMoreExpr{ - pos: position{line: 687, col: 16, offset: 22004}, - expr: &choiceExpr{ - pos: position{line: 687, col: 17, offset: 22005}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 693, col: 5, offset: 22215}, - run: (*parser).callonDelimitedBlock116, - expr: &seqExpr{ - pos: position{line: 693, col: 5, offset: 22215}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 693, col: 5, offset: 22215}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonDelimitedBlock119, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonDelimitedBlock125, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock128, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &labeledExpr{ + pos: position{line: 390, col: 9, offset: 12521}, + label: "extra", + expr: &choiceExpr{ + pos: position{line: 391, col: 13, offset: 12541}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 413, col: 25, offset: 13151}, + run: (*parser).callonLongHandAttributes285, + expr: &seqExpr{ + pos: position{line: 413, col: 25, offset: 13151}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 413, col: 25, offset: 13151}, + val: "#", + ignoreCase: false, + want: "\"#\"", }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 694, col: 5, offset: 22230}, - val: "> ", - ignoreCase: false, - want: "\"> \"", - }, - &labeledExpr{ - pos: position{line: 695, col: 5, offset: 22240}, - label: "content", - expr: &actionExpr{ - pos: position{line: 695, col: 14, offset: 22249}, - run: (*parser).callonDelimitedBlock137, - expr: &oneOrMoreExpr{ - pos: position{line: 695, col: 15, offset: 22250}, - expr: &charClassMatcher{ - pos: position{line: 695, col: 15, offset: 22250}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock141, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - run: (*parser).callonDelimitedBlock148, - expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - run: (*parser).callonDelimitedBlock151, - expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, - run: (*parser).callonDelimitedBlock154, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonDelimitedBlock156, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 489, col: 7, offset: 16317}, - name: "PassthroughBlock", - }, - &ruleRefExpr{ - pos: position{line: 490, col: 7, offset: 16340}, - name: "QuoteBlock", - }, - &ruleRefExpr{ - pos: position{line: 491, col: 7, offset: 16357}, - name: "SidebarBlock", - }, - }, - }, - }, - { - name: "ExampleBlock", - pos: position{line: 565, col: 1, offset: 18298}, - expr: &actionExpr{ - pos: position{line: 566, col: 5, offset: 18318}, - run: (*parser).callonExampleBlock1, - expr: &seqExpr{ - pos: position{line: 566, col: 5, offset: 18318}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 566, col: 5, offset: 18318}, - run: (*parser).callonExampleBlock3, - }, - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExampleBlock6, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExampleBlock9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 571, col: 5, offset: 18501}, - run: (*parser).callonExampleBlock16, - }, - &labeledExpr{ - pos: position{line: 576, col: 5, offset: 18702}, - label: "content", - expr: &ruleRefExpr{ - pos: position{line: 576, col: 14, offset: 18711}, - name: "ExampleBlockContent", - }, - }, - &choiceExpr{ - pos: position{line: 584, col: 29, offset: 18968}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 510, col: 26, offset: 16808}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExampleBlock23, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExampleBlock26, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "ExampleBlockContent", - pos: position{line: 586, col: 1, offset: 18997}, - expr: &zeroOrMoreExpr{ - pos: position{line: 587, col: 4, offset: 19024}, - expr: &actionExpr{ - pos: position{line: 587, col: 5, offset: 19025}, - run: (*parser).callonExampleBlockContent2, - expr: &seqExpr{ - pos: position{line: 587, col: 5, offset: 19025}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 587, col: 5, offset: 19025}, - expr: &choiceExpr{ - pos: position{line: 584, col: 29, offset: 18968}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 510, col: 26, offset: 16808}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExampleBlockContent9, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExampleBlockContent12, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 588, col: 5, offset: 19055}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 588, col: 11, offset: 19061}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 588, col: 11, offset: 19061}, - name: "FileInclusion", - }, - &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonExampleBlockContent24, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonExampleBlockContent30, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExampleBlockContent34, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &labeledExpr{ + pos: position{line: 413, col: 29, offset: 13155}, + label: "id", + expr: &choiceExpr{ + pos: position{line: 433, col: 5, offset: 13734}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 487, col: 5, offset: 15675}, + run: (*parser).callonLongHandAttributes290, + expr: &seqExpr{ + pos: position{line: 487, col: 5, offset: 15675}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 487, col: 5, offset: 15675}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + ¬Expr{ + pos: position{line: 487, col: 9, offset: 15679}, + expr: &litMatcher{ + pos: position{line: 487, col: 10, offset: 15680}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &labeledExpr{ + pos: position{line: 488, col: 5, offset: 15759}, + label: "content", + expr: &actionExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + run: (*parser).callonLongHandAttributes296, + expr: &labeledExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 494, col: 14, offset: 15905}, + expr: &choiceExpr{ + pos: position{line: 495, col: 9, offset: 15915}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes300, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes303, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes305, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes307, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes310, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes314, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes321, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes326, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes328, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes332, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes336, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes343, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes348, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes350, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes354, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes358, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 498, col: 12, offset: 15984}, + run: (*parser).callonLongHandAttributes364, + expr: &litMatcher{ + pos: position{line: 498, col: 12, offset: 15984}, + val: "\\'", + ignoreCase: false, + want: "\"\\\\'\"", + }, + }, + &litMatcher{ + pos: position{line: 501, col: 13, offset: 16086}, + val: "'`", + ignoreCase: false, + want: "\"'`\"", + }, + &litMatcher{ + pos: position{line: 501, col: 20, offset: 16093}, + val: "`'", + ignoreCase: false, + want: "\"`'\"", + }, + &actionExpr{ + pos: position{line: 501, col: 27, offset: 16100}, + run: (*parser).callonLongHandAttributes368, + expr: &litMatcher{ + pos: position{line: 501, col: 27, offset: 16100}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + &actionExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + run: (*parser).callonLongHandAttributes370, + expr: &oneOrMoreExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + expr: &charClassMatcher{ + pos: position{line: 504, col: 12, offset: 16260}, + val: "[^\\r\\n\\\\\\ ]", + chars: []rune{'\r', '\n', '\\', '\'', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 489, col: 5, offset: 15810}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + run: (*parser).callonLongHandAttributes374, + expr: &seqExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 512, col: 5, offset: 16495}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + ¬Expr{ + pos: position{line: 512, col: 10, offset: 16500}, + expr: &litMatcher{ + pos: position{line: 512, col: 11, offset: 16501}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &labeledExpr{ + pos: position{line: 513, col: 5, offset: 16580}, + label: "content", + expr: &actionExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + run: (*parser).callonLongHandAttributes380, + expr: &labeledExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 518, col: 14, offset: 16743}, + expr: &choiceExpr{ + pos: position{line: 519, col: 9, offset: 16753}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes384, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes387, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes389, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes391, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes394, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes398, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes405, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes410, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes412, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes416, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes420, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes427, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes432, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes434, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes438, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes442, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 522, col: 12, offset: 16822}, + run: (*parser).callonLongHandAttributes448, + expr: &litMatcher{ + pos: position{line: 522, col: 12, offset: 16822}, + val: "\\\"", + ignoreCase: false, + want: "\"\\\\\\\"\"", + }, + }, + &litMatcher{ + pos: position{line: 525, col: 13, offset: 16924}, + val: "\"`", + ignoreCase: false, + want: "\"\\\"`\"", + }, + &litMatcher{ + pos: position{line: 525, col: 21, offset: 16932}, + val: "`\"", + ignoreCase: false, + want: "\"`\\\"\"", + }, + &litMatcher{ + pos: position{line: 525, col: 29, offset: 16940}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &actionExpr{ + pos: position{line: 525, col: 35, offset: 16946}, + run: (*parser).callonLongHandAttributes453, + expr: &litMatcher{ + pos: position{line: 525, col: 35, offset: 16946}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &actionExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + run: (*parser).callonLongHandAttributes455, + expr: &oneOrMoreExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + expr: &charClassMatcher{ + pos: position{line: 528, col: 12, offset: 17129}, + val: "[^\\r\\n\\\\\"` ]", + chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 5, offset: 16631}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + &andExpr{ + pos: position{line: 514, col: 10, offset: 16636}, + expr: ¬Expr{ + pos: position{line: 514, col: 12, offset: 16638}, + expr: &seqExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes463, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 21, offset: 16647}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + run: (*parser).callonLongHandAttributes466, + expr: &seqExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 435, col: 16, offset: 13817}, + expr: &choiceExpr{ + pos: position{line: 438, col: 9, offset: 13999}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + run: (*parser).callonLongHandAttributes471, + expr: &oneOrMoreExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + expr: &charClassMatcher{ + pos: position{line: 438, col: 10, offset: 14000}, + val: "[^,=.%# \\r\\n�{]]", + chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonLongHandAttributes474, + expr: &seqExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + &labeledExpr{ + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonLongHandAttributes478, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes482, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes484, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes487, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes491, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes498, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes503, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes505, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes509, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes513, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes520, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes525, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes527, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes531, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes535, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 443, col: 12, offset: 14168}, + run: (*parser).callonLongHandAttributes541, + expr: &litMatcher{ + pos: position{line: 443, col: 12, offset: 14168}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, + }, + }, + &andExpr{ + pos: position{line: 446, col: 8, offset: 14251}, + expr: ¬Expr{ + pos: position{line: 446, col: 10, offset: 14253}, + expr: &seqExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes547, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 446, col: 19, offset: 14262}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 427, col: 29, offset: 13577}, + run: (*parser).callonLongHandAttributes550, + expr: &seqExpr{ + pos: position{line: 427, col: 29, offset: 13577}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 427, col: 29, offset: 13577}, + val: "%", + ignoreCase: false, + want: "\"%\"", + }, + &labeledExpr{ + pos: position{line: 427, col: 33, offset: 13581}, + label: "option", + expr: &choiceExpr{ + pos: position{line: 433, col: 5, offset: 13734}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 487, col: 5, offset: 15675}, + run: (*parser).callonLongHandAttributes555, + expr: &seqExpr{ + pos: position{line: 487, col: 5, offset: 15675}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 487, col: 5, offset: 15675}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + ¬Expr{ + pos: position{line: 487, col: 9, offset: 15679}, + expr: &litMatcher{ + pos: position{line: 487, col: 10, offset: 15680}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &labeledExpr{ + pos: position{line: 488, col: 5, offset: 15759}, + label: "content", + expr: &actionExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + run: (*parser).callonLongHandAttributes561, + expr: &labeledExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 494, col: 14, offset: 15905}, + expr: &choiceExpr{ + pos: position{line: 495, col: 9, offset: 15915}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes565, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes568, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes570, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes572, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes575, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes579, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes586, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes591, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes593, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes597, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes601, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes608, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes613, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes615, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes619, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes623, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 498, col: 12, offset: 15984}, + run: (*parser).callonLongHandAttributes629, + expr: &litMatcher{ + pos: position{line: 498, col: 12, offset: 15984}, + val: "\\'", + ignoreCase: false, + want: "\"\\\\'\"", + }, + }, + &litMatcher{ + pos: position{line: 501, col: 13, offset: 16086}, + val: "'`", + ignoreCase: false, + want: "\"'`\"", + }, + &litMatcher{ + pos: position{line: 501, col: 20, offset: 16093}, + val: "`'", + ignoreCase: false, + want: "\"`'\"", + }, + &actionExpr{ + pos: position{line: 501, col: 27, offset: 16100}, + run: (*parser).callonLongHandAttributes633, + expr: &litMatcher{ + pos: position{line: 501, col: 27, offset: 16100}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + &actionExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + run: (*parser).callonLongHandAttributes635, + expr: &oneOrMoreExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + expr: &charClassMatcher{ + pos: position{line: 504, col: 12, offset: 16260}, + val: "[^\\r\\n\\\\\\ ]", + chars: []rune{'\r', '\n', '\\', '\'', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 489, col: 5, offset: 15810}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + run: (*parser).callonLongHandAttributes639, + expr: &seqExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 512, col: 5, offset: 16495}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + ¬Expr{ + pos: position{line: 512, col: 10, offset: 16500}, + expr: &litMatcher{ + pos: position{line: 512, col: 11, offset: 16501}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &labeledExpr{ + pos: position{line: 513, col: 5, offset: 16580}, + label: "content", + expr: &actionExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + run: (*parser).callonLongHandAttributes645, + expr: &labeledExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 518, col: 14, offset: 16743}, + expr: &choiceExpr{ + pos: position{line: 519, col: 9, offset: 16753}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes649, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes652, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes654, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes656, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes659, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes663, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes670, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes675, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes677, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes681, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes685, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes692, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes697, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes699, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes703, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes707, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 522, col: 12, offset: 16822}, + run: (*parser).callonLongHandAttributes713, + expr: &litMatcher{ + pos: position{line: 522, col: 12, offset: 16822}, + val: "\\\"", + ignoreCase: false, + want: "\"\\\\\\\"\"", + }, + }, + &litMatcher{ + pos: position{line: 525, col: 13, offset: 16924}, + val: "\"`", + ignoreCase: false, + want: "\"\\\"`\"", + }, + &litMatcher{ + pos: position{line: 525, col: 21, offset: 16932}, + val: "`\"", + ignoreCase: false, + want: "\"`\\\"\"", + }, + &litMatcher{ + pos: position{line: 525, col: 29, offset: 16940}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &actionExpr{ + pos: position{line: 525, col: 35, offset: 16946}, + run: (*parser).callonLongHandAttributes718, + expr: &litMatcher{ + pos: position{line: 525, col: 35, offset: 16946}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &actionExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + run: (*parser).callonLongHandAttributes720, + expr: &oneOrMoreExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + expr: &charClassMatcher{ + pos: position{line: 528, col: 12, offset: 17129}, + val: "[^\\r\\n\\\\\"` ]", + chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 5, offset: 16631}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + &andExpr{ + pos: position{line: 514, col: 10, offset: 16636}, + expr: ¬Expr{ + pos: position{line: 514, col: 12, offset: 16638}, + expr: &seqExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes728, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 21, offset: 16647}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + run: (*parser).callonLongHandAttributes731, + expr: &seqExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 435, col: 16, offset: 13817}, + expr: &choiceExpr{ + pos: position{line: 438, col: 9, offset: 13999}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + run: (*parser).callonLongHandAttributes736, + expr: &oneOrMoreExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + expr: &charClassMatcher{ + pos: position{line: 438, col: 10, offset: 14000}, + val: "[^,=.%# \\r\\n�{]]", + chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonLongHandAttributes739, + expr: &seqExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + &labeledExpr{ + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonLongHandAttributes743, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes747, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes749, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes752, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes756, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes763, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes768, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes770, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes774, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes778, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes785, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes790, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes792, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes796, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes800, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 443, col: 12, offset: 14168}, + run: (*parser).callonLongHandAttributes806, + expr: &litMatcher{ + pos: position{line: 443, col: 12, offset: 14168}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, + }, + }, + &andExpr{ + pos: position{line: 446, col: 8, offset: 14251}, + expr: ¬Expr{ + pos: position{line: 446, col: 10, offset: 14253}, + expr: &seqExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes812, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 446, col: 19, offset: 14262}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 422, col: 30, offset: 13417}, + run: (*parser).callonLongHandAttributes815, + expr: &seqExpr{ + pos: position{line: 422, col: 30, offset: 13417}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 422, col: 30, offset: 13417}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + &labeledExpr{ + pos: position{line: 422, col: 34, offset: 13421}, + label: "role", + expr: &choiceExpr{ + pos: position{line: 433, col: 5, offset: 13734}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 487, col: 5, offset: 15675}, + run: (*parser).callonLongHandAttributes820, + expr: &seqExpr{ + pos: position{line: 487, col: 5, offset: 15675}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 487, col: 5, offset: 15675}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + ¬Expr{ + pos: position{line: 487, col: 9, offset: 15679}, + expr: &litMatcher{ + pos: position{line: 487, col: 10, offset: 15680}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &labeledExpr{ + pos: position{line: 488, col: 5, offset: 15759}, + label: "content", + expr: &actionExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + run: (*parser).callonLongHandAttributes826, + expr: &labeledExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 494, col: 14, offset: 15905}, + expr: &choiceExpr{ + pos: position{line: 495, col: 9, offset: 15915}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes830, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes833, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes835, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes837, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes840, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes844, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes851, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes856, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes858, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes862, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes866, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes873, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes878, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes880, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes884, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes888, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 498, col: 12, offset: 15984}, + run: (*parser).callonLongHandAttributes894, + expr: &litMatcher{ + pos: position{line: 498, col: 12, offset: 15984}, + val: "\\'", + ignoreCase: false, + want: "\"\\\\'\"", + }, + }, + &litMatcher{ + pos: position{line: 501, col: 13, offset: 16086}, + val: "'`", + ignoreCase: false, + want: "\"'`\"", + }, + &litMatcher{ + pos: position{line: 501, col: 20, offset: 16093}, + val: "`'", + ignoreCase: false, + want: "\"`'\"", + }, + &actionExpr{ + pos: position{line: 501, col: 27, offset: 16100}, + run: (*parser).callonLongHandAttributes898, + expr: &litMatcher{ + pos: position{line: 501, col: 27, offset: 16100}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + &actionExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + run: (*parser).callonLongHandAttributes900, + expr: &oneOrMoreExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + expr: &charClassMatcher{ + pos: position{line: 504, col: 12, offset: 16260}, + val: "[^\\r\\n\\\\\\ ]", + chars: []rune{'\r', '\n', '\\', '\'', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 489, col: 5, offset: 15810}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + run: (*parser).callonLongHandAttributes904, + expr: &seqExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 512, col: 5, offset: 16495}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + ¬Expr{ + pos: position{line: 512, col: 10, offset: 16500}, + expr: &litMatcher{ + pos: position{line: 512, col: 11, offset: 16501}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &labeledExpr{ + pos: position{line: 513, col: 5, offset: 16580}, + label: "content", + expr: &actionExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + run: (*parser).callonLongHandAttributes910, + expr: &labeledExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 518, col: 14, offset: 16743}, + expr: &choiceExpr{ + pos: position{line: 519, col: 9, offset: 16753}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonLongHandAttributes914, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes917, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes919, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes921, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes924, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes928, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes935, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes940, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes942, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes946, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes950, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes957, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes962, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes964, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes968, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes972, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 522, col: 12, offset: 16822}, + run: (*parser).callonLongHandAttributes978, + expr: &litMatcher{ + pos: position{line: 522, col: 12, offset: 16822}, + val: "\\\"", + ignoreCase: false, + want: "\"\\\\\\\"\"", + }, + }, + &litMatcher{ + pos: position{line: 525, col: 13, offset: 16924}, + val: "\"`", + ignoreCase: false, + want: "\"\\\"`\"", + }, + &litMatcher{ + pos: position{line: 525, col: 21, offset: 16932}, + val: "`\"", + ignoreCase: false, + want: "\"`\\\"\"", + }, + &litMatcher{ + pos: position{line: 525, col: 29, offset: 16940}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &actionExpr{ + pos: position{line: 525, col: 35, offset: 16946}, + run: (*parser).callonLongHandAttributes983, + expr: &litMatcher{ + pos: position{line: 525, col: 35, offset: 16946}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &actionExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + run: (*parser).callonLongHandAttributes985, + expr: &oneOrMoreExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + expr: &charClassMatcher{ + pos: position{line: 528, col: 12, offset: 17129}, + val: "[^\\r\\n\\\\\"` ]", + chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 5, offset: 16631}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + &andExpr{ + pos: position{line: 514, col: 10, offset: 16636}, + expr: ¬Expr{ + pos: position{line: 514, col: 12, offset: 16638}, + expr: &seqExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes993, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 514, col: 21, offset: 16647}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + run: (*parser).callonLongHandAttributes996, + expr: &seqExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 435, col: 7, offset: 13808}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 435, col: 16, offset: 13817}, + expr: &choiceExpr{ + pos: position{line: 438, col: 9, offset: 13999}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + run: (*parser).callonLongHandAttributes1001, + expr: &oneOrMoreExpr{ + pos: position{line: 438, col: 10, offset: 14000}, + expr: &charClassMatcher{ + pos: position{line: 438, col: 10, offset: 14000}, + val: "[^,=.%# \\r\\n�{]]", + chars: []rune{',', '=', '.', '%', '#', ' ', '\r', '\n', '�', '{', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonLongHandAttributes1004, + expr: &seqExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + &labeledExpr{ + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonLongHandAttributes1008, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes1012, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonLongHandAttributes1014, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonLongHandAttributes1017, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes1021, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes1028, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes1033, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes1035, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonLongHandAttributes1039, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes1043, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonLongHandAttributes1050, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonLongHandAttributes1055, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonLongHandAttributes1057, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonLongHandAttributes1061, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonLongHandAttributes1065, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 443, col: 12, offset: 14168}, + run: (*parser).callonLongHandAttributes1071, + expr: &litMatcher{ + pos: position{line: 443, col: 12, offset: 14168}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, + }, + }, + &andExpr{ + pos: position{line: 446, col: 8, offset: 14251}, + expr: ¬Expr{ + pos: position{line: 446, col: 10, offset: 14253}, + expr: &seqExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 446, col: 12, offset: 14255}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes1077, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 446, col: 19, offset: 14262}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "FencedBlock", - pos: position{line: 595, col: 1, offset: 19203}, - expr: &actionExpr{ - pos: position{line: 596, col: 5, offset: 19222}, - run: (*parser).callonFencedBlock1, - expr: &seqExpr{ - pos: position{line: 596, col: 5, offset: 19222}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 596, col: 5, offset: 19222}, - run: (*parser).callonFencedBlock3, - }, - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonFencedBlock6, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonFencedBlock9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 601, col: 5, offset: 19403}, - run: (*parser).callonFencedBlock16, - }, - &labeledExpr{ - pos: position{line: 606, col: 5, offset: 19603}, - label: "content", - expr: &ruleRefExpr{ - pos: position{line: 606, col: 14, offset: 19612}, - name: "FencedBlockContent", - }, - }, - &choiceExpr{ - pos: position{line: 614, col: 28, offset: 19868}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 512, col: 25, offset: 16851}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonFencedBlock23, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonFencedBlock26, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "FencedBlockContent", - pos: position{line: 616, col: 1, offset: 19896}, - expr: &zeroOrMoreExpr{ - pos: position{line: 617, col: 5, offset: 19923}, - expr: &actionExpr{ - pos: position{line: 617, col: 6, offset: 19924}, - run: (*parser).callonFencedBlockContent2, - expr: &seqExpr{ - pos: position{line: 617, col: 6, offset: 19924}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 617, col: 6, offset: 19924}, - expr: &choiceExpr{ - pos: position{line: 614, col: 28, offset: 19868}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 512, col: 25, offset: 16851}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonFencedBlockContent9, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + &zeroOrOneExpr{ + pos: position{line: 396, col: 8, offset: 12692}, + expr: &seqExpr{ + pos: position{line: 396, col: 9, offset: 12693}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 396, col: 9, offset: 12693}, + val: ",", ignoreCase: false, - inverted: false, + want: "\",\"", }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonFencedBlockContent12, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + &zeroOrMoreExpr{ + pos: position{line: 396, col: 13, offset: 12697}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonLongHandAttributes1084, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &andCodeExpr{ + pos: position{line: 397, col: 5, offset: 12711}, + run: (*parser).callonLongHandAttributes1086, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 618, col: 5, offset: 19953}, - label: "line", + }, + &labeledExpr{ + pos: position{line: 370, col: 5, offset: 11818}, + label: "otherAttributes", + expr: &zeroOrMoreExpr{ + pos: position{line: 370, col: 21, offset: 11834}, expr: &choiceExpr{ - pos: position{line: 618, col: 11, offset: 19959}, + pos: position{line: 370, col: 22, offset: 11835}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 618, col: 11, offset: 19959}, - name: "FileInclusion", + pos: position{line: 370, col: 22, offset: 11835}, + name: "PositionalAttribute", }, - &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonFencedBlockContent24, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonFencedBlockContent30, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonFencedBlockContent34, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, + &ruleRefExpr{ + pos: position{line: 370, col: 44, offset: 11857}, + name: "NamedAttribute", }, }, }, }, }, + &litMatcher{ + pos: position{line: 371, col: 5, offset: 11878}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, }, }, }, }, { - name: "ListingBlock", - pos: position{line: 625, col: 1, offset: 20102}, - expr: &actionExpr{ - pos: position{line: 626, col: 5, offset: 20122}, - run: (*parser).callonListingBlock1, - expr: &seqExpr{ - pos: position{line: 626, col: 5, offset: 20122}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 626, col: 5, offset: 20122}, - run: (*parser).callonListingBlock3, - }, - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListingBlock6, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListingBlock9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + name: "PositionalAttribute", + pos: position{line: 450, col: 1, offset: 14339}, + expr: &choiceExpr{ + pos: position{line: 450, col: 24, offset: 14362}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 451, col: 5, offset: 14368}, + run: (*parser).callonPositionalAttribute2, + expr: &seqExpr{ + pos: position{line: 451, col: 5, offset: 14368}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 451, col: 5, offset: 14368}, + label: "value", + expr: &ruleRefExpr{ + pos: position{line: 451, col: 12, offset: 14375}, + name: "AttributeRawValue", }, }, - }, - }, - &andCodeExpr{ - pos: position{line: 631, col: 5, offset: 20305}, - run: (*parser).callonListingBlock16, - }, - &labeledExpr{ - pos: position{line: 636, col: 5, offset: 20506}, - label: "content", - expr: &ruleRefExpr{ - pos: position{line: 636, col: 14, offset: 20515}, - name: "ListingBlockContent", - }, - }, - &choiceExpr{ - pos: position{line: 644, col: 29, offset: 20777}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 514, col: 26, offset: 16894}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListingBlock23, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListingBlock26, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + &choiceExpr{ + pos: position{line: 451, col: 32, offset: 14395}, + alternatives: []interface{}{ + &zeroOrOneExpr{ + pos: position{line: 451, col: 32, offset: 14395}, + expr: &seqExpr{ + pos: position{line: 451, col: 33, offset: 14396}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 451, col: 33, offset: 14396}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 451, col: 37, offset: 14400}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonPositionalAttribute11, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"\\r\"", + inverted: false, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &andExpr{ + pos: position{line: 451, col: 48, offset: 14411}, + expr: &litMatcher{ + pos: position{line: 451, col: 49, offset: 14412}, + val: "]", + ignoreCase: false, + want: "\"]\"", + }, + }, }, }, }, }, }, - }, - }, - }, - { - name: "ListingBlockContent", - pos: position{line: 646, col: 1, offset: 20806}, - expr: &zeroOrMoreExpr{ - pos: position{line: 647, col: 5, offset: 20834}, - expr: &actionExpr{ - pos: position{line: 647, col: 6, offset: 20835}, - run: (*parser).callonListingBlockContent2, - expr: &seqExpr{ - pos: position{line: 647, col: 6, offset: 20835}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 647, col: 6, offset: 20835}, - expr: &choiceExpr{ - pos: position{line: 644, col: 29, offset: 20777}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 514, col: 26, offset: 16894}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListingBlockContent9, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListingBlockContent12, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + &actionExpr{ + pos: position{line: 456, col: 6, offset: 14649}, + run: (*parser).callonPositionalAttribute15, + expr: &seqExpr{ + pos: position{line: 456, col: 6, offset: 14649}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 456, col: 6, offset: 14649}, + label: "value", + expr: &seqExpr{ + pos: position{line: 456, col: 13, offset: 14656}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 456, col: 13, offset: 14656}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonPositionalAttribute20, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 648, col: 5, offset: 20865}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 648, col: 11, offset: 20871}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 648, col: 11, offset: 20871}, - name: "FileInclusion", - }, - &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonListingBlockContent24, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &choiceExpr{ + pos: position{line: 456, col: 21, offset: 14664}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 456, col: 22, offset: 14665}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 456, col: 22, offset: 14665}, + val: ",", + ignoreCase: false, + want: "\",\"", }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonListingBlockContent30, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, + &zeroOrMoreExpr{ + pos: position{line: 456, col: 26, offset: 14669}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonPositionalAttribute26, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListingBlockContent34, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + &andExpr{ + pos: position{line: 456, col: 36, offset: 14679}, + expr: &litMatcher{ + pos: position{line: 456, col: 37, offset: 14680}, + val: "]", + ignoreCase: false, + want: "\"]\"", }, }, }, @@ -17522,6 +19232,10 @@ var g = &grammar{ }, }, }, + &andCodeExpr{ + pos: position{line: 457, col: 5, offset: 14690}, + run: (*parser).callonPositionalAttribute30, + }, }, }, }, @@ -17529,27 +19243,78 @@ var g = &grammar{ }, }, { - name: "LiteralBlock", - pos: position{line: 655, col: 1, offset: 21014}, + name: "NamedAttribute", + pos: position{line: 467, col: 1, offset: 15005}, expr: &actionExpr{ - pos: position{line: 656, col: 5, offset: 21034}, - run: (*parser).callonLiteralBlock1, + pos: position{line: 467, col: 19, offset: 15023}, + run: (*parser).callonNamedAttribute1, expr: &seqExpr{ - pos: position{line: 656, col: 5, offset: 21034}, + pos: position{line: 467, col: 19, offset: 15023}, exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 467, col: 19, offset: 15023}, + label: "key", + expr: &actionExpr{ + pos: position{line: 472, col: 22, offset: 15334}, + run: (*parser).callonNamedAttribute4, + expr: &seqExpr{ + pos: position{line: 472, col: 22, offset: 15334}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 472, col: 22, offset: 15334}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonNamedAttribute7, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &oneOrMoreExpr{ + pos: position{line: 472, col: 29, offset: 15341}, + expr: &charClassMatcher{ + pos: position{line: 472, col: 29, offset: 15341}, + val: "[^\\r\\n=,]]", + chars: []rune{'\r', '\n', '=', ',', ']'}, + ignoreCase: false, + inverted: true, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 472, col: 42, offset: 15354}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonNamedAttribute12, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", + pos: position{line: 467, col: 43, offset: 15047}, + val: "=", ignoreCase: false, - want: "\"....\"", + want: "\"=\"", }, &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, + pos: position{line: 467, col: 47, offset: 15051}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLiteralBlock5, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonNamedAttribute16, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -17557,134 +19322,39 @@ var g = &grammar{ }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonLiteralBlock8, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 657, col: 5, offset: 21065}, - run: (*parser).callonLiteralBlock15, - }, &labeledExpr{ - pos: position{line: 661, col: 5, offset: 21217}, - label: "content", + pos: position{line: 467, col: 54, offset: 15058}, + label: "value", expr: &ruleRefExpr{ - pos: position{line: 661, col: 14, offset: 21226}, - name: "LiteralBlockContent", + pos: position{line: 467, col: 61, offset: 15065}, + name: "AttributeRawValue", }, }, - &andCodeExpr{ - pos: position{line: 662, col: 5, offset: 21251}, - run: (*parser).callonLiteralBlock18, - }, &zeroOrOneExpr{ - pos: position{line: 667, col: 5, offset: 21452}, - expr: &choiceExpr{ - pos: position{line: 674, col: 29, offset: 21685}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 516, col: 26, offset: 16938}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", + pos: position{line: 467, col: 80, offset: 15084}, + expr: &seqExpr{ + pos: position{line: 467, col: 81, offset: 15085}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 467, col: 81, offset: 15085}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 467, col: 85, offset: 15089}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonNamedAttribute24, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLiteralBlock24, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonLiteralBlock27, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, + inverted: false, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, @@ -17693,596 +19363,933 @@ var g = &grammar{ }, }, { - name: "LiteralBlockContent", - pos: position{line: 676, col: 1, offset: 21714}, - expr: &zeroOrMoreExpr{ - pos: position{line: 677, col: 5, offset: 21742}, - expr: &actionExpr{ - pos: position{line: 677, col: 6, offset: 21743}, - run: (*parser).callonLiteralBlockContent2, - expr: &seqExpr{ - pos: position{line: 677, col: 6, offset: 21743}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 677, col: 6, offset: 21743}, - expr: &choiceExpr{ - pos: position{line: 674, col: 29, offset: 21685}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 516, col: 26, offset: 16938}, + name: "AttributeRawValue", + pos: position{line: 476, col: 1, offset: 15424}, + expr: &actionExpr{ + pos: position{line: 477, col: 5, offset: 15450}, + run: (*parser).callonAttributeRawValue1, + expr: &seqExpr{ + pos: position{line: 477, col: 5, offset: 15450}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 477, col: 5, offset: 15450}, + label: "value", + expr: &choiceExpr{ + pos: position{line: 478, col: 9, offset: 15466}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 487, col: 5, offset: 15675}, + run: (*parser).callonAttributeRawValue5, + expr: &seqExpr{ + pos: position{line: 487, col: 5, offset: 15675}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", + pos: position{line: 487, col: 5, offset: 15675}, + val: "'", ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonLiteralBlockContent9, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + want: "\"'\"", }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonLiteralBlockContent12, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + ¬Expr{ + pos: position{line: 487, col: 9, offset: 15679}, + expr: &litMatcher{ + pos: position{line: 487, col: 10, offset: 15680}, + val: "`", + ignoreCase: false, + want: "\"`\"", }, }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 678, col: 5, offset: 21773}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 678, col: 11, offset: 21779}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 678, col: 11, offset: 21779}, - name: "FileInclusion", - }, - &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonLiteralBlockContent24, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonLiteralBlockContent30, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonLiteralBlockContent34, + &labeledExpr{ + pos: position{line: 488, col: 5, offset: 15759}, + label: "content", + expr: &actionExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + run: (*parser).callonAttributeRawValue11, + expr: &labeledExpr{ + pos: position{line: 494, col: 5, offset: 15896}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 494, col: 14, offset: 15905}, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 495, col: 9, offset: 15915}, alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonAttributeRawValue15, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonAttributeRawValue18, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonAttributeRawValue20, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonAttributeRawValue22, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonAttributeRawValue25, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonAttributeRawValue29, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonAttributeRawValue36, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonAttributeRawValue41, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonAttributeRawValue43, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonAttributeRawValue47, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonAttributeRawValue51, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonAttributeRawValue58, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonAttributeRawValue63, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonAttributeRawValue65, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonAttributeRawValue69, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonAttributeRawValue73, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 498, col: 12, offset: 15984}, + run: (*parser).callonAttributeRawValue79, + expr: &litMatcher{ + pos: position{line: 498, col: 12, offset: 15984}, + val: "\\'", + ignoreCase: false, + want: "\"\\\\'\"", + }, }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", + pos: position{line: 501, col: 13, offset: 16086}, + val: "'`", ignoreCase: false, - want: "\"\\r\\n\"", + want: "\"'`\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + pos: position{line: 501, col: 20, offset: 16093}, + val: "`'", ignoreCase: false, - want: "\"\\r\"", + want: "\"`'\"", + }, + &actionExpr{ + pos: position{line: 501, col: 27, offset: 16100}, + run: (*parser).callonAttributeRawValue83, + expr: &litMatcher{ + pos: position{line: 501, col: 27, offset: 16100}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + }, + &actionExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + run: (*parser).callonAttributeRawValue85, + expr: &oneOrMoreExpr{ + pos: position{line: 504, col: 12, offset: 16260}, + expr: &charClassMatcher{ + pos: position{line: 504, col: 12, offset: 16260}, + val: "[^\\r\\n\\\\\\ ]", + chars: []rune{'\r', '\n', '\\', '\'', ' '}, + ignoreCase: false, + inverted: true, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, + &litMatcher{ + pos: position{line: 489, col: 5, offset: 15810}, + val: "'", + ignoreCase: false, + want: "\"'\"", + }, }, }, }, - }, - }, - }, - }, - }, - }, - }, - { - name: "MarkdownQuoteAttribution", - pos: position{line: 701, col: 1, offset: 22368}, - expr: &actionExpr{ - pos: position{line: 702, col: 5, offset: 22401}, - run: (*parser).callonMarkdownQuoteAttribution1, - expr: &seqExpr{ - pos: position{line: 702, col: 5, offset: 22401}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 702, col: 5, offset: 22401}, - val: "-- ", - ignoreCase: false, - want: "\"-- \"", - }, - &labeledExpr{ - pos: position{line: 702, col: 11, offset: 22407}, - label: "author", - expr: &actionExpr{ - pos: position{line: 702, col: 19, offset: 22415}, - run: (*parser).callonMarkdownQuoteAttribution5, - expr: &oneOrMoreExpr{ - pos: position{line: 702, col: 20, offset: 22416}, - expr: &charClassMatcher{ - pos: position{line: 702, col: 20, offset: 22416}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonMarkdownQuoteAttribution9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "PassthroughBlock", - pos: position{line: 711, col: 1, offset: 22584}, - expr: &actionExpr{ - pos: position{line: 712, col: 5, offset: 22608}, - run: (*parser).callonPassthroughBlock1, - expr: &seqExpr{ - pos: position{line: 712, col: 5, offset: 22608}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 712, col: 5, offset: 22608}, - run: (*parser).callonPassthroughBlock3, - }, - &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonPassthroughBlock6, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonPassthroughBlock9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 717, col: 5, offset: 22799}, - run: (*parser).callonPassthroughBlock16, - }, - &labeledExpr{ - pos: position{line: 722, col: 5, offset: 23004}, - label: "content", - expr: &ruleRefExpr{ - pos: position{line: 722, col: 14, offset: 23013}, - name: "PassthroughBlockContent", - }, - }, - &zeroOrOneExpr{ - pos: position{line: 723, col: 5, offset: 23042}, - expr: &choiceExpr{ - pos: position{line: 730, col: 33, offset: 23295}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 518, col: 30, offset: 16986}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonPassthroughBlock24, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + &actionExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + run: (*parser).callonAttributeRawValue89, + expr: &seqExpr{ + pos: position{line: 512, col: 5, offset: 16495}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 512, col: 5, offset: 16495}, + val: "\"", + ignoreCase: false, + want: "\"\\\"\"", + }, + ¬Expr{ + pos: position{line: 512, col: 10, offset: 16500}, + expr: &litMatcher{ + pos: position{line: 512, col: 11, offset: 16501}, + val: "`", ignoreCase: false, - inverted: false, + want: "\"`\"", }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonPassthroughBlock27, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &labeledExpr{ + pos: position{line: 513, col: 5, offset: 16580}, + label: "content", + expr: &actionExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + run: (*parser).callonAttributeRawValue95, + expr: &labeledExpr{ + pos: position{line: 518, col: 5, offset: 16734}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 518, col: 14, offset: 16743}, + expr: &choiceExpr{ + pos: position{line: 519, col: 9, offset: 16753}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + run: (*parser).callonAttributeRawValue99, + expr: &oneOrMoreExpr{ + pos: position{line: 2850, col: 14, offset: 94550}, + expr: &charClassMatcher{ + pos: position{line: 2850, col: 14, offset: 94550}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonAttributeRawValue102, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonAttributeRawValue104, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonAttributeRawValue106, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonAttributeRawValue109, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonAttributeRawValue113, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonAttributeRawValue120, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonAttributeRawValue125, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonAttributeRawValue127, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonAttributeRawValue131, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonAttributeRawValue135, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonAttributeRawValue142, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonAttributeRawValue147, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonAttributeRawValue149, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonAttributeRawValue153, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonAttributeRawValue157, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 522, col: 12, offset: 16822}, + run: (*parser).callonAttributeRawValue163, + expr: &litMatcher{ + pos: position{line: 522, col: 12, offset: 16822}, + val: "\\\"", + ignoreCase: false, + want: "\"\\\\\\\"\"", + }, + }, + &litMatcher{ + pos: position{line: 525, col: 13, offset: 16924}, + val: "\"`", + ignoreCase: false, + want: "\"\\\"`\"", + }, + &litMatcher{ + pos: position{line: 525, col: 21, offset: 16932}, + val: "`\"", + ignoreCase: false, + want: "\"`\\\"\"", + }, + &litMatcher{ + pos: position{line: 525, col: 29, offset: 16940}, + val: "\\", + ignoreCase: false, + want: "\"\\\\\"", + }, + &actionExpr{ + pos: position{line: 525, col: 35, offset: 16946}, + run: (*parser).callonAttributeRawValue168, + expr: &litMatcher{ + pos: position{line: 525, col: 35, offset: 16946}, + val: "`", + ignoreCase: false, + want: "\"`\"", + }, + }, + &actionExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + run: (*parser).callonAttributeRawValue170, + expr: &oneOrMoreExpr{ + pos: position{line: 528, col: 12, offset: 17129}, + expr: &charClassMatcher{ + pos: position{line: 528, col: 12, offset: 17129}, + val: "[^\\r\\n\\\\\"` ]", + chars: []rune{'\r', '\n', '\\', '"', '`', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "PassthroughBlockContent", - pos: position{line: 732, col: 1, offset: 23328}, - expr: &zeroOrMoreExpr{ - pos: position{line: 733, col: 5, offset: 23360}, - expr: &actionExpr{ - pos: position{line: 733, col: 6, offset: 23361}, - run: (*parser).callonPassthroughBlockContent2, - expr: &seqExpr{ - pos: position{line: 733, col: 6, offset: 23361}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 733, col: 6, offset: 23361}, - expr: &choiceExpr{ - pos: position{line: 730, col: 33, offset: 23295}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 518, col: 30, offset: 16986}, - exprs: []interface{}{ &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", + pos: position{line: 514, col: 5, offset: 16631}, + val: "\"", ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonPassthroughBlockContent9, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + want: "\"\\\"\"", }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonPassthroughBlockContent12, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &andExpr{ + pos: position{line: 514, col: 10, offset: 16636}, + expr: ¬Expr{ + pos: position{line: 514, col: 12, offset: 16638}, + expr: &seqExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 514, col: 14, offset: 16640}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonAttributeRawValue178, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &litMatcher{ + pos: position{line: 514, col: 21, offset: 16647}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + }, + &ruleRefExpr{ + pos: position{line: 480, col: 11, offset: 15548}, + name: "UnquotedAttributeRawValue", }, }, }, - &labeledExpr{ - pos: position{line: 734, col: 5, offset: 23395}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 734, col: 11, offset: 23401}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 734, col: 11, offset: 23401}, - name: "FileInclusion", - }, - &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonPassthroughBlockContent24, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonPassthroughBlockContent30, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonPassthroughBlockContent34, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, + }, + &andExpr{ + pos: position{line: 482, col: 5, offset: 15585}, + expr: ¬Expr{ + pos: position{line: 482, col: 7, offset: 15587}, + expr: &seqExpr{ + pos: position{line: 482, col: 9, offset: 15589}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 482, col: 9, offset: 15589}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonAttributeRawValue186, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, + &litMatcher{ + pos: position{line: 482, col: 16, offset: 15596}, + val: "=", + ignoreCase: false, + want: "\"=\"", + }, }, }, }, @@ -18292,31 +20299,21 @@ var g = &grammar{ }, }, { - name: "QuoteBlock", - pos: position{line: 741, col: 1, offset: 23542}, + name: "UnquotedAttributeRawValue", + pos: position{line: 536, col: 1, offset: 17403}, expr: &actionExpr{ - pos: position{line: 742, col: 5, offset: 23560}, - run: (*parser).callonQuoteBlock1, + pos: position{line: 539, col: 5, offset: 17590}, + run: (*parser).callonUnquotedAttributeRawValue1, expr: &seqExpr{ - pos: position{line: 742, col: 5, offset: 23560}, + pos: position{line: 539, col: 5, offset: 17590}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 742, col: 5, offset: 23560}, - run: (*parser).callonQuoteBlock3, - }, - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, + ¬Expr{ + pos: position{line: 539, col: 5, offset: 17590}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonQuoteBlock6, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonUnquotedAttributeRawValue4, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -18324,304 +20321,396 @@ var g = &grammar{ }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonQuoteBlock9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 747, col: 5, offset: 23739}, - run: (*parser).callonQuoteBlock16, - }, &labeledExpr{ - pos: position{line: 752, col: 5, offset: 23938}, - label: "content", - expr: &ruleRefExpr{ - pos: position{line: 752, col: 14, offset: 23947}, - name: "QuoteBlockContent", - }, - }, - &choiceExpr{ - pos: position{line: 760, col: 27, offset: 24192}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 520, col: 24, offset: 17028}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonQuoteBlock23, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + pos: position{line: 540, col: 5, offset: 17659}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 540, col: 14, offset: 17668}, + expr: &choiceExpr{ + pos: position{line: 541, col: 9, offset: 17678}, + alternatives: []interface{}{ + &seqExpr{ + pos: position{line: 541, col: 10, offset: 17679}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 541, col: 10, offset: 17679}, + val: "[", ignoreCase: false, - inverted: false, + want: "\"[\"", + }, + &ruleRefExpr{ + pos: position{line: 541, col: 14, offset: 17683}, + name: "UnquotedAttributeRawValue", + }, + &litMatcher{ + pos: position{line: 541, col: 40, offset: 17709}, + val: "]", + ignoreCase: false, + want: "\"]\"", }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonQuoteBlock26, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonUnquotedAttributeRawValue13, + expr: &seqExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + &labeledExpr{ + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonUnquotedAttributeRawValue17, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + expr: &charClassMatcher{ + pos: position{line: 1065, col: 56, offset: 33991}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", }, }, }, }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "QuoteBlockContent", - pos: position{line: 762, col: 1, offset: 24219}, - expr: &zeroOrMoreExpr{ - pos: position{line: 763, col: 4, offset: 24244}, - expr: &actionExpr{ - pos: position{line: 763, col: 5, offset: 24245}, - run: (*parser).callonQuoteBlockContent2, - expr: &seqExpr{ - pos: position{line: 763, col: 5, offset: 24245}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 763, col: 5, offset: 24245}, - expr: &choiceExpr{ - pos: position{line: 760, col: 27, offset: 24192}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 520, col: 24, offset: 17028}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonQuoteBlockContent9, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonUnquotedAttributeRawValue21, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonUnquotedAttributeRawValue23, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonQuoteBlockContent12, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonUnquotedAttributeRawValue26, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonUnquotedAttributeRawValue30, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonUnquotedAttributeRawValue37, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonUnquotedAttributeRawValue42, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonUnquotedAttributeRawValue44, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonUnquotedAttributeRawValue48, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonUnquotedAttributeRawValue52, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonUnquotedAttributeRawValue59, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonUnquotedAttributeRawValue64, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonUnquotedAttributeRawValue66, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonUnquotedAttributeRawValue70, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonUnquotedAttributeRawValue74, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &actionExpr{ + pos: position{line: 544, col: 12, offset: 17837}, + run: (*parser).callonUnquotedAttributeRawValue80, + expr: &oneOrMoreExpr{ + pos: position{line: 544, col: 12, offset: 17837}, + expr: &charClassMatcher{ + pos: position{line: 544, col: 12, offset: 17837}, + val: "[^=,�] ]", + chars: []rune{'=', ',', '�', ']', ' '}, + ignoreCase: false, + inverted: true, + }, }, }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 764, col: 5, offset: 24273}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 764, col: 11, offset: 24279}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 764, col: 11, offset: 24279}, - name: "FileInclusion", - }, &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonQuoteBlockContent24, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonQuoteBlockContent30, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonQuoteBlockContent34, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonUnquotedAttributeRawValue83, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, @@ -18633,528 +20722,625 @@ var g = &grammar{ }, }, { - name: "SidebarBlock", - pos: position{line: 771, col: 1, offset: 24422}, - expr: &actionExpr{ - pos: position{line: 772, col: 5, offset: 24442}, - run: (*parser).callonSidebarBlock1, - expr: &seqExpr{ - pos: position{line: 772, col: 5, offset: 24442}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 772, col: 5, offset: 24442}, - run: (*parser).callonSidebarBlock3, - }, - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonSidebarBlock6, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + name: "CrossReference", + pos: position{line: 597, col: 1, offset: 19730}, + expr: &choiceExpr{ + pos: position{line: 597, col: 19, offset: 19748}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + run: (*parser).callonCrossReference2, + expr: &seqExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 599, col: 27, offset: 19824}, + val: "<<", ignoreCase: false, - inverted: false, + want: "\"<<\"", }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonSidebarBlock9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + &labeledExpr{ + pos: position{line: 599, col: 32, offset: 19829}, + label: "id", + expr: &actionExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + run: (*parser).callonCrossReference6, + expr: &oneOrMoreExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + expr: &charClassMatcher{ + pos: position{line: 2907, col: 7, offset: 96432}, + val: "[^[]<>,]", + chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, - want: "\"\\r\"", + inverted: true, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 777, col: 5, offset: 24625}, - run: (*parser).callonSidebarBlock16, - }, - &labeledExpr{ - pos: position{line: 782, col: 5, offset: 24826}, - label: "content", - expr: &ruleRefExpr{ - pos: position{line: 782, col: 14, offset: 24835}, - name: "SidebarBlockContent", - }, - }, - &choiceExpr{ - pos: position{line: 790, col: 29, offset: 25093}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 522, col: 26, offset: 17072}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", + &zeroOrMoreExpr{ + pos: position{line: 599, col: 40, offset: 19837}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonCrossReference10, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonSidebarBlock23, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + inverted: false, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + }, + }, + &litMatcher{ + pos: position{line: 599, col: 47, offset: 19844}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &labeledExpr{ + pos: position{line: 599, col: 51, offset: 19848}, + label: "label", + expr: &oneOrMoreExpr{ + pos: position{line: 609, col: 24, offset: 20261}, + expr: &choiceExpr{ + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonSidebarBlock26, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", + pos: position{line: 610, col: 6, offset: 20268}, + run: (*parser).callonCrossReference16, + expr: &seqExpr{ + pos: position{line: 610, col: 6, offset: 20268}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 610, col: 6, offset: 20268}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"\\n\"", + inverted: false, }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &oneOrMoreExpr{ + pos: position{line: 610, col: 14, offset: 20276}, + expr: &charClassMatcher{ + pos: position{line: 610, col: 14, offset: 20276}, + val: "[^\\r\\n{<>]", + chars: []rune{'\r', '\n', '{', '<', '>'}, + ignoreCase: false, + inverted: true, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonCrossReference21, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonCrossReference23, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonCrossReference26, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonCrossReference30, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonCrossReference37, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonCrossReference42, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonCrossReference44, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonCrossReference48, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonCrossReference52, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonCrossReference59, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonCrossReference64, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonCrossReference66, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonCrossReference70, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonCrossReference74, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &actionExpr{ + pos: position{line: 614, col: 8, offset: 20500}, + run: (*parser).callonCrossReference80, + expr: &litMatcher{ + pos: position{line: 614, col: 8, offset: 20500}, + val: "{", + ignoreCase: false, + want: "\"{\"", }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + &litMatcher{ + pos: position{line: 599, col: 79, offset: 19876}, + val: ">>", + ignoreCase: false, + want: "\">>\"", }, }, }, }, - }, - }, - }, - { - name: "SidebarBlockContent", - pos: position{line: 792, col: 1, offset: 25123}, - expr: &zeroOrMoreExpr{ - pos: position{line: 793, col: 4, offset: 25150}, - expr: &actionExpr{ - pos: position{line: 793, col: 5, offset: 25151}, - run: (*parser).callonSidebarBlockContent2, - expr: &seqExpr{ - pos: position{line: 793, col: 5, offset: 25151}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 793, col: 5, offset: 25151}, - expr: &choiceExpr{ - pos: position{line: 790, col: 29, offset: 25093}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 522, col: 26, offset: 17072}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonSidebarBlockContent9, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonSidebarBlockContent12, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, + &actionExpr{ + pos: position{line: 601, col: 9, offset: 19949}, + run: (*parser).callonCrossReference83, + expr: &seqExpr{ + pos: position{line: 601, col: 9, offset: 19949}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 601, col: 9, offset: 19949}, + val: "<<", + ignoreCase: false, + want: "\"<<\"", }, - }, - &labeledExpr{ - pos: position{line: 794, col: 5, offset: 25181}, - label: "line", - expr: &choiceExpr{ - pos: position{line: 794, col: 11, offset: 25187}, - alternatives: []interface{}{ - &ruleRefExpr{ - pos: position{line: 794, col: 11, offset: 25187}, - name: "FileInclusion", - }, - &actionExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - run: (*parser).callonSidebarBlockContent24, - expr: &seqExpr{ - pos: position{line: 525, col: 5, offset: 17121}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 525, col: 5, offset: 17121}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &labeledExpr{ - pos: position{line: 526, col: 5, offset: 17194}, - label: "content", - expr: &actionExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - run: (*parser).callonSidebarBlockContent30, - expr: &zeroOrMoreExpr{ - pos: position{line: 526, col: 14, offset: 17203}, - expr: &charClassMatcher{ - pos: position{line: 526, col: 14, offset: 17203}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonSidebarBlockContent34, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, + &labeledExpr{ + pos: position{line: 601, col: 14, offset: 19954}, + label: "id", + expr: &actionExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + run: (*parser).callonCrossReference87, + expr: &oneOrMoreExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + expr: &charClassMatcher{ + pos: position{line: 2907, col: 7, offset: 96432}, + val: "[^[]<>,]", + chars: []rune{'[', ']', '<', '>', ','}, + ignoreCase: false, + inverted: true, }, }, }, }, + &litMatcher{ + pos: position{line: 601, col: 22, offset: 19962}, + val: ">>", + ignoreCase: false, + want: "\">>\"", + }, }, }, }, + &ruleRefExpr{ + pos: position{line: 597, col: 44, offset: 19773}, + name: "ExternalCrossReference", + }, }, }, }, { - name: "FileInclusion", - pos: position{line: 928, col: 1, offset: 29793}, + name: "ExternalCrossReference", + pos: position{line: 605, col: 1, offset: 20033}, expr: &actionExpr{ - pos: position{line: 929, col: 5, offset: 29815}, - run: (*parser).callonFileInclusion1, + pos: position{line: 605, col: 27, offset: 20059}, + run: (*parser).callonExternalCrossReference1, expr: &seqExpr{ - pos: position{line: 929, col: 5, offset: 29815}, + pos: position{line: 605, col: 27, offset: 20059}, exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 929, col: 5, offset: 29815}, - run: (*parser).callonFileInclusion3, - }, - &stateCodeExpr{ - pos: position{line: 933, col: 5, offset: 29902}, - run: (*parser).callonFileInclusion4, + &litMatcher{ + pos: position{line: 605, col: 27, offset: 20059}, + val: "xref:", + ignoreCase: false, + want: "\"xref:\"", }, &labeledExpr{ - pos: position{line: 938, col: 5, offset: 30083}, - label: "incl", + pos: position{line: 605, col: 35, offset: 20067}, + label: "url", expr: &actionExpr{ - pos: position{line: 939, col: 9, offset: 30098}, - run: (*parser).callonFileInclusion6, - expr: &seqExpr{ - pos: position{line: 939, col: 9, offset: 30098}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 939, col: 9, offset: 30098}, - val: "include::", - ignoreCase: false, - want: "\"include::\"", - }, - &labeledExpr{ - pos: position{line: 940, col: 9, offset: 30119}, - label: "path", - expr: &actionExpr{ - pos: position{line: 2821, col: 17, offset: 93840}, - run: (*parser).callonFileInclusion10, - expr: &labeledExpr{ - pos: position{line: 2821, col: 17, offset: 93840}, - label: "path", - expr: &oneOrMoreExpr{ - pos: position{line: 2821, col: 22, offset: 93845}, - expr: &choiceExpr{ - pos: position{line: 2821, col: 23, offset: 93846}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, - run: (*parser).callonFileInclusion14, - expr: &labeledExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, - label: "elements", + pos: position{line: 2881, col: 17, offset: 95594}, + run: (*parser).callonExternalCrossReference5, + expr: &labeledExpr{ + pos: position{line: 2881, col: 17, offset: 95594}, + label: "path", + expr: &oneOrMoreExpr{ + pos: position{line: 2881, col: 22, offset: 95599}, + expr: &choiceExpr{ + pos: position{line: 2881, col: 23, offset: 95600}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2893, col: 13, offset: 96004}, + run: (*parser).callonExternalCrossReference9, + expr: &labeledExpr{ + pos: position{line: 2893, col: 13, offset: 96004}, + label: "elements", + expr: &oneOrMoreExpr{ + pos: position{line: 2893, col: 22, offset: 96013}, + expr: &choiceExpr{ + pos: position{line: 2894, col: 5, offset: 96019}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2894, col: 5, offset: 96019}, + run: (*parser).callonExternalCrossReference13, expr: &oneOrMoreExpr{ - pos: position{line: 2833, col: 22, offset: 94259}, - expr: &choiceExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, - run: (*parser).callonFileInclusion18, - expr: &oneOrMoreExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, - expr: &charClassMatcher{ - pos: position{line: 2834, col: 6, offset: 94266}, - val: "[^\\r\\n[]�&<>{ ]", - chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonFileInclusion21, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonFileInclusion23, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonFileInclusion26, + pos: position{line: 2894, col: 5, offset: 96019}, + expr: &charClassMatcher{ + pos: position{line: 2894, col: 6, offset: 96020}, + val: "[^\\r\\n[]�&<>{ ]", + chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonExternalCrossReference16, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonExternalCrossReference18, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonExternalCrossReference21, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonExternalCrossReference25, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"{counter:\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonFileInclusion30, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonExternalCrossReference32, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonExternalCrossReference37, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, inverted: false, }, }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonFileInclusion37, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonFileInclusion42, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonFileInclusion44, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonExternalCrossReference39, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, @@ -19162,110 +21348,110 @@ var g = &grammar{ }, }, }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonFileInclusion48, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonExternalCrossReference43, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonExternalCrossReference47, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"{counter2:\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonFileInclusion52, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonFileInclusion59, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonExternalCrossReference54, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonExternalCrossReference59, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, - want: "\":\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonFileInclusion64, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonFileInclusion66, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonExternalCrossReference61, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, @@ -19273,294 +21459,294 @@ var g = &grammar{ }, }, }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonFileInclusion70, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonExternalCrossReference65, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonExternalCrossReference69, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"{\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonFileInclusion74, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, - run: (*parser).callonFileInclusion80, - expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, - run: (*parser).callonFileInclusion82, - }, - &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, - run: (*parser).callonFileInclusion85, - expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, - run: (*parser).callonFileInclusion87, - expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, - label: "id", - expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - run: (*parser).callonFileInclusion91, - expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2632, col: 5, offset: 87865}, + run: (*parser).callonExternalCrossReference75, + expr: &seqExpr{ + pos: position{line: 2632, col: 5, offset: 87865}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 2632, col: 5, offset: 87865}, + run: (*parser).callonExternalCrossReference77, + }, + &labeledExpr{ + pos: position{line: 2635, col: 5, offset: 87936}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 2637, col: 9, offset: 88034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2637, col: 9, offset: 88034}, + run: (*parser).callonExternalCrossReference80, + expr: &choiceExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + run: (*parser).callonExternalCrossReference82, + expr: &seqExpr{ + pos: position{line: 599, col: 27, offset: 19824}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 599, col: 27, offset: 19824}, + val: "<<", + ignoreCase: false, + want: "\"<<\"", + }, + &labeledExpr{ + pos: position{line: 599, col: 32, offset: 19829}, + label: "id", + expr: &actionExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + run: (*parser).callonExternalCrossReference86, + expr: &oneOrMoreExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + expr: &charClassMatcher{ + pos: position{line: 2907, col: 7, offset: 96432}, + val: "[^[]<>,]", + chars: []rune{'[', ']', '<', '>', ','}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 599, col: 40, offset: 19837}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExternalCrossReference90, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &litMatcher{ + pos: position{line: 599, col: 47, offset: 19844}, + val: ",", + ignoreCase: false, + want: "\",\"", + }, + &labeledExpr{ + pos: position{line: 599, col: 51, offset: 19848}, + label: "label", + expr: &oneOrMoreExpr{ + pos: position{line: 609, col: 24, offset: 20261}, + expr: &choiceExpr{ + pos: position{line: 610, col: 5, offset: 20267}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 610, col: 6, offset: 20268}, + run: (*parser).callonExternalCrossReference96, + expr: &seqExpr{ + pos: position{line: 610, col: 6, offset: 20268}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 610, col: 6, offset: 20268}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - inverted: true, + inverted: false, + }, + &oneOrMoreExpr{ + pos: position{line: 610, col: 14, offset: 20276}, + expr: &charClassMatcher{ + pos: position{line: 610, col: 14, offset: 20276}, + val: "[^\\r\\n{<>]", + chars: []rune{'\r', '\n', '{', '<', '>'}, + ignoreCase: false, + inverted: true, + }, }, }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonFileInclusion95, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, - val: ",", - ignoreCase: false, - want: "\",\"", - }, - &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, - label: "label", - expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, - expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, - run: (*parser).callonFileInclusion101, - expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, - expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, - val: "[^\\r\\n{<>]", - chars: []rune{'\r', '\n', '{', '<', '>'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonFileInclusion106, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonFileInclusion108, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonFileInclusion111, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonExternalCrossReference101, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonExternalCrossReference103, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonExternalCrossReference106, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonExternalCrossReference110, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"{counter:\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonFileInclusion115, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonExternalCrossReference117, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonExternalCrossReference122, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, inverted: false, }, }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonFileInclusion122, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonFileInclusion127, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonFileInclusion129, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonExternalCrossReference124, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, @@ -19568,110 +21754,110 @@ var g = &grammar{ }, }, }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonFileInclusion133, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonExternalCrossReference128, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonExternalCrossReference132, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"{counter2:\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonFileInclusion137, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonExternalCrossReference139, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonExternalCrossReference144, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, inverted: false, }, }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonFileInclusion144, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonFileInclusion149, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonFileInclusion151, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonExternalCrossReference146, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, @@ -19679,544 +21865,138 @@ var g = &grammar{ }, }, }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonFileInclusion155, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonExternalCrossReference150, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonExternalCrossReference154, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"{\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonFileInclusion159, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, }, }, }, }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, - run: (*parser).callonFileInclusion165, - expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, }, }, }, }, - &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, - run: (*parser).callonFileInclusion168, - expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, - val: "<<", - ignoreCase: false, - want: "\"<<\"", - }, - &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, - label: "id", - expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - run: (*parser).callonFileInclusion172, - expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, - expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, - val: "[^[]<>,]", - chars: []rune{'[', ']', '<', '>', ','}, - ignoreCase: false, - inverted: true, - }, - }, + &actionExpr{ + pos: position{line: 614, col: 8, offset: 20500}, + run: (*parser).callonExternalCrossReference160, + expr: &litMatcher{ + pos: position{line: 614, col: 8, offset: 20500}, + val: "{", + ignoreCase: false, + want: "\"{\"", }, }, - &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, - val: ">>", - ignoreCase: false, - want: "\">>\"", - }, }, }, }, }, - }, - }, - &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, - run: (*parser).callonFileInclusion176, - expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, - val: "[<>&]", - chars: []rune{'<', '>', '&'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2840, col: 7, offset: 94490}, - run: (*parser).callonFileInclusion178, - expr: &litMatcher{ - pos: position{line: 2840, col: 7, offset: 94490}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - run: (*parser).callonFileInclusion180, - expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - run: (*parser).callonFileInclusion184, - expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, - expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, - val: "�", - ignoreCase: false, - want: "\"�\"", - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 941, col: 9, offset: 30148}, - label: "inlineAttributes", - expr: &ruleRefExpr{ - pos: position{line: 941, col: 27, offset: 30166}, - name: "InlineAttributes", - }, - }, - }, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 945, col: 5, offset: 30327}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonFileInclusion191, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonFileInclusion194, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - { - name: "LineRanges", - pos: position{line: 952, col: 1, offset: 30460}, - expr: &actionExpr{ - pos: position{line: 952, col: 15, offset: 30474}, - run: (*parser).callonLineRanges1, - expr: &seqExpr{ - pos: position{line: 952, col: 15, offset: 30474}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 952, col: 15, offset: 30474}, - label: "value", - expr: &choiceExpr{ - pos: position{line: 952, col: 22, offset: 30481}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 959, col: 23, offset: 30664}, - run: (*parser).callonLineRanges5, - expr: &seqExpr{ - pos: position{line: 959, col: 23, offset: 30664}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 959, col: 23, offset: 30664}, - label: "first", - expr: &choiceExpr{ - pos: position{line: 959, col: 30, offset: 30671}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - run: (*parser).callonLineRanges9, - expr: &seqExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - label: "start", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges12, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges17, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 968, col: 34, offset: 31044}, - val: "..", - ignoreCase: false, - want: "\"..\"", - }, - &labeledExpr{ - pos: position{line: 968, col: 39, offset: 31049}, - label: "end", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges21, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges26, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 972, col: 20, offset: 31169}, - run: (*parser).callonLineRanges28, - expr: &labeledExpr{ - pos: position{line: 972, col: 20, offset: 31169}, - label: "singleline", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges30, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges35, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 960, col: 5, offset: 30710}, - label: "others", - expr: &oneOrMoreExpr{ - pos: position{line: 960, col: 12, offset: 30717}, - expr: &actionExpr{ - pos: position{line: 961, col: 9, offset: 30727}, - run: (*parser).callonLineRanges39, - expr: &seqExpr{ - pos: position{line: 961, col: 9, offset: 30727}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 961, col: 10, offset: 30728}, - val: "[,;]", - chars: []rune{',', ';'}, - ignoreCase: false, - inverted: false, - }, - &labeledExpr{ - pos: position{line: 962, col: 9, offset: 30845}, - label: "other", - expr: &choiceExpr{ - pos: position{line: 962, col: 16, offset: 30852}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - run: (*parser).callonLineRanges44, - expr: &seqExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - label: "start", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges47, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges52, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, + &litMatcher{ + pos: position{line: 599, col: 79, offset: 19876}, + val: ">>", ignoreCase: false, - inverted: false, + want: "\">>\"", }, }, }, }, - }, - }, - }, - &litMatcher{ - pos: position{line: 968, col: 34, offset: 31044}, - val: "..", - ignoreCase: false, - want: "\"..\"", - }, - &labeledExpr{ - pos: position{line: 968, col: 39, offset: 31049}, - label: "end", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges56, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges61, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, + &actionExpr{ + pos: position{line: 601, col: 9, offset: 19949}, + run: (*parser).callonExternalCrossReference163, + expr: &seqExpr{ + pos: position{line: 601, col: 9, offset: 19949}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 601, col: 9, offset: 19949}, + val: "<<", + ignoreCase: false, + want: "\"<<\"", + }, + &labeledExpr{ + pos: position{line: 601, col: 14, offset: 19954}, + label: "id", + expr: &actionExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + run: (*parser).callonExternalCrossReference167, + expr: &oneOrMoreExpr{ + pos: position{line: 2907, col: 7, offset: 96432}, + expr: &charClassMatcher{ + pos: position{line: 2907, col: 7, offset: 96432}, + val: "[^[]<>,]", + chars: []rune{'[', ']', '<', '>', ','}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 601, col: 22, offset: 19962}, + val: ">>", ignoreCase: false, - inverted: false, + want: "\">>\"", }, }, }, @@ -20224,44 +22004,15 @@ var g = &grammar{ }, }, }, - }, - }, - }, - &actionExpr{ - pos: position{line: 972, col: 20, offset: 31169}, - run: (*parser).callonLineRanges63, - expr: &labeledExpr{ - pos: position{line: 972, col: 20, offset: 31169}, - label: "singleline", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges65, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges70, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, + &actionExpr{ + pos: position{line: 2640, col: 11, offset: 88138}, + run: (*parser).callonExternalCrossReference171, + expr: &charClassMatcher{ + pos: position{line: 2640, col: 12, offset: 88139}, + val: "[<>&]", + chars: []rune{'<', '>', '&'}, + ignoreCase: false, + inverted: false, }, }, }, @@ -20270,49 +22021,14 @@ var g = &grammar{ }, }, }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - run: (*parser).callonLineRanges72, - expr: &seqExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 968, col: 19, offset: 31029}, - label: "start", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges75, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges80, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, + &actionExpr{ + pos: position{line: 2899, col: 7, offset: 96216}, + run: (*parser).callonExternalCrossReference173, + expr: &litMatcher{ + pos: position{line: 2899, col: 7, offset: 96216}, + val: "{", ignoreCase: false, - inverted: false, + want: "\"{\"", }, }, }, @@ -20320,37 +22036,28 @@ var g = &grammar{ }, }, }, - &litMatcher{ - pos: position{line: 968, col: 34, offset: 31044}, - val: "..", - ignoreCase: false, - want: "\"..\"", - }, - &labeledExpr{ - pos: position{line: 968, col: 39, offset: 31049}, - label: "end", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges84, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges89, + &actionExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + run: (*parser).callonExternalCrossReference175, + expr: &seqExpr{ + pos: position{line: 1065, col: 23, offset: 33958}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", + ignoreCase: false, + want: "\"�\"", + }, + &labeledExpr{ + pos: position{line: 1065, col: 51, offset: 33986}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, + run: (*parser).callonExternalCrossReference179, + expr: &oneOrMoreExpr{ + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -20359,45 +22066,11 @@ var g = &grammar{ }, }, }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 972, col: 20, offset: 31169}, - run: (*parser).callonLineRanges91, - expr: &labeledExpr{ - pos: position{line: 972, col: 20, offset: 31169}, - label: "singleline", - expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, - run: (*parser).callonLineRanges93, - expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - exprs: []interface{}{ - &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, - expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, - val: "-", + &litMatcher{ + pos: position{line: 1063, col: 32, offset: 33926}, + val: "�", ignoreCase: false, - want: "\"-\"", - }, - }, - &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, - expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, - run: (*parser).callonLineRanges98, - expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, + want: "\"�\"", }, }, }, @@ -20408,337 +22081,12 @@ var g = &grammar{ }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - { - name: "TagRanges", - pos: position{line: 977, col: 1, offset: 31304}, - expr: &actionExpr{ - pos: position{line: 977, col: 14, offset: 31317}, - run: (*parser).callonTagRanges1, - expr: &seqExpr{ - pos: position{line: 977, col: 14, offset: 31317}, - exprs: []interface{}{ &labeledExpr{ - pos: position{line: 977, col: 14, offset: 31317}, - label: "value", - expr: &actionExpr{ - pos: position{line: 981, col: 22, offset: 31454}, - run: (*parser).callonTagRanges4, - expr: &seqExpr{ - pos: position{line: 981, col: 22, offset: 31454}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 981, col: 22, offset: 31454}, - label: "first", - expr: &choiceExpr{ - pos: position{line: 990, col: 13, offset: 31764}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 990, col: 13, offset: 31764}, - run: (*parser).callonTagRanges8, - expr: &labeledExpr{ - pos: position{line: 990, col: 13, offset: 31764}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 990, col: 18, offset: 31769}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonTagRanges11, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - run: (*parser).callonTagRanges14, - expr: &seqExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - run: (*parser).callonTagRanges17, - expr: &oneOrMoreExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - expr: &litMatcher{ - pos: position{line: 996, col: 24, offset: 31977}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 999, col: 5, offset: 32031}, - run: (*parser).callonTagRanges20, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 992, col: 9, offset: 31857}, - run: (*parser).callonTagRanges21, - expr: &seqExpr{ - pos: position{line: 992, col: 9, offset: 31857}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 992, col: 9, offset: 31857}, - val: "!", - ignoreCase: false, - want: "\"!\"", - }, - &labeledExpr{ - pos: position{line: 992, col: 13, offset: 31861}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 992, col: 18, offset: 31866}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonTagRanges26, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - run: (*parser).callonTagRanges29, - expr: &seqExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - run: (*parser).callonTagRanges32, - expr: &oneOrMoreExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - expr: &litMatcher{ - pos: position{line: 996, col: 24, offset: 31977}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 999, col: 5, offset: 32031}, - run: (*parser).callonTagRanges35, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 982, col: 5, offset: 31475}, - label: "others", - expr: &zeroOrMoreExpr{ - pos: position{line: 982, col: 12, offset: 31482}, - expr: &actionExpr{ - pos: position{line: 983, col: 9, offset: 31492}, - run: (*parser).callonTagRanges38, - expr: &seqExpr{ - pos: position{line: 983, col: 9, offset: 31492}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 983, col: 10, offset: 31493}, - val: "[,;]", - chars: []rune{',', ';'}, - ignoreCase: false, - inverted: false, - }, - &labeledExpr{ - pos: position{line: 984, col: 9, offset: 31610}, - label: "other", - expr: &choiceExpr{ - pos: position{line: 990, col: 13, offset: 31764}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 990, col: 13, offset: 31764}, - run: (*parser).callonTagRanges43, - expr: &labeledExpr{ - pos: position{line: 990, col: 13, offset: 31764}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 990, col: 18, offset: 31769}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonTagRanges46, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - run: (*parser).callonTagRanges49, - expr: &seqExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - run: (*parser).callonTagRanges52, - expr: &oneOrMoreExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - expr: &litMatcher{ - pos: position{line: 996, col: 24, offset: 31977}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 999, col: 5, offset: 32031}, - run: (*parser).callonTagRanges55, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 992, col: 9, offset: 31857}, - run: (*parser).callonTagRanges56, - expr: &seqExpr{ - pos: position{line: 992, col: 9, offset: 31857}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 992, col: 9, offset: 31857}, - val: "!", - ignoreCase: false, - want: "\"!\"", - }, - &labeledExpr{ - pos: position{line: 992, col: 13, offset: 31861}, - label: "tag", - expr: &choiceExpr{ - pos: position{line: 992, col: 18, offset: 31866}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonTagRanges61, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - run: (*parser).callonTagRanges64, - expr: &seqExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 996, col: 16, offset: 31969}, - label: "stars", - expr: &actionExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - run: (*parser).callonTagRanges67, - expr: &oneOrMoreExpr{ - pos: position{line: 996, col: 23, offset: 31976}, - expr: &litMatcher{ - pos: position{line: 996, col: 24, offset: 31977}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 999, col: 5, offset: 32031}, - run: (*parser).callonTagRanges70, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + pos: position{line: 605, col: 54, offset: 20086}, + label: "inlineAttributes", + expr: &ruleRefExpr{ + pos: position{line: 605, col: 72, offset: 20104}, + name: "InlineAttributes", }, }, }, @@ -20746,144 +22094,61 @@ var g = &grammar{ }, }, { - name: "IncludedFileLine", - pos: position{line: 1006, col: 1, offset: 32198}, + name: "MarkdownQuoteAttribution", + pos: position{line: 858, col: 1, offset: 27472}, expr: &actionExpr{ - pos: position{line: 1006, col: 21, offset: 32218}, - run: (*parser).callonIncludedFileLine1, + pos: position{line: 859, col: 5, offset: 27505}, + run: (*parser).callonMarkdownQuoteAttribution1, expr: &seqExpr{ - pos: position{line: 1006, col: 21, offset: 32218}, + pos: position{line: 859, col: 5, offset: 27505}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 859, col: 5, offset: 27505}, + val: "-- ", + ignoreCase: false, + want: "\"-- \"", + }, &labeledExpr{ - pos: position{line: 1006, col: 21, offset: 32218}, - label: "content", - expr: &zeroOrMoreExpr{ - pos: position{line: 1006, col: 29, offset: 32226}, - expr: &choiceExpr{ - pos: position{line: 1006, col: 30, offset: 32227}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1010, col: 25, offset: 32407}, - run: (*parser).callonIncludedFileLine6, - expr: &seqExpr{ - pos: position{line: 1010, col: 25, offset: 32407}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1010, col: 25, offset: 32407}, - val: "tag::", - ignoreCase: false, - want: "\"tag::\"", - }, - &labeledExpr{ - pos: position{line: 1010, col: 33, offset: 32415}, - label: "tag", - expr: &actionExpr{ - pos: position{line: 1010, col: 38, offset: 32420}, - run: (*parser).callonIncludedFileLine10, - expr: &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonIncludedFileLine11, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1010, col: 78, offset: 32460}, - val: "[]", - ignoreCase: false, - want: "\"[]\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1014, col: 23, offset: 32555}, - run: (*parser).callonIncludedFileLine15, - expr: &seqExpr{ - pos: position{line: 1014, col: 23, offset: 32555}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1014, col: 23, offset: 32555}, - val: "end::", - ignoreCase: false, - want: "\"end::\"", - }, - &labeledExpr{ - pos: position{line: 1014, col: 31, offset: 32563}, - label: "tag", - expr: &actionExpr{ - pos: position{line: 1014, col: 36, offset: 32568}, - run: (*parser).callonIncludedFileLine19, - expr: &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - run: (*parser).callonIncludedFileLine20, - expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, - expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1014, col: 76, offset: 32608}, - val: "[]", - ignoreCase: false, - want: "\"[]\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1006, col: 74, offset: 32271}, - run: (*parser).callonIncludedFileLine24, - expr: &anyMatcher{ - line: 1006, col: 74, offset: 32271, - }, - }, + pos: position{line: 859, col: 11, offset: 27511}, + label: "author", + expr: &actionExpr{ + pos: position{line: 859, col: 19, offset: 27519}, + run: (*parser).callonMarkdownQuoteAttribution5, + expr: &oneOrMoreExpr{ + pos: position{line: 859, col: 20, offset: 27520}, + expr: &charClassMatcher{ + pos: position{line: 859, col: 20, offset: 27520}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonIncludedFileLine27, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonMarkdownQuoteAttribution9, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -20892,9 +22157,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -20905,26 +22170,26 @@ var g = &grammar{ }, { name: "InlineElement", - pos: position{line: 1072, col: 1, offset: 34300}, + pos: position{line: 1133, col: 1, offset: 36087}, expr: &actionExpr{ - pos: position{line: 1073, col: 5, offset: 34323}, + pos: position{line: 1134, col: 5, offset: 36110}, run: (*parser).callonInlineElement1, expr: &labeledExpr{ - pos: position{line: 1073, col: 5, offset: 34323}, + pos: position{line: 1134, col: 5, offset: 36110}, label: "element", expr: &choiceExpr{ - pos: position{line: 1074, col: 9, offset: 34341}, + pos: position{line: 1135, col: 9, offset: 36128}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonInlineElement4, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -20934,13 +22199,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineElement9, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -20948,37 +22213,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonInlineElement14, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -20987,9 +22252,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -21001,12 +22266,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonInlineElement21, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -21015,28 +22280,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonInlineElement24, expr: &seqExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonInlineElement26, }, &litMatcher{ - pos: position{line: 921, col: 5, offset: 29529}, + pos: position{line: 1076, col: 5, offset: 34461}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 921, col: 9, offset: 29533}, + pos: position{line: 1076, col: 9, offset: 34465}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineElement29, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -21045,30 +22310,30 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 921, col: 16, offset: 29540}, + pos: position{line: 1076, col: 16, offset: 34472}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonInlineElement33, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -21077,9 +22342,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -21089,33 +22354,33 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 1077, col: 11, offset: 34440}, + pos: position{line: 1138, col: 11, offset: 36227}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1077, col: 11, offset: 34440}, + pos: position{line: 1138, col: 11, offset: 36227}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonInlineElement43, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -21124,61 +22389,61 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &choiceExpr{ - pos: position{line: 1078, col: 13, offset: 34459}, + pos: position{line: 1139, col: 13, offset: 36246}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonInlineElement51, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonInlineElement53, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonInlineElement56, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonInlineElement58, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonInlineElement62, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -21188,12 +22453,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineElement66, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -21202,27 +22467,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonInlineElement72, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -21230,9 +22495,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -21243,44 +22508,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineElement77, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineElement79, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonInlineElement82, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineElement86, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -21289,9 +22554,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -21305,33 +22570,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineElement93, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineElement98, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -21339,12 +22604,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineElement100, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -21361,7 +22626,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -21370,28 +22635,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonInlineElement104, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineElement108, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -21400,9 +22665,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -21416,33 +22681,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineElement115, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineElement120, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -21450,12 +22715,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineElement122, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -21472,7 +22737,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -21481,28 +22746,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonInlineElement126, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineElement130, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -21511,9 +22776,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -21527,7 +22792,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -21542,10 +22807,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonInlineElement136, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -21556,7 +22821,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -21565,27 +22830,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonInlineElement139, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonInlineElement143, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -21595,7 +22860,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -21607,10 +22872,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonInlineElement147, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -21624,48 +22889,48 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1079, col: 15, offset: 34490}, + pos: position{line: 1140, col: 15, offset: 36277}, name: "Quote", }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineElement150, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineElement152, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonInlineElement155, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineElement159, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -21674,9 +22939,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -21690,33 +22955,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineElement166, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineElement171, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -21724,12 +22989,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineElement173, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -21746,7 +23011,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -21755,28 +23020,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonInlineElement177, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineElement181, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -21785,9 +23050,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -21801,33 +23066,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineElement188, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineElement193, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -21835,12 +23100,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineElement195, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -21857,7 +23122,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -21866,28 +23131,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonInlineElement199, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineElement203, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -21896,9 +23161,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -21912,7 +23177,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -21927,67 +23192,67 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1081, col: 15, offset: 34547}, + pos: position{line: 1142, col: 15, offset: 36334}, name: "InlineMacro", }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonInlineElement210, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonInlineElement212, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonInlineElement214, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonInlineElement216, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonInlineElement218, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonInlineElement220, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -21995,15 +23260,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -22014,27 +23279,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonInlineElement226, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonInlineElement230, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -22044,7 +23309,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -22053,10 +23318,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonInlineElement234, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -22070,29 +23335,29 @@ var g = &grammar{ }, { name: "IndexTerm", - pos: position{line: 1100, col: 1, offset: 35332}, + pos: position{line: 1161, col: 1, offset: 37119}, expr: &actionExpr{ - pos: position{line: 1100, col: 14, offset: 35345}, + pos: position{line: 1161, col: 14, offset: 37132}, run: (*parser).callonIndexTerm1, expr: &seqExpr{ - pos: position{line: 1100, col: 14, offset: 35345}, + pos: position{line: 1161, col: 14, offset: 37132}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1100, col: 14, offset: 35345}, + pos: position{line: 1161, col: 14, offset: 37132}, val: "((", ignoreCase: false, want: "\"((\"", }, &labeledExpr{ - pos: position{line: 1100, col: 19, offset: 35350}, + pos: position{line: 1161, col: 19, offset: 37137}, label: "term", expr: &ruleRefExpr{ - pos: position{line: 1100, col: 25, offset: 35356}, + pos: position{line: 1161, col: 25, offset: 37143}, name: "IndexTermContent", }, }, &litMatcher{ - pos: position{line: 1100, col: 43, offset: 35374}, + pos: position{line: 1161, col: 43, offset: 37161}, val: "))", ignoreCase: false, want: "\"))\"", @@ -22103,28 +23368,28 @@ var g = &grammar{ }, { name: "IndexTermContent", - pos: position{line: 1104, col: 1, offset: 35443}, + pos: position{line: 1165, col: 1, offset: 37230}, expr: &actionExpr{ - pos: position{line: 1104, col: 21, offset: 35463}, + pos: position{line: 1165, col: 21, offset: 37250}, run: (*parser).callonIndexTermContent1, expr: &labeledExpr{ - pos: position{line: 1104, col: 21, offset: 35463}, + pos: position{line: 1165, col: 21, offset: 37250}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 1104, col: 30, offset: 35472}, + pos: position{line: 1165, col: 30, offset: 37259}, expr: &choiceExpr{ - pos: position{line: 1104, col: 31, offset: 35473}, + pos: position{line: 1165, col: 31, offset: 37260}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, run: (*parser).callonIndexTermContent5, expr: &seqExpr{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, expr: &charClassMatcher{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -22133,21 +23398,21 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2798, col: 15, offset: 93187}, + pos: position{line: 2858, col: 15, offset: 94941}, expr: &choiceExpr{ - pos: position{line: 2798, col: 17, offset: 93189}, + pos: position{line: 2858, col: 17, offset: 94943}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2798, col: 17, offset: 93189}, + pos: position{line: 2858, col: 17, offset: 94943}, val: "[\\r\\n ,]]", chars: []rune{'\r', '\n', ' ', ',', ']'}, ignoreCase: false, inverted: false, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -22157,15 +23422,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, run: (*parser).callonIndexTermContent14, expr: &seqExpr{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, expr: &charClassMatcher{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -22174,21 +23439,21 @@ var g = &grammar{ }, }, &oneOrMoreExpr{ - pos: position{line: 2800, col: 19, offset: 93281}, + pos: position{line: 2860, col: 19, offset: 95035}, expr: &seqExpr{ - pos: position{line: 2800, col: 20, offset: 93282}, + pos: position{line: 2860, col: 20, offset: 95036}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2800, col: 20, offset: 93282}, + pos: position{line: 2860, col: 20, offset: 95036}, val: "[=*_`]", chars: []rune{'=', '*', '_', '`'}, ignoreCase: false, inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 2800, col: 27, offset: 93289}, + pos: position{line: 2860, col: 27, offset: 95043}, expr: &charClassMatcher{ - pos: position{line: 2800, col: 27, offset: 93289}, + pos: position{line: 2860, col: 27, offset: 95043}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -22203,18 +23468,18 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1104, col: 38, offset: 35480}, + pos: position{line: 1165, col: 38, offset: 37267}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 1104, col: 53, offset: 35495}, + pos: position{line: 1165, col: 53, offset: 37282}, name: "QuotedText", }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonIndexTermContent25, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -22222,49 +23487,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonIndexTermContent27, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonIndexTermContent29, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonIndexTermContent32, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonIndexTermContent34, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonIndexTermContent38, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -22274,12 +23539,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonIndexTermContent42, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -22288,27 +23553,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonIndexTermContent48, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -22316,9 +23581,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -22329,44 +23594,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonIndexTermContent53, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonIndexTermContent55, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonIndexTermContent58, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonIndexTermContent62, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -22375,9 +23640,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -22391,33 +23656,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonIndexTermContent69, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonIndexTermContent74, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -22425,12 +23690,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonIndexTermContent76, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -22447,7 +23712,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -22456,28 +23721,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonIndexTermContent80, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonIndexTermContent84, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -22486,9 +23751,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -22502,33 +23767,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonIndexTermContent91, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonIndexTermContent96, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -22536,12 +23801,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonIndexTermContent98, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -22558,7 +23823,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -22567,28 +23832,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonIndexTermContent102, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonIndexTermContent106, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -22597,9 +23862,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -22613,7 +23878,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -22628,10 +23893,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonIndexTermContent112, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -22642,7 +23907,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -22651,27 +23916,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonIndexTermContent115, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonIndexTermContent119, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -22681,7 +23946,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -22693,10 +23958,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonIndexTermContent123, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -22710,27 +23975,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonIndexTermContent125, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonIndexTermContent129, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -22740,7 +24005,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -22749,22 +24014,22 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1104, col: 114, offset: 35556}, + pos: position{line: 1165, col: 114, offset: 37343}, run: (*parser).callonIndexTermContent133, expr: &seqExpr{ - pos: position{line: 1104, col: 115, offset: 35557}, + pos: position{line: 1165, col: 115, offset: 37344}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1104, col: 115, offset: 35557}, + pos: position{line: 1165, col: 115, offset: 37344}, expr: &litMatcher{ - pos: position{line: 1104, col: 116, offset: 35558}, + pos: position{line: 1165, col: 116, offset: 37345}, val: "))", ignoreCase: false, want: "\"))\"", }, }, &anyMatcher{ - line: 1104, col: 121, offset: 35563, + line: 1165, col: 121, offset: 37350, }, }, }, @@ -22777,66 +24042,66 @@ var g = &grammar{ }, { name: "ImageBlock", - pos: position{line: 1124, col: 1, offset: 36272}, + pos: position{line: 1185, col: 1, offset: 38059}, expr: &actionExpr{ - pos: position{line: 1125, col: 5, offset: 36291}, + pos: position{line: 1186, col: 5, offset: 38078}, run: (*parser).callonImageBlock1, expr: &seqExpr{ - pos: position{line: 1125, col: 5, offset: 36291}, + pos: position{line: 1186, col: 5, offset: 38078}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 1125, col: 5, offset: 36291}, + pos: position{line: 1186, col: 5, offset: 38078}, run: (*parser).callonImageBlock3, }, &litMatcher{ - pos: position{line: 1129, col: 5, offset: 36443}, + pos: position{line: 1190, col: 5, offset: 38230}, val: "image::", ignoreCase: false, want: "\"image::\"", }, &labeledExpr{ - pos: position{line: 1129, col: 15, offset: 36453}, + pos: position{line: 1190, col: 15, offset: 38240}, label: "path", expr: &actionExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, run: (*parser).callonImageBlock6, expr: &seqExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, label: "scheme", expr: &zeroOrOneExpr{ - pos: position{line: 2825, col: 20, offset: 93965}, + pos: position{line: 2885, col: 20, offset: 95719}, expr: &choiceExpr{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, val: "http://", ignoreCase: false, want: "\"http://\"", }, &litMatcher{ - pos: position{line: 2846, col: 23, offset: 94654}, + pos: position{line: 2905, col: 23, offset: 96380}, val: "https://", ignoreCase: false, want: "\"https://\"", }, &litMatcher{ - pos: position{line: 2846, col: 36, offset: 94667}, + pos: position{line: 2905, col: 36, offset: 96393}, val: "ftp://", ignoreCase: false, want: "\"ftp://\"", }, &litMatcher{ - pos: position{line: 2846, col: 47, offset: 94678}, + pos: position{line: 2905, col: 47, offset: 96404}, val: "irc://", ignoreCase: false, want: "\"irc://\"", }, &litMatcher{ - pos: position{line: 2846, col: 58, offset: 94689}, + pos: position{line: 2905, col: 58, offset: 96415}, val: "mailto:", ignoreCase: false, want: "\"mailto:\"", @@ -22846,31 +24111,31 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2825, col: 30, offset: 93975}, + pos: position{line: 2885, col: 30, offset: 95729}, label: "path", expr: &oneOrMoreExpr{ - pos: position{line: 2825, col: 35, offset: 93980}, + pos: position{line: 2885, col: 35, offset: 95734}, expr: &choiceExpr{ - pos: position{line: 2825, col: 36, offset: 93981}, + pos: position{line: 2885, col: 36, offset: 95735}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, run: (*parser).callonImageBlock19, expr: &labeledExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2833, col: 22, offset: 94259}, + pos: position{line: 2893, col: 22, offset: 96013}, expr: &choiceExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, run: (*parser).callonImageBlock23, expr: &oneOrMoreExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, expr: &charClassMatcher{ - pos: position{line: 2834, col: 6, offset: 94266}, + pos: position{line: 2894, col: 6, offset: 96020}, val: "[^\\r\\n[]�&<>{ ]", chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, ignoreCase: false, @@ -22879,44 +24144,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonImageBlock26, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonImageBlock28, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonImageBlock31, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonImageBlock35, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -22925,9 +24190,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -22941,33 +24206,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonImageBlock42, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonImageBlock47, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -22975,12 +24240,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonImageBlock49, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -22997,7 +24262,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -23006,28 +24271,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonImageBlock53, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonImageBlock57, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -23036,9 +24301,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -23052,33 +24317,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonImageBlock64, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonImageBlock69, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -23086,12 +24351,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonImageBlock71, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -23108,7 +24373,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -23117,28 +24382,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonImageBlock75, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonImageBlock79, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -23147,9 +24412,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -23163,7 +24428,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -23178,49 +24443,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonImageBlock85, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonImageBlock87, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonImageBlock90, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonImageBlock92, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonImageBlock96, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -23230,12 +24495,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonImageBlock100, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -23244,27 +24509,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonImageBlock106, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -23272,9 +24537,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -23285,44 +24550,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonImageBlock111, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonImageBlock113, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonImageBlock116, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonImageBlock120, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -23331,9 +24596,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -23347,33 +24612,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonImageBlock127, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonImageBlock132, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -23381,12 +24646,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonImageBlock134, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -23403,7 +24668,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -23412,28 +24677,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonImageBlock138, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonImageBlock142, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -23442,9 +24707,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -23458,33 +24723,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonImageBlock149, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonImageBlock154, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -23492,12 +24757,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonImageBlock156, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -23514,7 +24779,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -23523,28 +24788,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonImageBlock160, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonImageBlock164, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -23553,9 +24818,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -23569,7 +24834,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -23584,10 +24849,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonImageBlock170, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -23598,7 +24863,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -23607,27 +24872,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonImageBlock173, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonImageBlock177, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -23637,7 +24902,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -23649,10 +24914,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonImageBlock181, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -23666,10 +24931,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, run: (*parser).callonImageBlock183, expr: &litMatcher{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, val: "{", ignoreCase: false, want: "\"{\"", @@ -23681,27 +24946,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonImageBlock185, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonImageBlock189, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -23711,7 +24976,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -23728,20 +24993,20 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1129, col: 31, offset: 36469}, + pos: position{line: 1190, col: 31, offset: 38256}, label: "inlineAttributes", expr: &ruleRefExpr{ - pos: position{line: 1129, col: 49, offset: 36487}, + pos: position{line: 1190, col: 49, offset: 38274}, name: "InlineAttributes", }, }, &zeroOrMoreExpr{ - pos: position{line: 1129, col: 67, offset: 36505}, + pos: position{line: 1190, col: 67, offset: 38292}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonImageBlock196, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -23750,28 +25015,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonImageBlock199, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -23780,9 +25045,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -23793,71 +25058,71 @@ var g = &grammar{ }, { name: "InlineImage", - pos: position{line: 1135, col: 1, offset: 36799}, + pos: position{line: 1196, col: 1, offset: 38586}, expr: &actionExpr{ - pos: position{line: 1135, col: 16, offset: 36814}, + pos: position{line: 1196, col: 16, offset: 38601}, run: (*parser).callonInlineImage1, expr: &seqExpr{ - pos: position{line: 1135, col: 16, offset: 36814}, + pos: position{line: 1196, col: 16, offset: 38601}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1135, col: 16, offset: 36814}, + pos: position{line: 1196, col: 16, offset: 38601}, val: "image:", ignoreCase: false, want: "\"image:\"", }, ¬Expr{ - pos: position{line: 1135, col: 25, offset: 36823}, + pos: position{line: 1196, col: 25, offset: 38610}, expr: &litMatcher{ - pos: position{line: 1135, col: 26, offset: 36824}, + pos: position{line: 1196, col: 26, offset: 38611}, val: ":", ignoreCase: false, want: "\":\"", }, }, &labeledExpr{ - pos: position{line: 1135, col: 30, offset: 36828}, + pos: position{line: 1196, col: 30, offset: 38615}, label: "path", expr: &actionExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, run: (*parser).callonInlineImage7, expr: &seqExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, label: "scheme", expr: &zeroOrOneExpr{ - pos: position{line: 2825, col: 20, offset: 93965}, + pos: position{line: 2885, col: 20, offset: 95719}, expr: &choiceExpr{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, val: "http://", ignoreCase: false, want: "\"http://\"", }, &litMatcher{ - pos: position{line: 2846, col: 23, offset: 94654}, + pos: position{line: 2905, col: 23, offset: 96380}, val: "https://", ignoreCase: false, want: "\"https://\"", }, &litMatcher{ - pos: position{line: 2846, col: 36, offset: 94667}, + pos: position{line: 2905, col: 36, offset: 96393}, val: "ftp://", ignoreCase: false, want: "\"ftp://\"", }, &litMatcher{ - pos: position{line: 2846, col: 47, offset: 94678}, + pos: position{line: 2905, col: 47, offset: 96404}, val: "irc://", ignoreCase: false, want: "\"irc://\"", }, &litMatcher{ - pos: position{line: 2846, col: 58, offset: 94689}, + pos: position{line: 2905, col: 58, offset: 96415}, val: "mailto:", ignoreCase: false, want: "\"mailto:\"", @@ -23867,31 +25132,31 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2825, col: 30, offset: 93975}, + pos: position{line: 2885, col: 30, offset: 95729}, label: "path", expr: &oneOrMoreExpr{ - pos: position{line: 2825, col: 35, offset: 93980}, + pos: position{line: 2885, col: 35, offset: 95734}, expr: &choiceExpr{ - pos: position{line: 2825, col: 36, offset: 93981}, + pos: position{line: 2885, col: 36, offset: 95735}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, run: (*parser).callonInlineImage20, expr: &labeledExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2833, col: 22, offset: 94259}, + pos: position{line: 2893, col: 22, offset: 96013}, expr: &choiceExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, run: (*parser).callonInlineImage24, expr: &oneOrMoreExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, expr: &charClassMatcher{ - pos: position{line: 2834, col: 6, offset: 94266}, + pos: position{line: 2894, col: 6, offset: 96020}, val: "[^\\r\\n[]�&<>{ ]", chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, ignoreCase: false, @@ -23900,44 +25165,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineImage27, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineImage29, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonInlineImage32, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineImage36, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -23946,9 +25211,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -23962,33 +25227,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineImage43, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineImage48, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -23996,12 +25261,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineImage50, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -24018,7 +25283,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -24027,28 +25292,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonInlineImage54, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineImage58, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -24057,9 +25322,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -24073,33 +25338,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineImage65, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineImage70, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -24107,12 +25372,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineImage72, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -24129,7 +25394,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -24138,28 +25403,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonInlineImage76, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineImage80, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -24168,9 +25433,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -24184,7 +25449,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -24199,49 +25464,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonInlineImage86, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonInlineImage88, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonInlineImage91, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonInlineImage93, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonInlineImage97, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -24251,12 +25516,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineImage101, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -24265,27 +25530,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonInlineImage107, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -24293,9 +25558,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -24306,44 +25571,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineImage112, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonInlineImage114, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonInlineImage117, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineImage121, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -24352,9 +25617,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -24368,33 +25633,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineImage128, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineImage133, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -24402,12 +25667,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineImage135, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -24424,7 +25689,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -24433,28 +25698,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonInlineImage139, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineImage143, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -24463,9 +25728,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -24479,33 +25744,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonInlineImage150, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonInlineImage155, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -24513,12 +25778,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonInlineImage157, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -24535,7 +25800,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -24544,28 +25809,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonInlineImage161, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonInlineImage165, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -24574,9 +25839,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -24590,7 +25855,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -24605,10 +25870,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonInlineImage171, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -24619,7 +25884,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -24628,27 +25893,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonInlineImage174, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonInlineImage178, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -24658,7 +25923,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -24670,10 +25935,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonInlineImage182, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -24687,10 +25952,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, run: (*parser).callonInlineImage184, expr: &litMatcher{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, val: "{", ignoreCase: false, want: "\"{\"", @@ -24702,27 +25967,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonInlineImage186, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonInlineImage190, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -24732,7 +25997,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -24749,10 +26014,10 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1135, col: 46, offset: 36844}, + pos: position{line: 1196, col: 46, offset: 38631}, label: "inlineAttributes", expr: &ruleRefExpr{ - pos: position{line: 1135, col: 64, offset: 36862}, + pos: position{line: 1196, col: 64, offset: 38649}, name: "InlineAttributes", }, }, @@ -24762,29 +26027,29 @@ var g = &grammar{ }, { name: "InlineIcon", - pos: position{line: 1142, col: 1, offset: 37292}, + pos: position{line: 1203, col: 1, offset: 39079}, expr: &actionExpr{ - pos: position{line: 1142, col: 15, offset: 37306}, + pos: position{line: 1203, col: 15, offset: 39093}, run: (*parser).callonInlineIcon1, expr: &seqExpr{ - pos: position{line: 1142, col: 15, offset: 37306}, + pos: position{line: 1203, col: 15, offset: 39093}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1142, col: 15, offset: 37306}, + pos: position{line: 1203, col: 15, offset: 39093}, val: "icon:", ignoreCase: false, want: "\"icon:\"", }, &labeledExpr{ - pos: position{line: 1142, col: 23, offset: 37314}, + pos: position{line: 1203, col: 23, offset: 39101}, label: "icon", expr: &actionExpr{ - pos: position{line: 1142, col: 29, offset: 37320}, + pos: position{line: 1203, col: 29, offset: 39107}, run: (*parser).callonInlineIcon5, expr: &oneOrMoreExpr{ - pos: position{line: 1142, col: 29, offset: 37320}, + pos: position{line: 1203, col: 29, offset: 39107}, expr: &charClassMatcher{ - pos: position{line: 1142, col: 29, offset: 37320}, + pos: position{line: 1203, col: 29, offset: 39107}, val: "[_-0-9\\pL]", chars: []rune{'_', '-'}, ranges: []rune{'0', '9'}, @@ -24796,10 +26061,10 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1142, col: 73, offset: 37364}, + pos: position{line: 1203, col: 73, offset: 39151}, label: "attributes", expr: &ruleRefExpr{ - pos: position{line: 1142, col: 85, offset: 37376}, + pos: position{line: 1203, col: 85, offset: 39163}, name: "InlineAttributes", }, }, @@ -24809,32 +26074,32 @@ var g = &grammar{ }, { name: "InlineFootnote", - pos: position{line: 1149, col: 1, offset: 37742}, + pos: position{line: 1210, col: 1, offset: 39529}, expr: &choiceExpr{ - pos: position{line: 1149, col: 19, offset: 37760}, + pos: position{line: 1210, col: 19, offset: 39547}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1149, col: 19, offset: 37760}, + pos: position{line: 1210, col: 19, offset: 39547}, run: (*parser).callonInlineFootnote2, expr: &seqExpr{ - pos: position{line: 1149, col: 19, offset: 37760}, + pos: position{line: 1210, col: 19, offset: 39547}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1149, col: 19, offset: 37760}, + pos: position{line: 1210, col: 19, offset: 39547}, val: "footnote:[", ignoreCase: false, want: "\"footnote:[\"", }, &labeledExpr{ - pos: position{line: 1149, col: 32, offset: 37773}, + pos: position{line: 1210, col: 32, offset: 39560}, label: "content", expr: &ruleRefExpr{ - pos: position{line: 1149, col: 41, offset: 37782}, + pos: position{line: 1210, col: 41, offset: 39569}, name: "FootnoteContent", }, }, &litMatcher{ - pos: position{line: 1149, col: 58, offset: 37799}, + pos: position{line: 1210, col: 58, offset: 39586}, val: "]", ignoreCase: false, want: "\"]\"", @@ -24843,27 +26108,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1151, col: 9, offset: 37859}, + pos: position{line: 1212, col: 9, offset: 39646}, run: (*parser).callonInlineFootnote8, expr: &seqExpr{ - pos: position{line: 1151, col: 9, offset: 37859}, + pos: position{line: 1212, col: 9, offset: 39646}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1151, col: 9, offset: 37859}, + pos: position{line: 1212, col: 9, offset: 39646}, val: "footnote:", ignoreCase: false, want: "\"footnote:\"", }, &labeledExpr{ - pos: position{line: 1151, col: 21, offset: 37871}, + pos: position{line: 1212, col: 21, offset: 39658}, label: "ref", expr: &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonInlineFootnote12, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -24874,24 +26139,24 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1151, col: 39, offset: 37889}, + pos: position{line: 1212, col: 39, offset: 39676}, val: "[", ignoreCase: false, want: "\"[\"", }, &labeledExpr{ - pos: position{line: 1151, col: 43, offset: 37893}, + pos: position{line: 1212, col: 43, offset: 39680}, label: "content", expr: &zeroOrOneExpr{ - pos: position{line: 1151, col: 51, offset: 37901}, + pos: position{line: 1212, col: 51, offset: 39688}, expr: &ruleRefExpr{ - pos: position{line: 1151, col: 52, offset: 37902}, + pos: position{line: 1212, col: 52, offset: 39689}, name: "FootnoteContent", }, }, }, &litMatcher{ - pos: position{line: 1151, col: 70, offset: 37920}, + pos: position{line: 1212, col: 70, offset: 39707}, val: "]", ignoreCase: false, want: "\"]\"", @@ -24904,29 +26169,29 @@ var g = &grammar{ }, { name: "FootnoteContent", - pos: position{line: 1157, col: 1, offset: 38069}, + pos: position{line: 1218, col: 1, offset: 39856}, expr: &actionExpr{ - pos: position{line: 1157, col: 20, offset: 38088}, + pos: position{line: 1218, col: 20, offset: 39875}, run: (*parser).callonFootnoteContent1, expr: &labeledExpr{ - pos: position{line: 1157, col: 20, offset: 38088}, + pos: position{line: 1218, col: 20, offset: 39875}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 1157, col: 29, offset: 38097}, + pos: position{line: 1218, col: 29, offset: 39884}, expr: &seqExpr{ - pos: position{line: 1157, col: 30, offset: 38098}, + pos: position{line: 1218, col: 30, offset: 39885}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1157, col: 30, offset: 38098}, + pos: position{line: 1218, col: 30, offset: 39885}, expr: &litMatcher{ - pos: position{line: 1157, col: 31, offset: 38099}, + pos: position{line: 1218, col: 31, offset: 39886}, val: "]", ignoreCase: false, want: "\"]\"", }, }, &ruleRefExpr{ - pos: position{line: 1157, col: 35, offset: 38103}, + pos: position{line: 1218, col: 35, offset: 39890}, name: "InlineElement", }, }, @@ -24937,32 +26202,32 @@ var g = &grammar{ }, { name: "PassthroughMacro", - pos: position{line: 1189, col: 1, offset: 39792}, + pos: position{line: 1250, col: 1, offset: 41579}, expr: &choiceExpr{ - pos: position{line: 1189, col: 21, offset: 39812}, + pos: position{line: 1250, col: 21, offset: 41599}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1189, col: 21, offset: 39812}, + pos: position{line: 1250, col: 21, offset: 41599}, run: (*parser).callonPassthroughMacro2, expr: &seqExpr{ - pos: position{line: 1189, col: 21, offset: 39812}, + pos: position{line: 1250, col: 21, offset: 41599}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1189, col: 21, offset: 39812}, + pos: position{line: 1250, col: 21, offset: 41599}, val: "pass:[", ignoreCase: false, want: "\"pass:[\"", }, &labeledExpr{ - pos: position{line: 1189, col: 30, offset: 39821}, + pos: position{line: 1250, col: 30, offset: 41608}, label: "content", expr: &zeroOrMoreExpr{ - pos: position{line: 1189, col: 38, offset: 39829}, + pos: position{line: 1250, col: 38, offset: 41616}, expr: &actionExpr{ - pos: position{line: 1195, col: 30, offset: 40155}, + pos: position{line: 1256, col: 30, offset: 41942}, run: (*parser).callonPassthroughMacro7, expr: &charClassMatcher{ - pos: position{line: 1195, col: 30, offset: 40155}, + pos: position{line: 1256, col: 30, offset: 41942}, val: "[^]]", chars: []rune{']'}, ignoreCase: false, @@ -24972,7 +26237,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1189, col: 67, offset: 39858}, + pos: position{line: 1250, col: 67, offset: 41645}, val: "]", ignoreCase: false, want: "\"]\"", @@ -24981,34 +26246,34 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1191, col: 9, offset: 39962}, + pos: position{line: 1252, col: 9, offset: 41749}, run: (*parser).callonPassthroughMacro10, expr: &seqExpr{ - pos: position{line: 1191, col: 9, offset: 39962}, + pos: position{line: 1252, col: 9, offset: 41749}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1191, col: 9, offset: 39962}, + pos: position{line: 1252, col: 9, offset: 41749}, val: "pass:q[", ignoreCase: false, want: "\"pass:q[\"", }, &labeledExpr{ - pos: position{line: 1191, col: 19, offset: 39972}, + pos: position{line: 1252, col: 19, offset: 41759}, label: "content", expr: &zeroOrMoreExpr{ - pos: position{line: 1191, col: 27, offset: 39980}, + pos: position{line: 1252, col: 27, offset: 41767}, expr: &choiceExpr{ - pos: position{line: 1191, col: 28, offset: 39981}, + pos: position{line: 1252, col: 28, offset: 41768}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1191, col: 28, offset: 39981}, + pos: position{line: 1252, col: 28, offset: 41768}, name: "QuotedText", }, &actionExpr{ - pos: position{line: 1195, col: 30, offset: 40155}, + pos: position{line: 1256, col: 30, offset: 41942}, run: (*parser).callonPassthroughMacro17, expr: &charClassMatcher{ - pos: position{line: 1195, col: 30, offset: 40155}, + pos: position{line: 1256, col: 30, offset: 41942}, val: "[^]]", chars: []rune{']'}, ignoreCase: false, @@ -25020,7 +26285,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1191, col: 69, offset: 40022}, + pos: position{line: 1252, col: 69, offset: 41809}, val: "]", ignoreCase: false, want: "\"]\"", @@ -25033,16 +26298,16 @@ var g = &grammar{ }, { name: "Link", - pos: position{line: 1202, col: 1, offset: 40411}, + pos: position{line: 1263, col: 1, offset: 42198}, expr: &choiceExpr{ - pos: position{line: 1202, col: 9, offset: 40419}, + pos: position{line: 1263, col: 9, offset: 42206}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1202, col: 9, offset: 40419}, + pos: position{line: 1263, col: 9, offset: 42206}, name: "RelativeLink", }, &ruleRefExpr{ - pos: position{line: 1202, col: 24, offset: 40434}, + pos: position{line: 1263, col: 24, offset: 42221}, name: "ExternalLink", }, }, @@ -25050,62 +26315,62 @@ var g = &grammar{ }, { name: "RelativeLink", - pos: position{line: 1205, col: 1, offset: 40515}, + pos: position{line: 1266, col: 1, offset: 42302}, expr: &actionExpr{ - pos: position{line: 1205, col: 17, offset: 40531}, + pos: position{line: 1266, col: 17, offset: 42318}, run: (*parser).callonRelativeLink1, expr: &seqExpr{ - pos: position{line: 1205, col: 17, offset: 40531}, + pos: position{line: 1266, col: 17, offset: 42318}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1205, col: 17, offset: 40531}, + pos: position{line: 1266, col: 17, offset: 42318}, val: "link:", ignoreCase: false, want: "\"link:\"", }, &labeledExpr{ - pos: position{line: 1205, col: 25, offset: 40539}, + pos: position{line: 1266, col: 25, offset: 42326}, label: "url", expr: &actionExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, run: (*parser).callonRelativeLink5, expr: &seqExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2825, col: 13, offset: 93958}, + pos: position{line: 2885, col: 13, offset: 95712}, label: "scheme", expr: &zeroOrOneExpr{ - pos: position{line: 2825, col: 20, offset: 93965}, + pos: position{line: 2885, col: 20, offset: 95719}, expr: &choiceExpr{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, val: "http://", ignoreCase: false, want: "\"http://\"", }, &litMatcher{ - pos: position{line: 2846, col: 23, offset: 94654}, + pos: position{line: 2905, col: 23, offset: 96380}, val: "https://", ignoreCase: false, want: "\"https://\"", }, &litMatcher{ - pos: position{line: 2846, col: 36, offset: 94667}, + pos: position{line: 2905, col: 36, offset: 96393}, val: "ftp://", ignoreCase: false, want: "\"ftp://\"", }, &litMatcher{ - pos: position{line: 2846, col: 47, offset: 94678}, + pos: position{line: 2905, col: 47, offset: 96404}, val: "irc://", ignoreCase: false, want: "\"irc://\"", }, &litMatcher{ - pos: position{line: 2846, col: 58, offset: 94689}, + pos: position{line: 2905, col: 58, offset: 96415}, val: "mailto:", ignoreCase: false, want: "\"mailto:\"", @@ -25115,31 +26380,31 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2825, col: 30, offset: 93975}, + pos: position{line: 2885, col: 30, offset: 95729}, label: "path", expr: &oneOrMoreExpr{ - pos: position{line: 2825, col: 35, offset: 93980}, + pos: position{line: 2885, col: 35, offset: 95734}, expr: &choiceExpr{ - pos: position{line: 2825, col: 36, offset: 93981}, + pos: position{line: 2885, col: 36, offset: 95735}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, run: (*parser).callonRelativeLink18, expr: &labeledExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2833, col: 22, offset: 94259}, + pos: position{line: 2893, col: 22, offset: 96013}, expr: &choiceExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, run: (*parser).callonRelativeLink22, expr: &oneOrMoreExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, expr: &charClassMatcher{ - pos: position{line: 2834, col: 6, offset: 94266}, + pos: position{line: 2894, col: 6, offset: 96020}, val: "[^\\r\\n[]�&<>{ ]", chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, ignoreCase: false, @@ -25148,44 +26413,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonRelativeLink25, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonRelativeLink27, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonRelativeLink30, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonRelativeLink34, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -25194,9 +26459,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -25210,33 +26475,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonRelativeLink41, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonRelativeLink46, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -25244,12 +26509,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonRelativeLink48, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -25266,7 +26531,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -25275,28 +26540,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonRelativeLink52, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonRelativeLink56, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -25305,9 +26570,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -25321,33 +26586,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonRelativeLink63, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonRelativeLink68, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -25355,12 +26620,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonRelativeLink70, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -25377,7 +26642,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -25386,28 +26651,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonRelativeLink74, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonRelativeLink78, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -25416,9 +26681,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -25432,7 +26697,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -25447,49 +26712,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonRelativeLink84, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonRelativeLink86, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonRelativeLink89, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonRelativeLink91, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonRelativeLink95, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -25499,12 +26764,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonRelativeLink99, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -25513,27 +26778,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonRelativeLink105, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -25541,9 +26806,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -25554,44 +26819,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonRelativeLink110, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonRelativeLink112, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonRelativeLink115, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonRelativeLink119, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -25600,9 +26865,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -25616,33 +26881,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonRelativeLink126, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonRelativeLink131, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -25650,12 +26915,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonRelativeLink133, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -25672,7 +26937,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -25681,28 +26946,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonRelativeLink137, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonRelativeLink141, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -25711,9 +26976,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -25727,33 +26992,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonRelativeLink148, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonRelativeLink153, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -25761,12 +27026,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonRelativeLink155, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -25783,7 +27048,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -25792,28 +27057,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonRelativeLink159, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonRelativeLink163, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -25822,9 +27087,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -25838,7 +27103,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -25853,10 +27118,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonRelativeLink169, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -25867,7 +27132,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -25876,27 +27141,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonRelativeLink172, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonRelativeLink176, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -25906,7 +27171,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -25918,10 +27183,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonRelativeLink180, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -25935,10 +27200,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, run: (*parser).callonRelativeLink182, expr: &litMatcher{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, val: "{", ignoreCase: false, want: "\"{\"", @@ -25950,27 +27215,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonRelativeLink184, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonRelativeLink188, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -25980,7 +27245,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -25997,10 +27262,10 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1205, col: 40, offset: 40554}, + pos: position{line: 1266, col: 40, offset: 42341}, label: "inlineAttributes", expr: &ruleRefExpr{ - pos: position{line: 1205, col: 58, offset: 40572}, + pos: position{line: 1266, col: 58, offset: 42359}, name: "InlineAttributes", }, }, @@ -26010,63 +27275,63 @@ var g = &grammar{ }, { name: "ExternalLink", - pos: position{line: 1209, col: 1, offset: 40694}, + pos: position{line: 1270, col: 1, offset: 42481}, expr: &actionExpr{ - pos: position{line: 1209, col: 17, offset: 40710}, + pos: position{line: 1270, col: 17, offset: 42497}, run: (*parser).callonExternalLink1, expr: &seqExpr{ - pos: position{line: 1209, col: 17, offset: 40710}, + pos: position{line: 1270, col: 17, offset: 42497}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1209, col: 17, offset: 40710}, + pos: position{line: 1270, col: 17, offset: 42497}, label: "url", expr: &actionExpr{ - pos: position{line: 2829, col: 23, offset: 94107}, + pos: position{line: 2889, col: 23, offset: 95861}, run: (*parser).callonExternalLink4, expr: &seqExpr{ - pos: position{line: 2829, col: 23, offset: 94107}, + pos: position{line: 2889, col: 23, offset: 95861}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2829, col: 23, offset: 94107}, + pos: position{line: 2889, col: 23, offset: 95861}, expr: &litMatcher{ - pos: position{line: 2829, col: 24, offset: 94108}, + pos: position{line: 2889, col: 24, offset: 95862}, val: "[", ignoreCase: false, want: "\"[\"", }, }, &labeledExpr{ - pos: position{line: 2829, col: 28, offset: 94112}, + pos: position{line: 2889, col: 28, offset: 95866}, label: "scheme", expr: &choiceExpr{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2846, col: 11, offset: 94642}, + pos: position{line: 2905, col: 11, offset: 96368}, val: "http://", ignoreCase: false, want: "\"http://\"", }, &litMatcher{ - pos: position{line: 2846, col: 23, offset: 94654}, + pos: position{line: 2905, col: 23, offset: 96380}, val: "https://", ignoreCase: false, want: "\"https://\"", }, &litMatcher{ - pos: position{line: 2846, col: 36, offset: 94667}, + pos: position{line: 2905, col: 36, offset: 96393}, val: "ftp://", ignoreCase: false, want: "\"ftp://\"", }, &litMatcher{ - pos: position{line: 2846, col: 47, offset: 94678}, + pos: position{line: 2905, col: 47, offset: 96404}, val: "irc://", ignoreCase: false, want: "\"irc://\"", }, &litMatcher{ - pos: position{line: 2846, col: 58, offset: 94689}, + pos: position{line: 2905, col: 58, offset: 96415}, val: "mailto:", ignoreCase: false, want: "\"mailto:\"", @@ -26075,31 +27340,31 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2829, col: 44, offset: 94128}, + pos: position{line: 2889, col: 44, offset: 95882}, label: "path", expr: &oneOrMoreExpr{ - pos: position{line: 2829, col: 49, offset: 94133}, + pos: position{line: 2889, col: 49, offset: 95887}, expr: &choiceExpr{ - pos: position{line: 2829, col: 50, offset: 94134}, + pos: position{line: 2889, col: 50, offset: 95888}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, run: (*parser).callonExternalLink18, expr: &labeledExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2833, col: 22, offset: 94259}, + pos: position{line: 2893, col: 22, offset: 96013}, expr: &choiceExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, run: (*parser).callonExternalLink22, expr: &oneOrMoreExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, expr: &charClassMatcher{ - pos: position{line: 2834, col: 6, offset: 94266}, + pos: position{line: 2894, col: 6, offset: 96020}, val: "[^\\r\\n[]�&<>{ ]", chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, ignoreCase: false, @@ -26108,44 +27373,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonExternalLink25, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonExternalLink27, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonExternalLink30, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonExternalLink34, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -26154,9 +27419,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -26170,33 +27435,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonExternalLink41, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonExternalLink46, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -26204,12 +27469,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonExternalLink48, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -26226,7 +27491,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -26235,28 +27500,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonExternalLink52, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonExternalLink56, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -26265,9 +27530,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -26281,33 +27546,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonExternalLink63, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonExternalLink68, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -26315,12 +27580,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonExternalLink70, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -26337,7 +27602,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -26346,28 +27611,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonExternalLink74, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonExternalLink78, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -26376,9 +27641,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -26392,7 +27657,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -26407,49 +27672,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonExternalLink84, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonExternalLink86, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonExternalLink89, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonExternalLink91, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonExternalLink95, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -26459,12 +27724,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonExternalLink99, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -26473,27 +27738,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonExternalLink105, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -26501,9 +27766,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -26514,44 +27779,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonExternalLink110, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonExternalLink112, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonExternalLink115, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonExternalLink119, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -26560,9 +27825,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -26576,33 +27841,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonExternalLink126, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonExternalLink131, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -26610,12 +27875,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonExternalLink133, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -26632,7 +27897,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -26641,28 +27906,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonExternalLink137, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonExternalLink141, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -26671,9 +27936,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -26687,33 +27952,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonExternalLink148, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonExternalLink153, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -26721,12 +27986,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonExternalLink155, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -26743,7 +28008,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -26752,28 +28017,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonExternalLink159, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonExternalLink163, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -26782,9 +28047,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -26798,7 +28063,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -26813,10 +28078,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonExternalLink169, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -26827,7 +28092,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -26836,27 +28101,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonExternalLink172, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonExternalLink176, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -26866,7 +28131,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -26878,10 +28143,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonExternalLink180, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -26895,10 +28160,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, run: (*parser).callonExternalLink182, expr: &litMatcher{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, val: "{", ignoreCase: false, want: "\"{\"", @@ -26910,27 +28175,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonExternalLink184, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonExternalLink188, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -26940,7 +28205,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -26957,12 +28222,12 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1209, col: 42, offset: 40735}, + pos: position{line: 1270, col: 42, offset: 42522}, label: "inlineAttributes", expr: &zeroOrOneExpr{ - pos: position{line: 1209, col: 59, offset: 40752}, + pos: position{line: 1270, col: 59, offset: 42539}, expr: &ruleRefExpr{ - pos: position{line: 1209, col: 60, offset: 40753}, + pos: position{line: 1270, col: 60, offset: 42540}, name: "InlineAttributes", }, }, @@ -26973,41 +28238,41 @@ var g = &grammar{ }, { name: "ListElements", - pos: position{line: 1217, col: 1, offset: 41113}, + pos: position{line: 1278, col: 1, offset: 42900}, expr: &actionExpr{ - pos: position{line: 1218, col: 5, offset: 41134}, + pos: position{line: 1279, col: 5, offset: 42921}, run: (*parser).callonListElements1, expr: &seqExpr{ - pos: position{line: 1218, col: 5, offset: 41134}, + pos: position{line: 1279, col: 5, offset: 42921}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1218, col: 5, offset: 41134}, + pos: position{line: 1279, col: 5, offset: 42921}, label: "firstElement", expr: &choiceExpr{ - pos: position{line: 1224, col: 5, offset: 41336}, + pos: position{line: 1285, col: 5, offset: 43123}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, run: (*parser).callonListElements5, expr: &seqExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, label: "prefix", expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, run: (*parser).callonListElements8, expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27016,27 +28281,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, + pos: position{line: 1420, col: 12, offset: 47330}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, run: (*parser).callonListElements15, expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, label: "depth", expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, run: (*parser).callonListElements18, expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, + pos: position{line: 1422, col: 17, offset: 47401}, val: ".", ignoreCase: false, want: "\".\"", @@ -27045,22 +28310,22 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, + pos: position{line: 1426, col: 9, offset: 47501}, run: (*parser).callonListElements21, }, }, }, }, &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, run: (*parser).callonListElements22, expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, + pos: position{line: 1445, col: 12, offset: 48219}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -27068,7 +28333,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, + pos: position{line: 1445, col: 20, offset: 48227}, val: ".", ignoreCase: false, want: "\".\"", @@ -27077,20 +28342,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, run: (*parser).callonListElements27, expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, + pos: position{line: 1447, col: 14, offset: 48345}, val: "[a-z]", ranges: []rune{'a', 'z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, + pos: position{line: 1447, col: 21, offset: 48352}, val: ".", ignoreCase: false, want: "\".\"", @@ -27099,20 +28364,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, run: (*parser).callonListElements31, expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, + pos: position{line: 1449, col: 14, offset: 48473}, val: "[A-Z]", ranges: []rune{'A', 'Z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, + pos: position{line: 1449, col: 21, offset: 48480}, val: ".", ignoreCase: false, want: "\".\"", @@ -27121,15 +28386,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, run: (*parser).callonListElements35, expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, + pos: position{line: 1451, col: 14, offset: 48601}, val: "[ivxdlcm]", chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, ignoreCase: false, @@ -27137,7 +28402,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, + pos: position{line: 1451, col: 26, offset: 48613}, val: ")", ignoreCase: false, want: "\")\"", @@ -27146,15 +28411,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, run: (*parser).callonListElements40, expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, + pos: position{line: 1453, col: 14, offset: 48734}, val: "[IVXDLCM]", chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, ignoreCase: false, @@ -27162,7 +28427,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, + pos: position{line: 1453, col: 26, offset: 48746}, val: ")", ignoreCase: false, want: "\")\"", @@ -27174,12 +28439,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonListElements45, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27192,24 +28457,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1354, col: 5, offset: 45391}, + pos: position{line: 1414, col: 5, offset: 47154}, label: "content", expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, run: (*parser).callonListElements49, expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, label: "rawline", expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, run: (*parser).callonListElements52, expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -27219,28 +28484,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements56, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -27249,9 +28514,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -27264,27 +28529,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, + pos: position{line: 1463, col: 5, offset: 49012}, run: (*parser).callonListElements63, expr: &seqExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, + pos: position{line: 1463, col: 5, offset: 49012}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, + pos: position{line: 1463, col: 5, offset: 49012}, label: "prefix", expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, run: (*parser).callonListElements66, expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements69, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27293,27 +28558,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, + pos: position{line: 1470, col: 12, offset: 49292}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, + pos: position{line: 1470, col: 20, offset: 49300}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, run: (*parser).callonListElements73, expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, label: "depth", expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, + pos: position{line: 1472, col: 16, offset: 49364}, run: (*parser).callonListElements76, expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, + pos: position{line: 1472, col: 16, offset: 49364}, expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, + pos: position{line: 1472, col: 17, offset: 49365}, val: "*", ignoreCase: false, want: "\"*\"", @@ -27322,20 +28587,20 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, + pos: position{line: 1476, col: 9, offset: 49465}, run: (*parser).callonListElements79, }, }, }, }, &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, + pos: position{line: 1493, col: 14, offset: 50172}, label: "depth", expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, + pos: position{line: 1493, col: 21, offset: 50179}, run: (*parser).callonListElements81, expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, + pos: position{line: 1493, col: 22, offset: 50180}, val: "-", ignoreCase: false, want: "\"-\"", @@ -27346,12 +28611,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonListElements83, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27364,56 +28629,56 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1404, col: 5, offset: 47290}, + pos: position{line: 1464, col: 5, offset: 49053}, label: "checkstyle", expr: &zeroOrOneExpr{ - pos: position{line: 1404, col: 16, offset: 47301}, + pos: position{line: 1464, col: 16, offset: 49064}, expr: &actionExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, + pos: position{line: 1500, col: 5, offset: 50341}, run: (*parser).callonListElements88, expr: &seqExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, + pos: position{line: 1500, col: 5, offset: 50341}, exprs: []interface{}{ &andExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, + pos: position{line: 1500, col: 5, offset: 50341}, expr: &litMatcher{ - pos: position{line: 1440, col: 6, offset: 48579}, + pos: position{line: 1500, col: 6, offset: 50342}, val: "[", ignoreCase: false, want: "\"[\"", }, }, &labeledExpr{ - pos: position{line: 1440, col: 10, offset: 48583}, + pos: position{line: 1500, col: 10, offset: 50346}, label: "style", expr: &choiceExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, + pos: position{line: 1501, col: 7, offset: 50360}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, + pos: position{line: 1501, col: 7, offset: 50360}, run: (*parser).callonListElements94, expr: &litMatcher{ - pos: position{line: 1441, col: 7, offset: 48597}, + pos: position{line: 1501, col: 7, offset: 50360}, val: "[ ]", ignoreCase: false, want: "\"[ ]\"", }, }, &actionExpr{ - pos: position{line: 1442, col: 7, offset: 48642}, + pos: position{line: 1502, col: 7, offset: 50405}, run: (*parser).callonListElements96, expr: &litMatcher{ - pos: position{line: 1442, col: 7, offset: 48642}, + pos: position{line: 1502, col: 7, offset: 50405}, val: "[*]", ignoreCase: false, want: "\"[*]\"", }, }, &actionExpr{ - pos: position{line: 1443, col: 7, offset: 48685}, + pos: position{line: 1503, col: 7, offset: 50448}, run: (*parser).callonListElements98, expr: &litMatcher{ - pos: position{line: 1443, col: 7, offset: 48685}, + pos: position{line: 1503, col: 7, offset: 50448}, val: "[x]", ignoreCase: false, want: "\"[x]\"", @@ -27423,12 +28688,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonListElements100, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27442,24 +28707,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1405, col: 5, offset: 47340}, + pos: position{line: 1465, col: 5, offset: 49103}, label: "content", expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, run: (*parser).callonListElements104, expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, label: "rawline", expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, run: (*parser).callonListElements107, expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -27469,28 +28734,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements111, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -27499,9 +28764,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -27514,36 +28779,36 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, + pos: position{line: 1570, col: 5, offset: 52297}, run: (*parser).callonListElements118, expr: &seqExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, + pos: position{line: 1570, col: 5, offset: 52297}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, + pos: position{line: 1570, col: 5, offset: 52297}, label: "ref", expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, run: (*parser).callonListElements121, expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, val: "<", ignoreCase: false, want: "\"<\"", }, &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, + pos: position{line: 1576, col: 9, offset: 52502}, label: "ref", expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, run: (*parser).callonListElements125, expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -27553,18 +28818,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, + pos: position{line: 1576, col: 62, offset: 52555}, val: ">", ignoreCase: false, want: "\">\"", }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonListElements129, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27577,24 +28842,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1511, col: 5, offset: 50570}, + pos: position{line: 1571, col: 5, offset: 52333}, label: "description", expr: &actionExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, + pos: position{line: 1581, col: 5, offset: 52681}, run: (*parser).callonListElements133, expr: &seqExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, + pos: position{line: 1581, col: 5, offset: 52681}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, + pos: position{line: 1581, col: 5, offset: 52681}, label: "rawline", expr: &actionExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, + pos: position{line: 1581, col: 14, offset: 52690}, run: (*parser).callonListElements136, expr: &oneOrMoreExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, + pos: position{line: 1581, col: 14, offset: 52690}, expr: &charClassMatcher{ - pos: position{line: 1521, col: 14, offset: 50927}, + pos: position{line: 1581, col: 14, offset: 52690}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -27604,28 +28869,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements140, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -27634,9 +28899,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -27649,40 +28914,40 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, + pos: position{line: 1512, col: 5, offset: 50641}, run: (*parser).callonListElements147, expr: &seqExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, + pos: position{line: 1512, col: 5, offset: 50641}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, + pos: position{line: 1512, col: 5, offset: 50641}, label: "term", expr: &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 1520, col: 5, offset: 50900}, run: (*parser).callonListElements150, expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 1520, col: 5, offset: 50900}, expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, run: (*parser).callonListElements154, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, run: (*parser).callonListElements157, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -27691,7 +28956,7 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, + pos: position{line: 1528, col: 5, offset: 51101}, run: (*parser).callonListElements160, }, }, @@ -27699,30 +28964,30 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, + pos: position{line: 1520, col: 35, offset: 50930}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements163, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -27731,16 +28996,16 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &anyMatcher{ - line: 1460, col: 40, offset: 49172, + line: 1520, col: 40, offset: 50935, }, }, }, @@ -27748,24 +29013,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1453, col: 5, offset: 48913}, + pos: position{line: 1513, col: 5, offset: 50676}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, run: (*parser).callonListElements172, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, run: (*parser).callonListElements175, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -27774,7 +29039,7 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, + pos: position{line: 1528, col: 5, offset: 51101}, run: (*parser).callonListElements178, }, }, @@ -27782,24 +29047,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1454, col: 5, offset: 48958}, + pos: position{line: 1514, col: 5, offset: 50721}, label: "description", expr: &choiceExpr{ - pos: position{line: 1476, col: 5, offset: 49588}, + pos: position{line: 1536, col: 5, offset: 51351}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, + pos: position{line: 1538, col: 9, offset: 51416}, run: (*parser).callonListElements181, expr: &seqExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, + pos: position{line: 1538, col: 9, offset: 51416}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, + pos: position{line: 1538, col: 9, offset: 51416}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements184, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27808,28 +29073,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements187, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -27838,37 +29103,37 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 1479, col: 9, offset: 49673}, + pos: position{line: 1539, col: 9, offset: 51436}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, run: (*parser).callonListElements195, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements201, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27877,28 +29142,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements204, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -27907,9 +29172,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -27919,40 +29184,40 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1480, col: 9, offset: 49693}, + pos: position{line: 1540, col: 9, offset: 51456}, label: "content", expr: &zeroOrOneExpr{ - pos: position{line: 1480, col: 17, offset: 49701}, + pos: position{line: 1540, col: 17, offset: 51464}, expr: &actionExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, + pos: position{line: 1339, col: 5, offset: 44919}, run: (*parser).callonListElements213, expr: &seqExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, + pos: position{line: 1339, col: 5, offset: 44919}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1278, col: 5, offset: 43132}, + pos: position{line: 1339, col: 5, offset: 44919}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, run: (*parser).callonListElements216, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements222, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -27961,28 +29226,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements225, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -27991,9 +29256,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -28003,23 +29268,23 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1279, col: 5, offset: 43147}, + pos: position{line: 1340, col: 5, offset: 44934}, expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, + pos: position{line: 1372, col: 38, offset: 45848}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements236, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -28028,25 +29293,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements238, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -28058,20 +29323,20 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1280, col: 5, offset: 43182}, + pos: position{line: 1341, col: 5, offset: 44969}, expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, run: (*parser).callonListElements244, expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements247, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -28080,27 +29345,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, + pos: position{line: 1420, col: 12, offset: 47330}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, run: (*parser).callonListElements251, expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, label: "depth", expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, run: (*parser).callonListElements254, expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, + pos: position{line: 1422, col: 17, offset: 47401}, val: ".", ignoreCase: false, want: "\".\"", @@ -28109,22 +29374,22 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, + pos: position{line: 1426, col: 9, offset: 47501}, run: (*parser).callonListElements257, }, }, }, }, &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, run: (*parser).callonListElements258, expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, + pos: position{line: 1445, col: 12, offset: 48219}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -28132,7 +29397,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, + pos: position{line: 1445, col: 20, offset: 48227}, val: ".", ignoreCase: false, want: "\".\"", @@ -28141,20 +29406,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, run: (*parser).callonListElements263, expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, + pos: position{line: 1447, col: 14, offset: 48345}, val: "[a-z]", ranges: []rune{'a', 'z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, + pos: position{line: 1447, col: 21, offset: 48352}, val: ".", ignoreCase: false, want: "\".\"", @@ -28163,20 +29428,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, run: (*parser).callonListElements267, expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, + pos: position{line: 1449, col: 14, offset: 48473}, val: "[A-Z]", ranges: []rune{'A', 'Z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, + pos: position{line: 1449, col: 21, offset: 48480}, val: ".", ignoreCase: false, want: "\".\"", @@ -28185,15 +29450,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, run: (*parser).callonListElements271, expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, + pos: position{line: 1451, col: 14, offset: 48601}, val: "[ivxdlcm]", chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, ignoreCase: false, @@ -28201,7 +29466,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, + pos: position{line: 1451, col: 26, offset: 48613}, val: ")", ignoreCase: false, want: "\")\"", @@ -28210,15 +29475,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, run: (*parser).callonListElements276, expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, + pos: position{line: 1453, col: 14, offset: 48734}, val: "[IVXDLCM]", chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, ignoreCase: false, @@ -28226,7 +29491,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, + pos: position{line: 1453, col: 26, offset: 48746}, val: ")", ignoreCase: false, want: "\")\"", @@ -28238,12 +29503,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonListElements281, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -28256,20 +29521,20 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1281, col: 5, offset: 43212}, + pos: position{line: 1342, col: 5, offset: 44999}, expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, run: (*parser).callonListElements285, expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements288, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -28278,27 +29543,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, + pos: position{line: 1470, col: 12, offset: 49292}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, + pos: position{line: 1470, col: 20, offset: 49300}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, run: (*parser).callonListElements292, expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, label: "depth", expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, + pos: position{line: 1472, col: 16, offset: 49364}, run: (*parser).callonListElements295, expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, + pos: position{line: 1472, col: 16, offset: 49364}, expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, + pos: position{line: 1472, col: 17, offset: 49365}, val: "*", ignoreCase: false, want: "\"*\"", @@ -28307,20 +29572,20 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, + pos: position{line: 1476, col: 9, offset: 49465}, run: (*parser).callonListElements298, }, }, }, }, &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, + pos: position{line: 1493, col: 14, offset: 50172}, label: "depth", expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, + pos: position{line: 1493, col: 21, offset: 50179}, run: (*parser).callonListElements300, expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, + pos: position{line: 1493, col: 22, offset: 50180}, val: "-", ignoreCase: false, want: "\"-\"", @@ -28331,12 +29596,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonListElements302, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -28349,29 +29614,29 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1282, col: 5, offset: 43244}, + pos: position{line: 1343, col: 5, offset: 45031}, expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, run: (*parser).callonListElements306, expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, val: "<", ignoreCase: false, want: "\"<\"", }, &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, + pos: position{line: 1576, col: 9, offset: 52502}, label: "ref", expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, run: (*parser).callonListElements310, expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -28381,18 +29646,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, + pos: position{line: 1576, col: 62, offset: 52555}, val: ">", ignoreCase: false, want: "\">\"", }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonListElements314, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -28405,36 +29670,36 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1283, col: 5, offset: 43274}, + pos: position{line: 1344, col: 5, offset: 45061}, expr: &seqExpr{ - pos: position{line: 1283, col: 7, offset: 43276}, + pos: position{line: 1344, col: 7, offset: 45063}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 1520, col: 5, offset: 50900}, run: (*parser).callonListElements319, expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 1520, col: 5, offset: 50900}, expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, run: (*parser).callonListElements323, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, run: (*parser).callonListElements326, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -28443,7 +29708,7 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, + pos: position{line: 1528, col: 5, offset: 51101}, run: (*parser).callonListElements329, }, }, @@ -28451,30 +29716,30 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, + pos: position{line: 1520, col: 35, offset: 50930}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonListElements332, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -28483,37 +29748,37 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &anyMatcher{ - line: 1460, col: 40, offset: 49172, + line: 1520, col: 40, offset: 50935, }, }, }, }, }, &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, run: (*parser).callonListElements340, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, run: (*parser).callonListElements343, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -28522,7 +29787,7 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, + pos: position{line: 1528, col: 5, offset: 51101}, run: (*parser).callonListElements346, }, }, @@ -28532,17 +29797,17 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1284, col: 5, offset: 43332}, + pos: position{line: 1345, col: 5, offset: 45119}, expr: &actionExpr{ - pos: position{line: 494, col: 5, offset: 16393}, + pos: position{line: 635, col: 5, offset: 20992}, run: (*parser).callonListElements348, expr: &seqExpr{ - pos: position{line: 494, col: 5, offset: 16393}, + pos: position{line: 635, col: 5, offset: 20992}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 494, col: 5, offset: 16393}, + pos: position{line: 635, col: 5, offset: 20992}, expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -28551,509 +29816,541 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 495, col: 5, offset: 16423}, + pos: position{line: 636, col: 5, offset: 21022}, label: "delimiter", expr: &choiceExpr{ - pos: position{line: 496, col: 9, offset: 16443}, + pos: position{line: 637, col: 9, offset: 21042}, alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements357, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonListElements354, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElements358, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements360, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements361, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 510, col: 26, offset: 16808}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements370, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonListElements368, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElements372, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements373, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements375, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 512, col: 25, offset: 16851}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements383, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonListElements382, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonListElements386, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements389, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 514, col: 26, offset: 16894}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements396, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonListElements396, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElements400, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements399, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements403, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 516, col: 26, offset: 16938}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements409, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonListElements410, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElements414, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements412, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements417, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 518, col: 30, offset: 16986}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements422, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonListElements424, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElements428, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements425, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements431, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonListElements438, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElements442, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - }, - }, - }, - &seqExpr{ - pos: position{line: 520, col: 24, offset: 17028}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements435, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements438, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements445, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 522, col: 26, offset: 17072}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElements448, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonListElements452, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElements456, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements451, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements459, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, @@ -29068,15 +30365,15 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1285, col: 5, offset: 43352}, + pos: position{line: 1346, col: 5, offset: 45139}, label: "content", expr: &actionExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - run: (*parser).callonListElements459, + pos: position{line: 1346, col: 14, offset: 45148}, + run: (*parser).callonListElements467, expr: &oneOrMoreExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, + pos: position{line: 1346, col: 14, offset: 45148}, expr: &charClassMatcher{ - pos: position{line: 1285, col: 14, offset: 43361}, + pos: position{line: 1346, col: 14, offset: 45148}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -29086,28 +30383,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements463, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements471, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -29116,9 +30413,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -29132,18 +30429,18 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, - run: (*parser).callonListElements470, + pos: position{line: 1548, col: 9, offset: 51699}, + run: (*parser).callonListElements478, expr: &seqExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, + pos: position{line: 1548, col: 9, offset: 51699}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElements472, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElements480, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -29152,15 +30449,15 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1489, col: 9, offset: 49988}, + pos: position{line: 1549, col: 9, offset: 51751}, label: "content", expr: &actionExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, - run: (*parser).callonListElements476, + pos: position{line: 1549, col: 18, offset: 51760}, + run: (*parser).callonListElements484, expr: &oneOrMoreExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, + pos: position{line: 1549, col: 18, offset: 51760}, expr: &charClassMatcher{ - pos: position{line: 1489, col: 18, offset: 49997}, + pos: position{line: 1549, col: 18, offset: 51760}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -29170,28 +30467,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElements480, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElements488, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -29200,9 +30497,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -29220,10 +30517,10 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1219, col: 5, offset: 41165}, + pos: position{line: 1280, col: 5, offset: 42952}, label: "extraElements", expr: &ruleRefExpr{ - pos: position{line: 1219, col: 20, offset: 41180}, + pos: position{line: 1280, col: 20, offset: 42967}, name: "ExtraListElements", }, }, @@ -29233,17 +30530,17 @@ var g = &grammar{ }, { name: "ExtraListElements", - pos: position{line: 1229, col: 1, offset: 41435}, + pos: position{line: 1290, col: 1, offset: 43222}, expr: &actionExpr{ - pos: position{line: 1229, col: 22, offset: 41456}, + pos: position{line: 1290, col: 22, offset: 43243}, run: (*parser).callonExtraListElements1, expr: &labeledExpr{ - pos: position{line: 1229, col: 22, offset: 41456}, + pos: position{line: 1290, col: 22, offset: 43243}, label: "elements", expr: &zeroOrMoreExpr{ - pos: position{line: 1229, col: 31, offset: 41465}, + pos: position{line: 1290, col: 31, offset: 43252}, expr: &ruleRefExpr{ - pos: position{line: 1229, col: 32, offset: 41466}, + pos: position{line: 1290, col: 32, offset: 43253}, name: "ExtraListElement", }, }, @@ -29252,58 +30549,58 @@ var g = &grammar{ }, { name: "ExtraListElement", - pos: position{line: 1233, col: 1, offset: 41546}, + pos: position{line: 1294, col: 1, offset: 43333}, expr: &actionExpr{ - pos: position{line: 1234, col: 5, offset: 41685}, + pos: position{line: 1295, col: 5, offset: 43472}, run: (*parser).callonExtraListElement1, expr: &seqExpr{ - pos: position{line: 1234, col: 5, offset: 41685}, + pos: position{line: 1295, col: 5, offset: 43472}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1234, col: 5, offset: 41685}, + pos: position{line: 1295, col: 5, offset: 43472}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &labeledExpr{ - pos: position{line: 1235, col: 5, offset: 41695}, + pos: position{line: 1296, col: 5, offset: 43482}, label: "element", expr: &choiceExpr{ - pos: position{line: 1236, col: 9, offset: 41713}, + pos: position{line: 1297, col: 9, offset: 43500}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1236, col: 13, offset: 41717}, + pos: position{line: 1297, col: 13, offset: 43504}, run: (*parser).callonExtraListElement8, expr: &seqExpr{ - pos: position{line: 1236, col: 13, offset: 41717}, + pos: position{line: 1297, col: 13, offset: 43504}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1236, col: 13, offset: 41717}, + pos: position{line: 1297, col: 13, offset: 43504}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, run: (*parser).callonExtraListElement11, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonExtraListElement17, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -29312,28 +30609,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonExtraListElement20, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -29342,9 +30639,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -29354,30 +30651,30 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1237, col: 13, offset: 41741}, + pos: position{line: 1298, col: 13, offset: 43528}, label: "element", expr: &actionExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, run: (*parser).callonExtraListElement28, expr: &seqExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, label: "prefix", expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, run: (*parser).callonExtraListElement31, expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonExtraListElement34, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -29386,27 +30683,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, + pos: position{line: 1420, col: 12, offset: 47330}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, run: (*parser).callonExtraListElement38, expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, label: "depth", expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, run: (*parser).callonExtraListElement41, expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, + pos: position{line: 1422, col: 17, offset: 47401}, val: ".", ignoreCase: false, want: "\".\"", @@ -29415,22 +30712,22 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, + pos: position{line: 1426, col: 9, offset: 47501}, run: (*parser).callonExtraListElement44, }, }, }, }, &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, run: (*parser).callonExtraListElement45, expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, + pos: position{line: 1445, col: 12, offset: 48219}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -29438,7 +30735,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, + pos: position{line: 1445, col: 20, offset: 48227}, val: ".", ignoreCase: false, want: "\".\"", @@ -29447,20 +30744,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, run: (*parser).callonExtraListElement50, expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, + pos: position{line: 1447, col: 14, offset: 48345}, val: "[a-z]", ranges: []rune{'a', 'z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, + pos: position{line: 1447, col: 21, offset: 48352}, val: ".", ignoreCase: false, want: "\".\"", @@ -29469,20 +30766,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, run: (*parser).callonExtraListElement54, expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, + pos: position{line: 1449, col: 14, offset: 48473}, val: "[A-Z]", ranges: []rune{'A', 'Z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, + pos: position{line: 1449, col: 21, offset: 48480}, val: ".", ignoreCase: false, want: "\".\"", @@ -29491,15 +30788,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, run: (*parser).callonExtraListElement58, expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, + pos: position{line: 1451, col: 14, offset: 48601}, val: "[ivxdlcm]", chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, ignoreCase: false, @@ -29507,7 +30804,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, + pos: position{line: 1451, col: 26, offset: 48613}, val: ")", ignoreCase: false, want: "\")\"", @@ -29516,15 +30813,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, run: (*parser).callonExtraListElement63, expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, + pos: position{line: 1453, col: 14, offset: 48734}, val: "[IVXDLCM]", chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, ignoreCase: false, @@ -29532,7 +30829,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, + pos: position{line: 1453, col: 26, offset: 48746}, val: ")", ignoreCase: false, want: "\")\"", @@ -29544,12 +30841,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonExtraListElement68, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -29562,24 +30859,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1354, col: 5, offset: 45391}, + pos: position{line: 1414, col: 5, offset: 47154}, label: "content", expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, run: (*parser).callonExtraListElement72, expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, label: "rawline", expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, run: (*parser).callonExtraListElement75, expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -29589,28 +30886,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonExtraListElement79, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -29619,9 +30916,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -29638,47 +30935,47 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1240, col: 13, offset: 41833}, + pos: position{line: 1301, col: 13, offset: 43620}, run: (*parser).callonExtraListElement86, expr: &seqExpr{ - pos: position{line: 1240, col: 13, offset: 41833}, + pos: position{line: 1301, col: 13, offset: 43620}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1240, col: 13, offset: 41833}, + pos: position{line: 1301, col: 13, offset: 43620}, label: "attributes", expr: &oneOrMoreExpr{ - pos: position{line: 1240, col: 24, offset: 41844}, + pos: position{line: 1301, col: 24, offset: 43631}, expr: &ruleRefExpr{ - pos: position{line: 1240, col: 25, offset: 41845}, + pos: position{line: 1301, col: 25, offset: 43632}, name: "BlockAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1241, col: 13, offset: 41876}, + pos: position{line: 1302, col: 13, offset: 43663}, label: "element", expr: &actionExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, run: (*parser).callonExtraListElement92, expr: &seqExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 1413, col: 5, offset: 47115}, label: "prefix", expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, run: (*parser).callonExtraListElement95, expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonExtraListElement98, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -29687,27 +30984,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, + pos: position{line: 1420, col: 12, offset: 47330}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, run: (*parser).callonExtraListElement102, expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, label: "depth", expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, run: (*parser).callonExtraListElement105, expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, + pos: position{line: 1422, col: 17, offset: 47401}, val: ".", ignoreCase: false, want: "\".\"", @@ -29716,22 +31013,22 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, + pos: position{line: 1426, col: 9, offset: 47501}, run: (*parser).callonExtraListElement108, }, }, }, }, &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, run: (*parser).callonExtraListElement109, expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, + pos: position{line: 1445, col: 12, offset: 48219}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -29739,7 +31036,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, + pos: position{line: 1445, col: 20, offset: 48227}, val: ".", ignoreCase: false, want: "\".\"", @@ -29748,20 +31045,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, run: (*parser).callonExtraListElement114, expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, + pos: position{line: 1447, col: 14, offset: 48345}, val: "[a-z]", ranges: []rune{'a', 'z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, + pos: position{line: 1447, col: 21, offset: 48352}, val: ".", ignoreCase: false, want: "\".\"", @@ -29770,20 +31067,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, run: (*parser).callonExtraListElement118, expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, + pos: position{line: 1449, col: 14, offset: 48473}, val: "[A-Z]", ranges: []rune{'A', 'Z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, + pos: position{line: 1449, col: 21, offset: 48480}, val: ".", ignoreCase: false, want: "\".\"", @@ -29792,52 +31089,584 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - run: (*parser).callonExtraListElement122, + pos: position{line: 1451, col: 13, offset: 48600}, + run: (*parser).callonExtraListElement122, + expr: &seqExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + expr: &charClassMatcher{ + pos: position{line: 1451, col: 14, offset: 48601}, + val: "[ivxdlcm]", + chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1451, col: 26, offset: 48613}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + run: (*parser).callonExtraListElement127, + expr: &seqExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + expr: &charClassMatcher{ + pos: position{line: 1453, col: 14, offset: 48734}, + val: "[IVXDLCM]", + chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1453, col: 26, offset: 48746}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement132, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1414, col: 5, offset: 47154}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + run: (*parser).callonExtraListElement136, + expr: &seqExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + run: (*parser).callonExtraListElement139, + expr: &oneOrMoreExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + expr: &charClassMatcher{ + pos: position{line: 1354, col: 14, offset: 45354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement143, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1305, col: 13, offset: 43791}, + run: (*parser).callonExtraListElement150, + expr: &seqExpr{ + pos: position{line: 1305, col: 13, offset: 43791}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1305, col: 13, offset: 43791}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement153, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement159, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement162, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1306, col: 13, offset: 43815}, + label: "element", + expr: &actionExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + run: (*parser).callonExtraListElement170, + expr: &seqExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + label: "prefix", + expr: &actionExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + run: (*parser).callonExtraListElement173, + expr: &seqExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement176, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1470, col: 12, offset: 49292}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1470, col: 20, offset: 49300}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + run: (*parser).callonExtraListElement180, + expr: &seqExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + run: (*parser).callonExtraListElement183, + expr: &oneOrMoreExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + expr: &litMatcher{ + pos: position{line: 1472, col: 17, offset: 49365}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1476, col: 9, offset: 49465}, + run: (*parser).callonExtraListElement186, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1493, col: 14, offset: 50172}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1493, col: 21, offset: 50179}, + run: (*parser).callonExtraListElement188, + expr: &litMatcher{ + pos: position{line: 1493, col: 22, offset: 50180}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement190, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1464, col: 5, offset: 49053}, + label: "checkstyle", + expr: &zeroOrOneExpr{ + pos: position{line: 1464, col: 16, offset: 49064}, + expr: &actionExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + run: (*parser).callonExtraListElement195, + expr: &seqExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + exprs: []interface{}{ + &andExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + expr: &litMatcher{ + pos: position{line: 1500, col: 6, offset: 50342}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + }, + &labeledExpr{ + pos: position{line: 1500, col: 10, offset: 50346}, + label: "style", + expr: &choiceExpr{ + pos: position{line: 1501, col: 7, offset: 50360}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1501, col: 7, offset: 50360}, + run: (*parser).callonExtraListElement201, + expr: &litMatcher{ + pos: position{line: 1501, col: 7, offset: 50360}, + val: "[ ]", + ignoreCase: false, + want: "\"[ ]\"", + }, + }, + &actionExpr{ + pos: position{line: 1502, col: 7, offset: 50405}, + run: (*parser).callonExtraListElement203, + expr: &litMatcher{ + pos: position{line: 1502, col: 7, offset: 50405}, + val: "[*]", + ignoreCase: false, + want: "\"[*]\"", + }, + }, + &actionExpr{ + pos: position{line: 1503, col: 7, offset: 50448}, + run: (*parser).callonExtraListElement205, + expr: &litMatcher{ + pos: position{line: 1503, col: 7, offset: 50448}, + val: "[x]", + ignoreCase: false, + want: "\"[x]\"", + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement207, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1465, col: 5, offset: 49103}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + run: (*parser).callonExtraListElement211, + expr: &seqExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + run: (*parser).callonExtraListElement214, + expr: &oneOrMoreExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + expr: &charClassMatcher{ + pos: position{line: 1354, col: 14, offset: 45354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement218, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1309, col: 13, offset: 43909}, + run: (*parser).callonExtraListElement225, + expr: &seqExpr{ + pos: position{line: 1309, col: 13, offset: 43909}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1309, col: 13, offset: 43909}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 1309, col: 24, offset: 43920}, + expr: &ruleRefExpr{ + pos: position{line: 1309, col: 25, offset: 43921}, + name: "BlockAttributes", + }, + }, + }, + &labeledExpr{ + pos: position{line: 1310, col: 13, offset: 43952}, + label: "element", + expr: &actionExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + run: (*parser).callonExtraListElement231, + expr: &seqExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + label: "prefix", + expr: &actionExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + run: (*parser).callonExtraListElement234, + expr: &seqExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement237, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1470, col: 12, offset: 49292}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1470, col: 20, offset: 49300}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + run: (*parser).callonExtraListElement241, expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1472, col: 9, offset: 49357}, exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, + &labeledExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + run: (*parser).callonExtraListElement244, + expr: &oneOrMoreExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + expr: &litMatcher{ + pos: position{line: 1472, col: 17, offset: 49365}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, }, }, - &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, - val: ")", - ignoreCase: false, - want: "\")\"", + &andCodeExpr{ + pos: position{line: 1476, col: 9, offset: 49465}, + run: (*parser).callonExtraListElement247, }, }, }, }, - &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - run: (*parser).callonExtraListElement127, - expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, + &labeledExpr{ + pos: position{line: 1493, col: 14, offset: 50172}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1493, col: 21, offset: 50179}, + run: (*parser).callonExtraListElement249, + expr: &litMatcher{ + pos: position{line: 1493, col: 22, offset: 50180}, + val: "-", + ignoreCase: false, + want: "\"-\"", }, }, }, @@ -29845,12 +31674,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement132, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement251, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -29863,24 +31692,102 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1354, col: 5, offset: 45391}, + pos: position{line: 1464, col: 5, offset: 49053}, + label: "checkstyle", + expr: &zeroOrOneExpr{ + pos: position{line: 1464, col: 16, offset: 49064}, + expr: &actionExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + run: (*parser).callonExtraListElement256, + expr: &seqExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + exprs: []interface{}{ + &andExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + expr: &litMatcher{ + pos: position{line: 1500, col: 6, offset: 50342}, + val: "[", + ignoreCase: false, + want: "\"[\"", + }, + }, + &labeledExpr{ + pos: position{line: 1500, col: 10, offset: 50346}, + label: "style", + expr: &choiceExpr{ + pos: position{line: 1501, col: 7, offset: 50360}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1501, col: 7, offset: 50360}, + run: (*parser).callonExtraListElement262, + expr: &litMatcher{ + pos: position{line: 1501, col: 7, offset: 50360}, + val: "[ ]", + ignoreCase: false, + want: "\"[ ]\"", + }, + }, + &actionExpr{ + pos: position{line: 1502, col: 7, offset: 50405}, + run: (*parser).callonExtraListElement264, + expr: &litMatcher{ + pos: position{line: 1502, col: 7, offset: 50405}, + val: "[*]", + ignoreCase: false, + want: "\"[*]\"", + }, + }, + &actionExpr{ + pos: position{line: 1503, col: 7, offset: 50448}, + run: (*parser).callonExtraListElement266, + expr: &litMatcher{ + pos: position{line: 1503, col: 7, offset: 50448}, + val: "[x]", + ignoreCase: false, + want: "\"[x]\"", + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement268, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1465, col: 5, offset: 49103}, label: "content", expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - run: (*parser).callonExtraListElement136, + pos: position{line: 1354, col: 5, offset: 45345}, + run: (*parser).callonExtraListElement272, expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1354, col: 5, offset: 45345}, label: "rawline", expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - run: (*parser).callonExtraListElement139, + pos: position{line: 1354, col: 14, offset: 45354}, + run: (*parser).callonExtraListElement275, expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1354, col: 14, offset: 45354}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -29890,28 +31797,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement143, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement279, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -29920,9 +31827,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -29939,35 +31846,35 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1244, col: 13, offset: 42004}, - run: (*parser).callonExtraListElement150, + pos: position{line: 1313, col: 13, offset: 44082}, + run: (*parser).callonExtraListElement286, expr: &seqExpr{ - pos: position{line: 1244, col: 13, offset: 42004}, + pos: position{line: 1313, col: 13, offset: 44082}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1244, col: 13, offset: 42004}, + pos: position{line: 1313, col: 13, offset: 44082}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement153, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement289, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement159, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement295, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -29976,28 +31883,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement162, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement298, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -30006,9 +31913,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -30018,97 +31925,60 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1245, col: 13, offset: 42028}, + pos: position{line: 1314, col: 13, offset: 44106}, label: "element", expr: &actionExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, - run: (*parser).callonExtraListElement170, + pos: position{line: 1570, col: 5, offset: 52297}, + run: (*parser).callonExtraListElement306, expr: &seqExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, + pos: position{line: 1570, col: 5, offset: 52297}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, - label: "prefix", + pos: position{line: 1570, col: 5, offset: 52297}, + label: "ref", expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - run: (*parser).callonExtraListElement173, + pos: position{line: 1576, col: 5, offset: 52498}, + run: (*parser).callonExtraListElement309, expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1576, col: 5, offset: 52498}, exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement176, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + &litMatcher{ + pos: position{line: 1576, col: 5, offset: 52498}, + val: "<", + ignoreCase: false, + want: "\"<\"", }, &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - run: (*parser).callonExtraListElement180, - expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - run: (*parser).callonExtraListElement183, - expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, - run: (*parser).callonExtraListElement186, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, - run: (*parser).callonExtraListElement188, - expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, + pos: position{line: 1576, col: 9, offset: 52502}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + run: (*parser).callonExtraListElement313, + expr: &oneOrMoreExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + expr: &charClassMatcher{ + pos: position{line: 1576, col: 14, offset: 52507}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, }, }, + &litMatcher{ + pos: position{line: 1576, col: 62, offset: 52555}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement190, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement317, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -30121,102 +31991,183 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1404, col: 5, offset: 47290}, - label: "checkstyle", - expr: &zeroOrOneExpr{ - pos: position{line: 1404, col: 16, offset: 47301}, - expr: &actionExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - run: (*parser).callonExtraListElement195, - expr: &seqExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - expr: &litMatcher{ - pos: position{line: 1440, col: 6, offset: 48579}, - val: "[", - ignoreCase: false, - want: "\"[\"", + pos: position{line: 1571, col: 5, offset: 52333}, + label: "description", + expr: &actionExpr{ + pos: position{line: 1581, col: 5, offset: 52681}, + run: (*parser).callonExtraListElement321, + expr: &seqExpr{ + pos: position{line: 1581, col: 5, offset: 52681}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1581, col: 5, offset: 52681}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1581, col: 14, offset: 52690}, + run: (*parser).callonExtraListElement324, + expr: &oneOrMoreExpr{ + pos: position{line: 1581, col: 14, offset: 52690}, + expr: &charClassMatcher{ + pos: position{line: 1581, col: 14, offset: 52690}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, }, }, - &labeledExpr{ - pos: position{line: 1440, col: 10, offset: 48583}, - label: "style", - expr: &choiceExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, - run: (*parser).callonExtraListElement201, - expr: &litMatcher{ - pos: position{line: 1441, col: 7, offset: 48597}, - val: "[ ]", + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement328, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"[ ]\"", + want: "\"\\n\"", }, - }, - &actionExpr{ - pos: position{line: 1442, col: 7, offset: 48642}, - run: (*parser).callonExtraListElement203, - expr: &litMatcher{ - pos: position{line: 1442, col: 7, offset: 48642}, - val: "[*]", + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", ignoreCase: false, - want: "\"[*]\"", + want: "\"\\r\\n\"", }, - }, - &actionExpr{ - pos: position{line: 1443, col: 7, offset: 48685}, - run: (*parser).callonExtraListElement205, - expr: &litMatcher{ - pos: position{line: 1443, col: 7, offset: 48685}, - val: "[x]", + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", ignoreCase: false, - want: "\"[x]\"", + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement207, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1317, col: 13, offset: 44198}, + run: (*parser).callonExtraListElement335, + expr: &seqExpr{ + pos: position{line: 1317, col: 13, offset: 44198}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1317, col: 13, offset: 44198}, + label: "attributes", + expr: &oneOrMoreExpr{ + pos: position{line: 1317, col: 24, offset: 44209}, + expr: &ruleRefExpr{ + pos: position{line: 1317, col: 25, offset: 44210}, + name: "BlockAttributes", + }, + }, + }, + &labeledExpr{ + pos: position{line: 1318, col: 13, offset: 44241}, + label: "element", + expr: &actionExpr{ + pos: position{line: 1570, col: 5, offset: 52297}, + run: (*parser).callonExtraListElement341, + expr: &seqExpr{ + pos: position{line: 1570, col: 5, offset: 52297}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1570, col: 5, offset: 52297}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + run: (*parser).callonExtraListElement344, + expr: &seqExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1576, col: 5, offset: 52498}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1576, col: 9, offset: 52502}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + run: (*parser).callonExtraListElement348, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 1576, col: 14, offset: 52507}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + pos: position{line: 1576, col: 14, offset: 52507}, + val: "[0-9]", + ranges: []rune{'0', '9'}, ignoreCase: false, inverted: false, }, }, }, }, + &litMatcher{ + pos: position{line: 1576, col: 62, offset: 52555}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement352, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, }, }, }, }, &labeledExpr{ - pos: position{line: 1405, col: 5, offset: 47340}, - label: "content", + pos: position{line: 1571, col: 5, offset: 52333}, + label: "description", expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - run: (*parser).callonExtraListElement211, + pos: position{line: 1581, col: 5, offset: 52681}, + run: (*parser).callonExtraListElement356, expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1581, col: 5, offset: 52681}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, + pos: position{line: 1581, col: 5, offset: 52681}, label: "rawline", expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - run: (*parser).callonExtraListElement214, + pos: position{line: 1581, col: 14, offset: 52690}, + run: (*parser).callonExtraListElement359, expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1581, col: 14, offset: 52690}, expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, + pos: position{line: 1581, col: 14, offset: 52690}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -30226,28 +32177,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement218, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement363, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -30256,9 +32207,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -30274,488 +32225,1683 @@ var g = &grammar{ }, }, }, + &ruleRefExpr{ + pos: position{line: 1321, col: 11, offset: 44367}, + name: "ListElementContinuation", + }, &actionExpr{ - pos: position{line: 1248, col: 13, offset: 42122}, - run: (*parser).callonExtraListElement225, + pos: position{line: 1322, col: 13, offset: 44403}, + run: (*parser).callonExtraListElement371, expr: &seqExpr{ - pos: position{line: 1248, col: 13, offset: 42122}, + pos: position{line: 1322, col: 13, offset: 44403}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1248, col: 13, offset: 42122}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 1248, col: 24, offset: 42133}, - expr: &ruleRefExpr{ - pos: position{line: 1248, col: 25, offset: 42134}, - name: "BlockAttributes", + &zeroOrMoreExpr{ + pos: position{line: 1322, col: 13, offset: 44403}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement374, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement380, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement383, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, }, }, }, &labeledExpr{ - pos: position{line: 1249, col: 13, offset: 42165}, + pos: position{line: 1323, col: 13, offset: 44427}, label: "element", expr: &actionExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, - run: (*parser).callonExtraListElement231, + pos: position{line: 1512, col: 5, offset: 50641}, + run: (*parser).callonExtraListElement391, expr: &seqExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, + pos: position{line: 1512, col: 5, offset: 50641}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, - label: "prefix", + pos: position{line: 1512, col: 5, offset: 50641}, + label: "term", + expr: &actionExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + run: (*parser).callonExtraListElement394, + expr: &oneOrMoreExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + expr: &seqExpr{ + pos: position{line: 1520, col: 6, offset: 50901}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1520, col: 6, offset: 50901}, + expr: &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement398, + expr: &seqExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement401, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement404, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1520, col: 35, offset: 50930}, + expr: &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement407, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &anyMatcher{ + line: 1520, col: 40, offset: 50935, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1513, col: 5, offset: 50676}, + label: "separator", expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - run: (*parser).callonExtraListElement234, + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement416, expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement237, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement419, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, }, }, }, - &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - run: (*parser).callonExtraListElement241, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement422, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1514, col: 5, offset: 50721}, + label: "description", + expr: &choiceExpr{ + pos: position{line: 1536, col: 5, offset: 51351}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1538, col: 9, offset: 51416}, + run: (*parser).callonExtraListElement425, + expr: &seqExpr{ + pos: position{line: 1538, col: 9, offset: 51416}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1538, col: 9, offset: 51416}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement428, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement431, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1539, col: 9, offset: 51436}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement439, expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - label: "depth", + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - run: (*parser).callonExtraListElement244, - expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, - val: "*", - ignoreCase: false, - want: "\"*\"", + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement445, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement448, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1540, col: 9, offset: 51456}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 1540, col: 17, offset: 51464}, + expr: &actionExpr{ + pos: position{line: 1339, col: 5, offset: 44919}, + run: (*parser).callonExtraListElement457, + expr: &seqExpr{ + pos: position{line: 1339, col: 5, offset: 44919}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1339, col: 5, offset: 44919}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement460, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement466, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement469, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1340, col: 5, offset: 44934}, + expr: &seqExpr{ + pos: position{line: 1372, col: 34, offset: 45844}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1372, col: 34, offset: 45844}, + val: "+", + ignoreCase: false, + want: "\"+\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1372, col: 38, offset: 45848}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement480, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement482, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1341, col: 5, offset: 44969}, + expr: &actionExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + run: (*parser).callonExtraListElement488, + expr: &seqExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement491, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1420, col: 12, offset: 47330}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + run: (*parser).callonExtraListElement495, + expr: &seqExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + run: (*parser).callonExtraListElement498, + expr: &oneOrMoreExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + expr: &litMatcher{ + pos: position{line: 1422, col: 17, offset: 47401}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1426, col: 9, offset: 47501}, + run: (*parser).callonExtraListElement501, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + run: (*parser).callonExtraListElement502, + expr: &seqExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + expr: &charClassMatcher{ + pos: position{line: 1445, col: 12, offset: 48219}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1445, col: 20, offset: 48227}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + run: (*parser).callonExtraListElement507, + expr: &seqExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1447, col: 14, offset: 48345}, + val: "[a-z]", + ranges: []rune{'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1447, col: 21, offset: 48352}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + run: (*parser).callonExtraListElement511, + expr: &seqExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1449, col: 14, offset: 48473}, + val: "[A-Z]", + ranges: []rune{'A', 'Z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1449, col: 21, offset: 48480}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + run: (*parser).callonExtraListElement515, + expr: &seqExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + expr: &charClassMatcher{ + pos: position{line: 1451, col: 14, offset: 48601}, + val: "[ivxdlcm]", + chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1451, col: 26, offset: 48613}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + run: (*parser).callonExtraListElement520, + expr: &seqExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + expr: &charClassMatcher{ + pos: position{line: 1453, col: 14, offset: 48734}, + val: "[IVXDLCM]", + chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1453, col: 26, offset: 48746}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement525, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1342, col: 5, offset: 44999}, + expr: &actionExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + run: (*parser).callonExtraListElement529, + expr: &seqExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement532, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1470, col: 12, offset: 49292}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1470, col: 20, offset: 49300}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + run: (*parser).callonExtraListElement536, + expr: &seqExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + run: (*parser).callonExtraListElement539, + expr: &oneOrMoreExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + expr: &litMatcher{ + pos: position{line: 1472, col: 17, offset: 49365}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1476, col: 9, offset: 49465}, + run: (*parser).callonExtraListElement542, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1493, col: 14, offset: 50172}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1493, col: 21, offset: 50179}, + run: (*parser).callonExtraListElement544, + expr: &litMatcher{ + pos: position{line: 1493, col: 22, offset: 50180}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement546, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1343, col: 5, offset: 45031}, + expr: &actionExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + run: (*parser).callonExtraListElement550, + expr: &seqExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1576, col: 5, offset: 52498}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1576, col: 9, offset: 52502}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + run: (*parser).callonExtraListElement554, + expr: &oneOrMoreExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + expr: &charClassMatcher{ + pos: position{line: 1576, col: 14, offset: 52507}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1576, col: 62, offset: 52555}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement558, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, }, }, }, - }, - &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, - run: (*parser).callonExtraListElement247, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, - run: (*parser).callonExtraListElement249, - expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement251, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1404, col: 5, offset: 47290}, - label: "checkstyle", - expr: &zeroOrOneExpr{ - pos: position{line: 1404, col: 16, offset: 47301}, - expr: &actionExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - run: (*parser).callonExtraListElement256, - expr: &seqExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - expr: &litMatcher{ - pos: position{line: 1440, col: 6, offset: 48579}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 1440, col: 10, offset: 48583}, - label: "style", - expr: &choiceExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, - run: (*parser).callonExtraListElement262, - expr: &litMatcher{ - pos: position{line: 1441, col: 7, offset: 48597}, - val: "[ ]", - ignoreCase: false, - want: "\"[ ]\"", - }, - }, - &actionExpr{ - pos: position{line: 1442, col: 7, offset: 48642}, - run: (*parser).callonExtraListElement264, - expr: &litMatcher{ - pos: position{line: 1442, col: 7, offset: 48642}, - val: "[*]", - ignoreCase: false, - want: "\"[*]\"", - }, - }, - &actionExpr{ - pos: position{line: 1443, col: 7, offset: 48685}, - run: (*parser).callonExtraListElement266, - expr: &litMatcher{ - pos: position{line: 1443, col: 7, offset: 48685}, - val: "[x]", - ignoreCase: false, - want: "\"[x]\"", + ¬Expr{ + pos: position{line: 1344, col: 5, offset: 45061}, + expr: &seqExpr{ + pos: position{line: 1344, col: 7, offset: 45063}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + run: (*parser).callonExtraListElement563, + expr: &oneOrMoreExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + expr: &seqExpr{ + pos: position{line: 1520, col: 6, offset: 50901}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1520, col: 6, offset: 50901}, + expr: &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement567, + expr: &seqExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement570, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement573, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1520, col: 35, offset: 50930}, + expr: &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement576, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &anyMatcher{ + line: 1520, col: 40, offset: 50935, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement584, + expr: &seqExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement587, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement590, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1345, col: 5, offset: 45119}, + expr: &actionExpr{ + pos: position{line: 635, col: 5, offset: 20992}, + run: (*parser).callonExtraListElement592, + expr: &seqExpr{ + pos: position{line: 635, col: 5, offset: 20992}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 635, col: 5, offset: 20992}, + expr: &charClassMatcher{ + pos: position{line: 2846, col: 13, offset: 94476}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + &labeledExpr{ + pos: position{line: 636, col: 5, offset: 21022}, + label: "delimiter", + expr: &choiceExpr{ + pos: position{line: 637, col: 9, offset: 21042}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonExtraListElement598, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement602, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement605, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonExtraListElement612, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement616, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement619, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonExtraListElement626, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement630, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement633, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonExtraListElement640, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement644, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement647, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonExtraListElement654, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement658, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement661, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonExtraListElement668, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement672, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement675, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonExtraListElement682, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement686, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement689, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonExtraListElement696, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement700, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement703, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1346, col: 5, offset: 45139}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1346, col: 14, offset: 45148}, + run: (*parser).callonExtraListElement711, + expr: &oneOrMoreExpr{ + pos: position{line: 1346, col: 14, offset: 45148}, + expr: &charClassMatcher{ + pos: position{line: 1346, col: 14, offset: 45148}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement715, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, }, }, }, }, }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement268, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, }, }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1405, col: 5, offset: 47340}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - run: (*parser).callonExtraListElement272, - expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - run: (*parser).callonExtraListElement275, - expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, + &actionExpr{ + pos: position{line: 1548, col: 9, offset: 51699}, + run: (*parser).callonExtraListElement722, + expr: &seqExpr{ + pos: position{line: 1548, col: 9, offset: 51699}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement724, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement279, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + &labeledExpr{ + pos: position{line: 1549, col: 9, offset: 51751}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1549, col: 18, offset: 51760}, + run: (*parser).callonExtraListElement728, + expr: &oneOrMoreExpr{ + pos: position{line: 1549, col: 18, offset: 51760}, + expr: &charClassMatcher{ + pos: position{line: 1549, col: 18, offset: 51760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - want: "\"\\r\"", + inverted: true, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1252, col: 13, offset: 42295}, - run: (*parser).callonExtraListElement286, - expr: &seqExpr{ - pos: position{line: 1252, col: 13, offset: 42295}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1252, col: 13, offset: 42295}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement289, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement295, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement298, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1253, col: 13, offset: 42319}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - run: (*parser).callonExtraListElement306, - expr: &seqExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - run: (*parser).callonExtraListElement309, - expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - run: (*parser).callonExtraListElement313, - expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement317, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1511, col: 5, offset: 50570}, - label: "description", - expr: &actionExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - run: (*parser).callonExtraListElement321, - expr: &seqExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, - run: (*parser).callonExtraListElement324, - expr: &oneOrMoreExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, - expr: &charClassMatcher{ - pos: position{line: 1521, col: 14, offset: 50927}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement328, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement732, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, @@ -30770,285 +33916,60 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1256, col: 13, offset: 42411}, - run: (*parser).callonExtraListElement335, + pos: position{line: 1326, col: 13, offset: 44519}, + run: (*parser).callonExtraListElement739, expr: &seqExpr{ - pos: position{line: 1256, col: 13, offset: 42411}, + pos: position{line: 1326, col: 13, offset: 44519}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1256, col: 13, offset: 42411}, + pos: position{line: 1326, col: 13, offset: 44519}, label: "attributes", expr: &oneOrMoreExpr{ - pos: position{line: 1256, col: 24, offset: 42422}, + pos: position{line: 1326, col: 24, offset: 44530}, expr: &ruleRefExpr{ - pos: position{line: 1256, col: 25, offset: 42423}, + pos: position{line: 1326, col: 25, offset: 44531}, name: "BlockAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1257, col: 13, offset: 42454}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - run: (*parser).callonExtraListElement341, - expr: &seqExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - run: (*parser).callonExtraListElement344, - expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - run: (*parser).callonExtraListElement348, - expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement352, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1511, col: 5, offset: 50570}, - label: "description", - expr: &actionExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - run: (*parser).callonExtraListElement356, - expr: &seqExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, - run: (*parser).callonExtraListElement359, - expr: &oneOrMoreExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, - expr: &charClassMatcher{ - pos: position{line: 1521, col: 14, offset: 50927}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement363, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &ruleRefExpr{ - pos: position{line: 1260, col: 11, offset: 42580}, - name: "ListElementContinuation", - }, - &actionExpr{ - pos: position{line: 1261, col: 13, offset: 42616}, - run: (*parser).callonExtraListElement371, - expr: &seqExpr{ - pos: position{line: 1261, col: 13, offset: 42616}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1261, col: 13, offset: 42616}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement374, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement380, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement383, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1262, col: 13, offset: 42640}, + pos: position{line: 1327, col: 13, offset: 44562}, label: "element", expr: &actionExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, - run: (*parser).callonExtraListElement391, + pos: position{line: 1512, col: 5, offset: 50641}, + run: (*parser).callonExtraListElement745, expr: &seqExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, + pos: position{line: 1512, col: 5, offset: 50641}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, + pos: position{line: 1512, col: 5, offset: 50641}, label: "term", expr: &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - run: (*parser).callonExtraListElement394, + pos: position{line: 1520, col: 5, offset: 50900}, + run: (*parser).callonExtraListElement748, expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 1520, col: 5, offset: 50900}, expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement398, + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement752, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement401, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement755, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -31057,38 +33978,38 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement404, + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement758, }, }, }, }, }, ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, + pos: position{line: 1520, col: 35, offset: 50930}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement407, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement761, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -31097,16 +34018,16 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &anyMatcher{ - line: 1460, col: 40, offset: 49172, + line: 1520, col: 40, offset: 50935, }, }, }, @@ -31114,24 +34035,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1453, col: 5, offset: 48913}, + pos: position{line: 1513, col: 5, offset: 50676}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement416, + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement770, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement419, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement773, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -31140,32 +34061,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement422, + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement776, }, }, }, }, }, &labeledExpr{ - pos: position{line: 1454, col: 5, offset: 48958}, + pos: position{line: 1514, col: 5, offset: 50721}, label: "description", expr: &choiceExpr{ - pos: position{line: 1476, col: 5, offset: 49588}, + pos: position{line: 1536, col: 5, offset: 51351}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, - run: (*parser).callonExtraListElement425, + pos: position{line: 1538, col: 9, offset: 51416}, + run: (*parser).callonExtraListElement779, expr: &seqExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, + pos: position{line: 1538, col: 9, offset: 51416}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, + pos: position{line: 1538, col: 9, offset: 51416}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement428, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement782, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31174,28 +34095,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement431, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement785, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -31204,37 +34125,37 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 1479, col: 9, offset: 49673}, + pos: position{line: 1539, col: 9, offset: 51436}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement439, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement793, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement445, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement799, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31243,28 +34164,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement448, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement802, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -31273,9 +34194,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -31285,40 +34206,40 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1480, col: 9, offset: 49693}, + pos: position{line: 1540, col: 9, offset: 51456}, label: "content", expr: &zeroOrOneExpr{ - pos: position{line: 1480, col: 17, offset: 49701}, + pos: position{line: 1540, col: 17, offset: 51464}, expr: &actionExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, - run: (*parser).callonExtraListElement457, + pos: position{line: 1339, col: 5, offset: 44919}, + run: (*parser).callonExtraListElement811, expr: &seqExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, + pos: position{line: 1339, col: 5, offset: 44919}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1278, col: 5, offset: 43132}, + pos: position{line: 1339, col: 5, offset: 44919}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement460, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement814, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement466, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement820, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31327,28 +34248,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement469, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement823, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -31357,9 +34278,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -31369,23 +34290,23 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1279, col: 5, offset: 43147}, + pos: position{line: 1340, col: 5, offset: 44934}, expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, + pos: position{line: 1372, col: 38, offset: 45848}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement480, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement834, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31394,25 +34315,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement482, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement836, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -31424,20 +34345,20 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1280, col: 5, offset: 43182}, + pos: position{line: 1341, col: 5, offset: 44969}, expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - run: (*parser).callonExtraListElement488, + pos: position{line: 1420, col: 5, offset: 47323}, + run: (*parser).callonExtraListElement842, expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement491, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement845, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31446,27 +34367,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, + pos: position{line: 1420, col: 12, offset: 47330}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - run: (*parser).callonExtraListElement495, + pos: position{line: 1422, col: 9, offset: 47393}, + run: (*parser).callonExtraListElement849, expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, label: "depth", expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - run: (*parser).callonExtraListElement498, + pos: position{line: 1422, col: 16, offset: 47400}, + run: (*parser).callonExtraListElement852, expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, + pos: position{line: 1422, col: 17, offset: 47401}, val: ".", ignoreCase: false, want: "\".\"", @@ -31475,22 +34396,22 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, - run: (*parser).callonExtraListElement501, + pos: position{line: 1426, col: 9, offset: 47501}, + run: (*parser).callonExtraListElement855, }, }, }, }, &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - run: (*parser).callonExtraListElement502, + pos: position{line: 1445, col: 11, offset: 48218}, + run: (*parser).callonExtraListElement856, expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, + pos: position{line: 1445, col: 12, offset: 48219}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -31498,7 +34419,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, + pos: position{line: 1445, col: 20, offset: 48227}, val: ".", ignoreCase: false, want: "\".\"", @@ -31507,20 +34428,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - run: (*parser).callonExtraListElement507, + pos: position{line: 1447, col: 13, offset: 48344}, + run: (*parser).callonExtraListElement861, expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, + pos: position{line: 1447, col: 14, offset: 48345}, val: "[a-z]", ranges: []rune{'a', 'z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, + pos: position{line: 1447, col: 21, offset: 48352}, val: ".", ignoreCase: false, want: "\".\"", @@ -31529,20 +34450,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - run: (*parser).callonExtraListElement511, + pos: position{line: 1449, col: 13, offset: 48472}, + run: (*parser).callonExtraListElement865, expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, + pos: position{line: 1449, col: 14, offset: 48473}, val: "[A-Z]", ranges: []rune{'A', 'Z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, + pos: position{line: 1449, col: 21, offset: 48480}, val: ".", ignoreCase: false, want: "\".\"", @@ -31551,15 +34472,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - run: (*parser).callonExtraListElement515, + pos: position{line: 1451, col: 13, offset: 48600}, + run: (*parser).callonExtraListElement869, expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, + pos: position{line: 1451, col: 14, offset: 48601}, val: "[ivxdlcm]", chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, ignoreCase: false, @@ -31567,7 +34488,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, + pos: position{line: 1451, col: 26, offset: 48613}, val: ")", ignoreCase: false, want: "\")\"", @@ -31576,15 +34497,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - run: (*parser).callonExtraListElement520, + pos: position{line: 1453, col: 13, offset: 48733}, + run: (*parser).callonExtraListElement874, expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, + pos: position{line: 1453, col: 14, offset: 48734}, val: "[IVXDLCM]", chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, ignoreCase: false, @@ -31592,7 +34513,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, + pos: position{line: 1453, col: 26, offset: 48746}, val: ")", ignoreCase: false, want: "\")\"", @@ -31604,12 +34525,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement525, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement879, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31622,20 +34543,20 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1281, col: 5, offset: 43212}, + pos: position{line: 1342, col: 5, offset: 44999}, expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - run: (*parser).callonExtraListElement529, + pos: position{line: 1470, col: 5, offset: 49285}, + run: (*parser).callonExtraListElement883, expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement532, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement886, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31644,27 +34565,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, + pos: position{line: 1470, col: 12, offset: 49292}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, + pos: position{line: 1470, col: 20, offset: 49300}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - run: (*parser).callonExtraListElement536, + pos: position{line: 1472, col: 9, offset: 49357}, + run: (*parser).callonExtraListElement890, expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, label: "depth", expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - run: (*parser).callonExtraListElement539, + pos: position{line: 1472, col: 16, offset: 49364}, + run: (*parser).callonExtraListElement893, expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, + pos: position{line: 1472, col: 16, offset: 49364}, expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, + pos: position{line: 1472, col: 17, offset: 49365}, val: "*", ignoreCase: false, want: "\"*\"", @@ -31673,20 +34594,20 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, - run: (*parser).callonExtraListElement542, + pos: position{line: 1476, col: 9, offset: 49465}, + run: (*parser).callonExtraListElement896, }, }, }, }, &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, + pos: position{line: 1493, col: 14, offset: 50172}, label: "depth", expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, - run: (*parser).callonExtraListElement544, + pos: position{line: 1493, col: 21, offset: 50179}, + run: (*parser).callonExtraListElement898, expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, + pos: position{line: 1493, col: 22, offset: 50180}, val: "-", ignoreCase: false, want: "\"-\"", @@ -31697,12 +34618,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement546, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement900, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31715,29 +34636,29 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1282, col: 5, offset: 43244}, + pos: position{line: 1343, col: 5, offset: 45031}, expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - run: (*parser).callonExtraListElement550, + pos: position{line: 1576, col: 5, offset: 52498}, + run: (*parser).callonExtraListElement904, expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 1576, col: 5, offset: 52498}, val: "<", ignoreCase: false, want: "\"<\"", }, &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, + pos: position{line: 1576, col: 9, offset: 52502}, label: "ref", expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - run: (*parser).callonExtraListElement554, + pos: position{line: 1576, col: 14, offset: 52507}, + run: (*parser).callonExtraListElement908, expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, + pos: position{line: 1576, col: 14, offset: 52507}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -31747,18 +34668,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, + pos: position{line: 1576, col: 62, offset: 52555}, val: ">", ignoreCase: false, want: "\">\"", }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement558, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement912, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -31771,36 +34692,36 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1283, col: 5, offset: 43274}, + pos: position{line: 1344, col: 5, offset: 45061}, expr: &seqExpr{ - pos: position{line: 1283, col: 7, offset: 43276}, + pos: position{line: 1344, col: 7, offset: 45063}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - run: (*parser).callonExtraListElement563, + pos: position{line: 1520, col: 5, offset: 50900}, + run: (*parser).callonExtraListElement917, expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 1520, col: 5, offset: 50900}, expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement567, + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement921, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement570, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement924, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -31809,38 +34730,38 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement573, + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement927, }, }, }, }, }, ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, + pos: position{line: 1520, col: 35, offset: 50930}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement576, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement930, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -31849,37 +34770,37 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &anyMatcher{ - line: 1460, col: 40, offset: 49172, + line: 1520, col: 40, offset: 50935, }, }, }, }, }, &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement584, + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement938, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement587, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement941, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -31888,8 +34809,8 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement590, + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement944, }, }, }, @@ -31898,17 +34819,17 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1284, col: 5, offset: 43332}, + pos: position{line: 1345, col: 5, offset: 45119}, expr: &actionExpr{ - pos: position{line: 494, col: 5, offset: 16393}, - run: (*parser).callonExtraListElement592, + pos: position{line: 635, col: 5, offset: 20992}, + run: (*parser).callonExtraListElement946, expr: &seqExpr{ - pos: position{line: 494, col: 5, offset: 16393}, + pos: position{line: 635, col: 5, offset: 20992}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 494, col: 5, offset: 16393}, + pos: position{line: 635, col: 5, offset: 20992}, expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -31917,509 +34838,541 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 495, col: 5, offset: 16423}, + pos: position{line: 636, col: 5, offset: 21022}, label: "delimiter", expr: &choiceExpr{ - pos: position{line: 496, col: 9, offset: 16443}, + pos: position{line: 637, col: 9, offset: 21042}, alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement601, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonExtraListElement952, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement956, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement604, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement959, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 510, col: 26, offset: 16808}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement614, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonExtraListElement966, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement970, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement617, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement973, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 512, col: 25, offset: 16851}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement627, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonExtraListElement980, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement984, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement630, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement987, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 514, col: 26, offset: 16894}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement640, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonExtraListElement994, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement998, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement643, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1001, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 516, col: 26, offset: 16938}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement653, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonExtraListElement1008, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1012, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement656, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1015, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 518, col: 30, offset: 16986}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement666, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonExtraListElement1022, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1026, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement669, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1029, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 520, col: 24, offset: 17028}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement679, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonExtraListElement1036, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1040, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement682, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1043, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, }, }, - &seqExpr{ - pos: position{line: 522, col: 26, offset: 17072}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement692, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonExtraListElement1050, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1054, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement695, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1057, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, @@ -32434,15 +35387,15 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1285, col: 5, offset: 43352}, + pos: position{line: 1346, col: 5, offset: 45139}, label: "content", expr: &actionExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - run: (*parser).callonExtraListElement703, + pos: position{line: 1346, col: 14, offset: 45148}, + run: (*parser).callonExtraListElement1065, expr: &oneOrMoreExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, + pos: position{line: 1346, col: 14, offset: 45148}, expr: &charClassMatcher{ - pos: position{line: 1285, col: 14, offset: 43361}, + pos: position{line: 1346, col: 14, offset: 45148}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -32452,28 +35405,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement707, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1069, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -32482,9 +35435,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -32498,18 +35451,18 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, - run: (*parser).callonExtraListElement714, + pos: position{line: 1548, col: 9, offset: 51699}, + run: (*parser).callonExtraListElement1076, expr: &seqExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, + pos: position{line: 1548, col: 9, offset: 51699}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement716, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement1078, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -32518,15 +35471,15 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1489, col: 9, offset: 49988}, + pos: position{line: 1549, col: 9, offset: 51751}, label: "content", expr: &actionExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, - run: (*parser).callonExtraListElement720, + pos: position{line: 1549, col: 18, offset: 51760}, + run: (*parser).callonExtraListElement1082, expr: &oneOrMoreExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, + pos: position{line: 1549, col: 18, offset: 51760}, expr: &charClassMatcher{ - pos: position{line: 1489, col: 18, offset: 49997}, + pos: position{line: 1549, col: 18, offset: 51760}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -32536,28 +35489,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement724, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1086, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -32566,81 +35519,624 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonExtraListElement1093, + expr: &seqExpr{ + pos: position{line: 2649, col: 22, offset: 88498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 2654, col: 31, offset: 88719}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + ¬Expr{ + pos: position{line: 2654, col: 36, offset: 88724}, + expr: &litMatcher{ + pos: position{line: 2654, col: 37, offset: 88725}, + val: "//", + ignoreCase: false, + want: "\"//\"", + }, + }, + &labeledExpr{ + pos: position{line: 2649, col: 49, offset: 88525}, + label: "content", + expr: &actionExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonExtraListElement1099, + expr: &zeroOrMoreExpr{ + pos: position{line: 2656, col: 29, offset: 88760}, + expr: &charClassMatcher{ + pos: position{line: 2656, col: 29, offset: 88760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1103, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1331, col: 13, offset: 44718}, + run: (*parser).callonExtraListElement1110, + expr: &labeledExpr{ + pos: position{line: 1331, col: 13, offset: 44718}, + label: "element", + expr: &actionExpr{ + pos: position{line: 1339, col: 5, offset: 44919}, + run: (*parser).callonExtraListElement1112, + expr: &seqExpr{ + pos: position{line: 1339, col: 5, offset: 44919}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1339, col: 5, offset: 44919}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonExtraListElement1115, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1121, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1124, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1340, col: 5, offset: 44934}, + expr: &seqExpr{ + pos: position{line: 1372, col: 34, offset: 45844}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1372, col: 34, offset: 45844}, + val: "+", + ignoreCase: false, + want: "\"+\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1372, col: 38, offset: 45848}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1135, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1137, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1341, col: 5, offset: 44969}, + expr: &actionExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + run: (*parser).callonExtraListElement1143, + expr: &seqExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1146, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1420, col: 12, offset: 47330}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + run: (*parser).callonExtraListElement1150, + expr: &seqExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + run: (*parser).callonExtraListElement1153, + expr: &oneOrMoreExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + expr: &litMatcher{ + pos: position{line: 1422, col: 17, offset: 47401}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1426, col: 9, offset: 47501}, + run: (*parser).callonExtraListElement1156, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + run: (*parser).callonExtraListElement1157, + expr: &seqExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + expr: &charClassMatcher{ + pos: position{line: 1445, col: 12, offset: 48219}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1445, col: 20, offset: 48227}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + run: (*parser).callonExtraListElement1162, + expr: &seqExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1447, col: 14, offset: 48345}, + val: "[a-z]", + ranges: []rune{'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1447, col: 21, offset: 48352}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + run: (*parser).callonExtraListElement1166, + expr: &seqExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1449, col: 14, offset: 48473}, + val: "[A-Z]", + ranges: []rune{'A', 'Z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1449, col: 21, offset: 48480}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + run: (*parser).callonExtraListElement1170, + expr: &seqExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + expr: &charClassMatcher{ + pos: position{line: 1451, col: 14, offset: 48601}, + val: "[ivxdlcm]", + chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1451, col: 26, offset: 48613}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + run: (*parser).callonExtraListElement1175, + expr: &seqExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + expr: &charClassMatcher{ + pos: position{line: 1453, col: 14, offset: 48734}, + val: "[IVXDLCM]", + chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1453, col: 26, offset: 48746}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement1180, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1342, col: 5, offset: 44999}, + expr: &actionExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + run: (*parser).callonExtraListElement1184, + expr: &seqExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1187, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1470, col: 12, offset: 49292}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1470, col: 20, offset: 49300}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + run: (*parser).callonExtraListElement1191, + expr: &seqExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + run: (*parser).callonExtraListElement1194, + expr: &oneOrMoreExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + expr: &litMatcher{ + pos: position{line: 1472, col: 17, offset: 49365}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, }, }, + &andCodeExpr{ + pos: position{line: 1476, col: 9, offset: 49465}, + run: (*parser).callonExtraListElement1197, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1493, col: 14, offset: 50172}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1493, col: 21, offset: 50179}, + run: (*parser).callonExtraListElement1199, + expr: &litMatcher{ + pos: position{line: 1493, col: 22, offset: 50180}, + val: "-", + ignoreCase: false, + want: "\"-\"", }, }, }, }, }, }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement1201, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, }, }, }, }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1265, col: 13, offset: 42732}, - run: (*parser).callonExtraListElement731, - expr: &seqExpr{ - pos: position{line: 1265, col: 13, offset: 42732}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1265, col: 13, offset: 42732}, - label: "attributes", - expr: &oneOrMoreExpr{ - pos: position{line: 1265, col: 24, offset: 42743}, - expr: &ruleRefExpr{ - pos: position{line: 1265, col: 25, offset: 42744}, - name: "BlockAttributes", + ¬Expr{ + pos: position{line: 1343, col: 5, offset: 45031}, + expr: &actionExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + run: (*parser).callonExtraListElement1205, + expr: &seqExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1576, col: 5, offset: 52498}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1576, col: 9, offset: 52502}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + run: (*parser).callonExtraListElement1209, + expr: &oneOrMoreExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + expr: &charClassMatcher{ + pos: position{line: 1576, col: 14, offset: 52507}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1576, col: 62, offset: 52555}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonExtraListElement1213, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, }, - }, - }, - &labeledExpr{ - pos: position{line: 1266, col: 13, offset: 42775}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, - run: (*parser).callonExtraListElement737, - expr: &seqExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, - label: "term", - expr: &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - run: (*parser).callonExtraListElement740, + ¬Expr{ + pos: position{line: 1344, col: 5, offset: 45061}, + expr: &seqExpr{ + pos: position{line: 1344, col: 7, offset: 45063}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + run: (*parser).callonExtraListElement1218, expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 1520, col: 5, offset: 50900}, expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1520, col: 6, offset: 50901}, expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement744, + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement1222, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement747, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement1225, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -32649,38 +36145,38 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement750, + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement1228, }, }, }, }, }, ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, + pos: position{line: 1520, col: 35, offset: 50930}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement753, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1231, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -32689,41 +36185,37 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &anyMatcher{ - line: 1460, col: 40, offset: 49172, + line: 1520, col: 40, offset: 50935, }, }, }, }, }, - }, - &labeledExpr{ - pos: position{line: 1453, col: 5, offset: 48913}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement762, + &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonExtraListElement1239, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 1525, col: 5, offset: 51032}, label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement765, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonExtraListElement1242, expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, + pos: position{line: 1525, col: 16, offset: 51043}, expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, + pos: position{line: 1525, col: 17, offset: 51044}, val: ":", ignoreCase: false, want: "\":\"", @@ -32732,2658 +36224,2952 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement768, + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonExtraListElement1245, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1454, col: 5, offset: 48958}, - label: "description", - expr: &choiceExpr{ - pos: position{line: 1476, col: 5, offset: 49588}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, - run: (*parser).callonExtraListElement771, - expr: &seqExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement774, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + }, + }, + ¬Expr{ + pos: position{line: 1345, col: 5, offset: 45119}, + expr: &actionExpr{ + pos: position{line: 635, col: 5, offset: 20992}, + run: (*parser).callonExtraListElement1247, + expr: &seqExpr{ + pos: position{line: 635, col: 5, offset: 20992}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 635, col: 5, offset: 20992}, + expr: &charClassMatcher{ + pos: position{line: 2846, col: 13, offset: 94476}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + &labeledExpr{ + pos: position{line: 636, col: 5, offset: 21022}, + label: "delimiter", + expr: &choiceExpr{ + pos: position{line: 637, col: 9, offset: 21042}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonExtraListElement1253, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement777, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + want: "\"////\"", }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 1479, col: 9, offset: 49673}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement785, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement791, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement794, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1257, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - }, - }, - &labeledExpr{ - pos: position{line: 1480, col: 9, offset: 49693}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1480, col: 17, offset: 49701}, - expr: &actionExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, - run: (*parser).callonExtraListElement803, - expr: &seqExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1278, col: 5, offset: 43132}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement806, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement812, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement815, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1279, col: 5, offset: 43147}, - expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement826, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement828, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1280, col: 5, offset: 43182}, - expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - run: (*parser).callonExtraListElement834, - expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement837, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - run: (*parser).callonExtraListElement841, - expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - run: (*parser).callonExtraListElement844, - expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, - run: (*parser).callonExtraListElement847, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - run: (*parser).callonExtraListElement848, - expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - run: (*parser).callonExtraListElement853, - expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - run: (*parser).callonExtraListElement857, - expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - run: (*parser).callonExtraListElement861, - expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - run: (*parser).callonExtraListElement866, - expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement871, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1281, col: 5, offset: 43212}, - expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - run: (*parser).callonExtraListElement875, - expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement878, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - run: (*parser).callonExtraListElement882, - expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - run: (*parser).callonExtraListElement885, - expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, - run: (*parser).callonExtraListElement888, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, - run: (*parser).callonExtraListElement890, - expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement892, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1260, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - }, - ¬Expr{ - pos: position{line: 1282, col: 5, offset: 43244}, - expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - run: (*parser).callonExtraListElement896, - expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - run: (*parser).callonExtraListElement900, - expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement904, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - ¬Expr{ - pos: position{line: 1283, col: 5, offset: 43274}, - expr: &seqExpr{ - pos: position{line: 1283, col: 7, offset: 43276}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - run: (*parser).callonExtraListElement909, - expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, - expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement913, - expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement916, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement919, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, - expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement922, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1460, col: 40, offset: 49172, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement930, - expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement933, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement936, - }, - }, - }, - }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonExtraListElement1267, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1271, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1274, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - ¬Expr{ - pos: position{line: 1284, col: 5, offset: 43332}, - expr: &actionExpr{ - pos: position{line: 494, col: 5, offset: 16393}, - run: (*parser).callonExtraListElement938, - expr: &seqExpr{ - pos: position{line: 494, col: 5, offset: 16393}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 494, col: 5, offset: 16393}, - expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 495, col: 5, offset: 16423}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 496, col: 9, offset: 16443}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement947, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement950, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 510, col: 26, offset: 16808}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement960, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement963, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 512, col: 25, offset: 16851}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement973, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement976, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 514, col: 26, offset: 16894}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement986, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement989, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 516, col: 26, offset: 16938}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement999, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1002, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 518, col: 30, offset: 16986}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1012, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1015, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 520, col: 24, offset: 17028}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1025, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1028, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 522, col: 26, offset: 17072}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1038, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1041, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonExtraListElement1281, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1285, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1288, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - &labeledExpr{ - pos: position{line: 1285, col: 5, offset: 43352}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - run: (*parser).callonExtraListElement1049, - expr: &oneOrMoreExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - expr: &charClassMatcher{ - pos: position{line: 1285, col: 14, offset: 43361}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonExtraListElement1295, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1299, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1302, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonExtraListElement1309, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1313, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1316, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1053, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonExtraListElement1323, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1327, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1330, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonExtraListElement1337, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1341, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1344, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonExtraListElement1351, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonExtraListElement1355, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1358, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1346, col: 5, offset: 45139}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1346, col: 14, offset: 45148}, + run: (*parser).callonExtraListElement1366, + expr: &oneOrMoreExpr{ + pos: position{line: 1346, col: 14, offset: 45148}, + expr: &charClassMatcher{ + pos: position{line: 1346, col: 14, offset: 45148}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonExtraListElement1370, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + { + name: "ListElementContinuation", + pos: position{line: 1364, col: 1, offset: 45572}, + expr: &actionExpr{ + pos: position{line: 1365, col: 5, offset: 45604}, + run: (*parser).callonListElementContinuation1, + expr: &seqExpr{ + pos: position{line: 1365, col: 5, offset: 45604}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1365, col: 5, offset: 45604}, + label: "offset", + expr: &zeroOrMoreExpr{ + pos: position{line: 1365, col: 12, offset: 45611}, + expr: &seqExpr{ + pos: position{line: 1365, col: 13, offset: 45612}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1365, col: 13, offset: 45612}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuation7, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuation9, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1372, col: 34, offset: 45844}, + val: "+", + ignoreCase: false, + want: "\"+\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1372, col: 38, offset: 45848}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuation16, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuation18, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1367, col: 5, offset: 45668}, + label: "element", + expr: &zeroOrOneExpr{ + pos: position{line: 1367, col: 13, offset: 45676}, + expr: &ruleRefExpr{ + pos: position{line: 1367, col: 13, offset: 45676}, + name: "ListElementContinuationElement", + }, + }, + }, + }, + }, + }, + }, + { + name: "ListElementContinuationElement", + pos: position{line: 1374, col: 1, offset: 45864}, + expr: &actionExpr{ + pos: position{line: 1375, col: 5, offset: 45942}, + run: (*parser).callonListElementContinuationElement1, + expr: &seqExpr{ + pos: position{line: 1375, col: 5, offset: 45942}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1375, col: 5, offset: 45942}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + ¬Expr{ + pos: position{line: 1376, col: 5, offset: 45968}, + expr: &choiceExpr{ + pos: position{line: 1285, col: 5, offset: 43123}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1413, col: 5, offset: 47115}, + run: (*parser).callonListElementContinuationElement8, + expr: &seqExpr{ + pos: position{line: 1413, col: 5, offset: 47115}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1413, col: 5, offset: 47115}, + label: "prefix", + expr: &actionExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + run: (*parser).callonListElementContinuationElement11, + expr: &seqExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement14, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1420, col: 12, offset: 47330}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + run: (*parser).callonListElementContinuationElement18, + expr: &seqExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + run: (*parser).callonListElementContinuationElement21, + expr: &oneOrMoreExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + expr: &litMatcher{ + pos: position{line: 1422, col: 17, offset: 47401}, + val: ".", + ignoreCase: false, + want: "\".\"", }, }, }, }, + &andCodeExpr{ + pos: position{line: 1426, col: 9, offset: 47501}, + run: (*parser).callonListElementContinuationElement24, + }, }, }, }, &actionExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, - run: (*parser).callonExtraListElement1060, + pos: position{line: 1445, col: 11, offset: 48218}, + run: (*parser).callonListElementContinuationElement25, expr: &seqExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, + pos: position{line: 1445, col: 11, offset: 48218}, exprs: []interface{}{ - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement1062, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &oneOrMoreExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + expr: &charClassMatcher{ + pos: position{line: 1445, col: 12, offset: 48219}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, }, }, - &labeledExpr{ - pos: position{line: 1489, col: 9, offset: 49988}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, - run: (*parser).callonExtraListElement1066, - expr: &oneOrMoreExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, - expr: &charClassMatcher{ - pos: position{line: 1489, col: 18, offset: 49997}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, + &litMatcher{ + pos: position{line: 1445, col: 20, offset: 48227}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + run: (*parser).callonListElementContinuationElement30, + expr: &seqExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1447, col: 14, offset: 48345}, + val: "[a-z]", + ranges: []rune{'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1447, col: 21, offset: 48352}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + run: (*parser).callonListElementContinuationElement34, + expr: &seqExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1449, col: 14, offset: 48473}, + val: "[A-Z]", + ranges: []rune{'A', 'Z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1449, col: 21, offset: 48480}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + run: (*parser).callonListElementContinuationElement38, + expr: &seqExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + expr: &charClassMatcher{ + pos: position{line: 1451, col: 14, offset: 48601}, + val: "[ivxdlcm]", + chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, + ignoreCase: false, + inverted: false, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1070, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + &litMatcher{ + pos: position{line: 1451, col: 26, offset: 48613}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + run: (*parser).callonListElementContinuationElement43, + expr: &seqExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + expr: &charClassMatcher{ + pos: position{line: 1453, col: 14, offset: 48734}, + val: "[IVXDLCM]", + chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, + ignoreCase: false, + inverted: false, }, }, + &litMatcher{ + pos: position{line: 1453, col: 26, offset: 48746}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, }, }, }, }, }, }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement48, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, }, }, }, }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonExtraListElement1077, - expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, - expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, - val: "//", - ignoreCase: false, - want: "\"//\"", - }, - }, &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, + pos: position{line: 1414, col: 5, offset: 47154}, label: "content", expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonExtraListElement1083, - expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1087, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + pos: position{line: 1354, col: 5, offset: 45345}, + run: (*parser).callonListElementContinuationElement52, + expr: &seqExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + run: (*parser).callonListElementContinuationElement55, + expr: &oneOrMoreExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + expr: &charClassMatcher{ + pos: position{line: 1354, col: 14, offset: 45354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement59, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, }, &actionExpr{ - pos: position{line: 1270, col: 13, offset: 42931}, - run: (*parser).callonExtraListElement1094, - expr: &labeledExpr{ - pos: position{line: 1270, col: 13, offset: 42931}, - label: "element", - expr: &actionExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, - run: (*parser).callonExtraListElement1096, - expr: &seqExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1278, col: 5, offset: 43132}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonExtraListElement1099, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1105, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 1463, col: 5, offset: 49012}, + run: (*parser).callonListElementContinuationElement66, + expr: &seqExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1463, col: 5, offset: 49012}, + label: "prefix", + expr: &actionExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + run: (*parser).callonListElementContinuationElement69, + expr: &seqExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement72, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1108, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + }, + &labeledExpr{ + pos: position{line: 1470, col: 12, offset: 49292}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1470, col: 20, offset: 49300}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + run: (*parser).callonListElementContinuationElement76, + expr: &seqExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + run: (*parser).callonListElementContinuationElement79, + expr: &oneOrMoreExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + expr: &litMatcher{ + pos: position{line: 1472, col: 17, offset: 49365}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, }, }, + &andCodeExpr{ + pos: position{line: 1476, col: 9, offset: 49465}, + run: (*parser).callonListElementContinuationElement82, + }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + }, + &labeledExpr{ + pos: position{line: 1493, col: 14, offset: 50172}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1493, col: 21, offset: 50179}, + run: (*parser).callonListElementContinuationElement84, + expr: &litMatcher{ + pos: position{line: 1493, col: 22, offset: 50180}, + val: "-", + ignoreCase: false, + want: "\"-\"", }, }, }, }, }, }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement86, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, }, }, - ¬Expr{ - pos: position{line: 1279, col: 5, offset: 43147}, + }, + }, + &labeledExpr{ + pos: position{line: 1464, col: 5, offset: 49053}, + label: "checkstyle", + expr: &zeroOrOneExpr{ + pos: position{line: 1464, col: 16, offset: 49064}, + expr: &actionExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + run: (*parser).callonListElementContinuationElement91, expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1500, col: 5, offset: 50341}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1119, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &andExpr{ + pos: position{line: 1500, col: 5, offset: 50341}, + expr: &litMatcher{ + pos: position{line: 1500, col: 6, offset: 50342}, + val: "[", + ignoreCase: false, + want: "\"[\"", }, }, - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1121, + &labeledExpr{ + pos: position{line: 1500, col: 10, offset: 50346}, + label: "style", expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 1501, col: 7, offset: 50360}, alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1280, col: 5, offset: 43182}, - expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - run: (*parser).callonExtraListElement1127, - expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1130, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - run: (*parser).callonExtraListElement1134, - expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - run: (*parser).callonExtraListElement1137, - expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, - run: (*parser).callonExtraListElement1140, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - run: (*parser).callonExtraListElement1141, - expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - run: (*parser).callonExtraListElement1146, - expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - run: (*parser).callonExtraListElement1150, - expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - run: (*parser).callonExtraListElement1154, - expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, + &actionExpr{ + pos: position{line: 1501, col: 7, offset: 50360}, + run: (*parser).callonListElementContinuationElement97, + expr: &litMatcher{ + pos: position{line: 1501, col: 7, offset: 50360}, + val: "[ ]", + ignoreCase: false, + want: "\"[ ]\"", }, - &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - run: (*parser).callonExtraListElement1159, - expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, + }, + &actionExpr{ + pos: position{line: 1502, col: 7, offset: 50405}, + run: (*parser).callonListElementContinuationElement99, + expr: &litMatcher{ + pos: position{line: 1502, col: 7, offset: 50405}, + val: "[*]", + ignoreCase: false, + want: "\"[*]\"", + }, + }, + &actionExpr{ + pos: position{line: 1503, col: 7, offset: 50448}, + run: (*parser).callonListElementContinuationElement101, + expr: &litMatcher{ + pos: position{line: 1503, col: 7, offset: 50448}, + val: "[x]", + ignoreCase: false, + want: "\"[x]\"", }, }, }, }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement1164, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement103, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 1281, col: 5, offset: 43212}, - expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - run: (*parser).callonExtraListElement1168, - expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1171, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + }, + }, + &labeledExpr{ + pos: position{line: 1465, col: 5, offset: 49103}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + run: (*parser).callonListElementContinuationElement107, + expr: &seqExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1354, col: 5, offset: 45345}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + run: (*parser).callonListElementContinuationElement110, + expr: &oneOrMoreExpr{ + pos: position{line: 1354, col: 14, offset: 45354}, + expr: &charClassMatcher{ + pos: position{line: 1354, col: 14, offset: 45354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, - &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, - label: "prefix", + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement114, expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - run: (*parser).callonExtraListElement1175, - expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - run: (*parser).callonExtraListElement1178, - expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, - run: (*parser).callonExtraListElement1181, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, - run: (*parser).callonExtraListElement1183, - expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement1185, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 1282, col: 5, offset: 43244}, - expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - run: (*parser).callonExtraListElement1189, - expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, - val: "<", + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1570, col: 5, offset: 52297}, + run: (*parser).callonListElementContinuationElement121, + expr: &seqExpr{ + pos: position{line: 1570, col: 5, offset: 52297}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1570, col: 5, offset: 52297}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + run: (*parser).callonListElementContinuationElement124, + expr: &seqExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1576, col: 5, offset: 52498}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1576, col: 9, offset: 52502}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + run: (*parser).callonListElementContinuationElement128, + expr: &oneOrMoreExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + expr: &charClassMatcher{ + pos: position{line: 1576, col: 14, offset: 52507}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1576, col: 62, offset: 52555}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement132, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"<\"", + inverted: false, }, - &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - run: (*parser).callonExtraListElement1193, - expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, - val: "[0-9]", - ranges: []rune{'0', '9'}, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1571, col: 5, offset: 52333}, + label: "description", + expr: &actionExpr{ + pos: position{line: 1581, col: 5, offset: 52681}, + run: (*parser).callonListElementContinuationElement136, + expr: &seqExpr{ + pos: position{line: 1581, col: 5, offset: 52681}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1581, col: 5, offset: 52681}, + label: "rawline", + expr: &actionExpr{ + pos: position{line: 1581, col: 14, offset: 52690}, + run: (*parser).callonListElementContinuationElement139, + expr: &oneOrMoreExpr{ + pos: position{line: 1581, col: 14, offset: 52690}, + expr: &charClassMatcher{ + pos: position{line: 1581, col: 14, offset: 52690}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement143, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - inverted: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonExtraListElement1197, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 1283, col: 5, offset: 43274}, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1512, col: 5, offset: 50641}, + run: (*parser).callonListElementContinuationElement150, + expr: &seqExpr{ + pos: position{line: 1512, col: 5, offset: 50641}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1512, col: 5, offset: 50641}, + label: "term", + expr: &actionExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + run: (*parser).callonListElementContinuationElement153, + expr: &oneOrMoreExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, expr: &seqExpr{ - pos: position{line: 1283, col: 7, offset: 43276}, + pos: position{line: 1520, col: 6, offset: 50901}, exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - run: (*parser).callonExtraListElement1202, - expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + ¬Expr{ + pos: position{line: 1520, col: 6, offset: 50901}, + expr: &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonListElementContinuationElement157, expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 1525, col: 5, offset: 51032}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement1206, - expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement1209, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement1212, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, - expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1215, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonListElementContinuationElement160, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", }, }, }, }, - &anyMatcher{ - line: 1460, col: 40, offset: 49172, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonListElementContinuationElement163, }, }, }, }, }, - &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonExtraListElement1223, - expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonExtraListElement1226, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", + ¬Expr{ + pos: position{line: 1520, col: 35, offset: 50930}, + expr: &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement166, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\":\"", + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonExtraListElement1229, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, + &anyMatcher{ + line: 1520, col: 40, offset: 50935, + }, }, }, }, - ¬Expr{ - pos: position{line: 1284, col: 5, offset: 43332}, - expr: &actionExpr{ - pos: position{line: 494, col: 5, offset: 16393}, - run: (*parser).callonExtraListElement1231, + }, + }, + &labeledExpr{ + pos: position{line: 1513, col: 5, offset: 50676}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonListElementContinuationElement175, + expr: &seqExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonListElementContinuationElement178, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonListElementContinuationElement181, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1514, col: 5, offset: 50721}, + label: "description", + expr: &choiceExpr{ + pos: position{line: 1536, col: 5, offset: 51351}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1538, col: 9, offset: 51416}, + run: (*parser).callonListElementContinuationElement184, expr: &seqExpr{ - pos: position{line: 494, col: 5, offset: 16393}, + pos: position{line: 1538, col: 9, offset: 51416}, exprs: []interface{}{ - ¬Expr{ - pos: position{line: 494, col: 5, offset: 16393}, - expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + &zeroOrMoreExpr{ + pos: position{line: 1538, col: 9, offset: 51416}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement187, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, - &labeledExpr{ - pos: position{line: 495, col: 5, offset: 16423}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 496, col: 9, offset: 16443}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement190, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"////\"", + want: "\"\\n\"", }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1240, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 1539, col: 9, offset: 51436}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement198, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1243, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement204, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement207, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, }, - &seqExpr{ - pos: position{line: 510, col: 26, offset: 16808}, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1540, col: 9, offset: 51456}, + label: "content", + expr: &zeroOrOneExpr{ + pos: position{line: 1540, col: 17, offset: 51464}, + expr: &actionExpr{ + pos: position{line: 1339, col: 5, offset: 44919}, + run: (*parser).callonListElementContinuationElement216, + expr: &seqExpr{ + pos: position{line: 1339, col: 5, offset: 44919}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, + ¬Expr{ + pos: position{line: 1339, col: 5, offset: 44919}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1253, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement219, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement225, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement228, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1256, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", + ¬Expr{ + pos: position{line: 1340, col: 5, offset: 44934}, + expr: &seqExpr{ + pos: position{line: 1372, col: 34, offset: 45844}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1372, col: 34, offset: 45844}, + val: "+", + ignoreCase: false, + want: "\"+\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 1372, col: 38, offset: 45848}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement239, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, - want: "\"\\r\"", + inverted: false, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement241, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, }, }, }, }, - }, - }, - &seqExpr{ - pos: position{line: 512, col: 25, offset: 16851}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, + ¬Expr{ + pos: position{line: 1341, col: 5, offset: 44969}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1266, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 1420, col: 5, offset: 47323}, + run: (*parser).callonListElementContinuationElement247, + expr: &seqExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1420, col: 5, offset: 47323}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement250, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1420, col: 12, offset: 47330}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + run: (*parser).callonListElementContinuationElement254, + expr: &seqExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1422, col: 9, offset: 47393}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + run: (*parser).callonListElementContinuationElement257, + expr: &oneOrMoreExpr{ + pos: position{line: 1422, col: 16, offset: 47400}, + expr: &litMatcher{ + pos: position{line: 1422, col: 17, offset: 47401}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1426, col: 9, offset: 47501}, + run: (*parser).callonListElementContinuationElement260, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + run: (*parser).callonListElementContinuationElement261, + expr: &seqExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1445, col: 11, offset: 48218}, + expr: &charClassMatcher{ + pos: position{line: 1445, col: 12, offset: 48219}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1445, col: 20, offset: 48227}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + run: (*parser).callonListElementContinuationElement266, + expr: &seqExpr{ + pos: position{line: 1447, col: 13, offset: 48344}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1447, col: 14, offset: 48345}, + val: "[a-z]", + ranges: []rune{'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1447, col: 21, offset: 48352}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + run: (*parser).callonListElementContinuationElement270, + expr: &seqExpr{ + pos: position{line: 1449, col: 13, offset: 48472}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 1449, col: 14, offset: 48473}, + val: "[A-Z]", + ranges: []rune{'A', 'Z'}, + ignoreCase: false, + inverted: false, + }, + &litMatcher{ + pos: position{line: 1449, col: 21, offset: 48480}, + val: ".", + ignoreCase: false, + want: "\".\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + run: (*parser).callonListElementContinuationElement274, + expr: &seqExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1451, col: 13, offset: 48600}, + expr: &charClassMatcher{ + pos: position{line: 1451, col: 14, offset: 48601}, + val: "[ivxdlcm]", + chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1451, col: 26, offset: 48613}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + run: (*parser).callonListElementContinuationElement279, + expr: &seqExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + exprs: []interface{}{ + &oneOrMoreExpr{ + pos: position{line: 1453, col: 13, offset: 48733}, + expr: &charClassMatcher{ + pos: position{line: 1453, col: 14, offset: 48734}, + val: "[IVXDLCM]", + chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, + ignoreCase: false, + inverted: false, + }, + }, + &litMatcher{ + pos: position{line: 1453, col: 26, offset: 48746}, + val: ")", + ignoreCase: false, + want: "\")\"", + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement284, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1269, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", + ¬Expr{ + pos: position{line: 1342, col: 5, offset: 44999}, + expr: &actionExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + run: (*parser).callonListElementContinuationElement288, + expr: &seqExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + exprs: []interface{}{ + &zeroOrMoreExpr{ + pos: position{line: 1470, col: 5, offset: 49285}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement291, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + }, + &labeledExpr{ + pos: position{line: 1470, col: 12, offset: 49292}, + label: "prefix", + expr: &choiceExpr{ + pos: position{line: 1470, col: 20, offset: 49300}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + run: (*parser).callonListElementContinuationElement295, + expr: &seqExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1472, col: 9, offset: 49357}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + run: (*parser).callonListElementContinuationElement298, + expr: &oneOrMoreExpr{ + pos: position{line: 1472, col: 16, offset: 49364}, + expr: &litMatcher{ + pos: position{line: 1472, col: 17, offset: 49365}, + val: "*", + ignoreCase: false, + want: "\"*\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1476, col: 9, offset: 49465}, + run: (*parser).callonListElementContinuationElement301, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 1493, col: 14, offset: 50172}, + label: "depth", + expr: &actionExpr{ + pos: position{line: 1493, col: 21, offset: 50179}, + run: (*parser).callonListElementContinuationElement303, + expr: &litMatcher{ + pos: position{line: 1493, col: 22, offset: 50180}, + val: "-", + ignoreCase: false, + want: "\"-\"", + }, + }, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement305, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, - }, - }, - &seqExpr{ - pos: position{line: 514, col: 26, offset: 16894}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, + ¬Expr{ + pos: position{line: 1343, col: 5, offset: 45031}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1279, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, + pos: position{line: 1576, col: 5, offset: 52498}, + run: (*parser).callonListElementContinuationElement309, + expr: &seqExpr{ + pos: position{line: 1576, col: 5, offset: 52498}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 1576, col: 5, offset: 52498}, + val: "<", + ignoreCase: false, + want: "\"<\"", + }, + &labeledExpr{ + pos: position{line: 1576, col: 9, offset: 52502}, + label: "ref", + expr: &actionExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + run: (*parser).callonListElementContinuationElement313, + expr: &oneOrMoreExpr{ + pos: position{line: 1576, col: 14, offset: 52507}, + expr: &charClassMatcher{ + pos: position{line: 1576, col: 14, offset: 52507}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 1576, col: 62, offset: 52555}, + val: ">", + ignoreCase: false, + want: "\">\"", + }, + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement317, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, }, }, }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1282, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + ¬Expr{ + pos: position{line: 1344, col: 5, offset: 45061}, + expr: &seqExpr{ + pos: position{line: 1344, col: 7, offset: 45063}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + run: (*parser).callonListElementContinuationElement322, + expr: &oneOrMoreExpr{ + pos: position{line: 1520, col: 5, offset: 50900}, + expr: &seqExpr{ + pos: position{line: 1520, col: 6, offset: 50901}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 1520, col: 6, offset: 50901}, + expr: &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonListElementContinuationElement326, + expr: &seqExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonListElementContinuationElement329, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonListElementContinuationElement332, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 1520, col: 35, offset: 50930}, + expr: &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement335, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &anyMatcher{ + line: 1520, col: 40, offset: 50935, + }, + }, }, }, }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 516, col: 26, offset: 16938}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1292, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1295, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &actionExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + run: (*parser).callonListElementContinuationElement343, + expr: &seqExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1525, col: 5, offset: 51032}, + label: "separator", + expr: &actionExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + run: (*parser).callonListElementContinuationElement346, + expr: &oneOrMoreExpr{ + pos: position{line: 1525, col: 16, offset: 51043}, + expr: &litMatcher{ + pos: position{line: 1525, col: 17, offset: 51044}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1528, col: 5, offset: 51101}, + run: (*parser).callonListElementContinuationElement349, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, - }, - }, - &seqExpr{ - pos: position{line: 518, col: 30, offset: 16986}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, + ¬Expr{ + pos: position{line: 1345, col: 5, offset: 45119}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1305, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1308, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", + pos: position{line: 635, col: 5, offset: 20992}, + run: (*parser).callonListElementContinuationElement351, + expr: &seqExpr{ + pos: position{line: 635, col: 5, offset: 20992}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 635, col: 5, offset: 20992}, + expr: &charClassMatcher{ + pos: position{line: 2846, col: 13, offset: 94476}, + val: "[0-9\\pL]", + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\"\\r\\n\"", + inverted: false, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + &labeledExpr{ + pos: position{line: 636, col: 5, offset: 21022}, + label: "delimiter", + expr: &choiceExpr{ + pos: position{line: 637, col: 9, offset: 21042}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonListElementContinuationElement357, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement361, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement364, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonListElementContinuationElement371, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement375, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement378, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonListElementContinuationElement385, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement389, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement392, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonListElementContinuationElement399, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement403, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement406, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonListElementContinuationElement413, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement417, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement420, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonListElementContinuationElement427, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement431, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement434, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonListElementContinuationElement441, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement445, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement448, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonListElementContinuationElement455, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement459, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement462, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, - }, - }, - &seqExpr{ - pos: position{line: 520, col: 24, offset: 17028}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, + &labeledExpr{ + pos: position{line: 1346, col: 5, offset: 45139}, + label: "content", expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1318, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1321, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + pos: position{line: 1346, col: 14, offset: 45148}, + run: (*parser).callonListElementContinuationElement470, + expr: &oneOrMoreExpr{ + pos: position{line: 1346, col: 14, offset: 45148}, + expr: &charClassMatcher{ + pos: position{line: 1346, col: 14, offset: 45148}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, }, }, }, }, - }, - }, - &seqExpr{ - pos: position{line: 522, col: 26, offset: 17072}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonExtraListElement1331, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1334, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement474, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -35392,9 +39178,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -35407,61 +39193,84 @@ var g = &grammar{ }, }, }, - }, - &labeledExpr{ - pos: position{line: 1285, col: 5, offset: 43352}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - run: (*parser).callonExtraListElement1342, - expr: &oneOrMoreExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - expr: &charClassMatcher{ - pos: position{line: 1285, col: 14, offset: 43361}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonExtraListElement1346, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", + &actionExpr{ + pos: position{line: 1548, col: 9, offset: 51699}, + run: (*parser).callonListElementContinuationElement481, + expr: &seqExpr{ + pos: position{line: 1548, col: 9, offset: 51699}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement483, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + }, + &labeledExpr{ + pos: position{line: 1549, col: 9, offset: 51751}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1549, col: 18, offset: 51760}, + run: (*parser).callonListElementContinuationElement487, + expr: &oneOrMoreExpr{ + pos: position{line: 1549, col: 18, offset: 51760}, + expr: &charClassMatcher{ + pos: position{line: 1549, col: 18, offset: 51760}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement491, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, @@ -35472,894 +39281,1129 @@ var g = &grammar{ }, }, }, - }, - }, - }, - }, - { - name: "ListElementContinuation", - pos: position{line: 1303, col: 1, offset: 43785}, - expr: &actionExpr{ - pos: position{line: 1304, col: 5, offset: 43817}, - run: (*parser).callonListElementContinuation1, - expr: &seqExpr{ - pos: position{line: 1304, col: 5, offset: 43817}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1304, col: 5, offset: 43817}, - label: "offset", - expr: &zeroOrMoreExpr{ - pos: position{line: 1304, col: 12, offset: 43824}, - expr: &seqExpr{ - pos: position{line: 1304, col: 13, offset: 43825}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1304, col: 13, offset: 43825}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuation7, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuation9, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, - val: "+", - ignoreCase: false, - want: "\"+\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuation16, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuation18, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, &labeledExpr{ - pos: position{line: 1306, col: 5, offset: 43881}, - label: "element", + pos: position{line: 1377, col: 5, offset: 45985}, + label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 1306, col: 13, offset: 43889}, + pos: position{line: 1377, col: 16, offset: 45996}, expr: &ruleRefExpr{ - pos: position{line: 1306, col: 13, offset: 43889}, - name: "ListElementContinuationElement", - }, - }, - }, - }, - }, - }, - }, - { - name: "ListElementContinuationElement", - pos: position{line: 1313, col: 1, offset: 44077}, - expr: &actionExpr{ - pos: position{line: 1314, col: 5, offset: 44155}, - run: (*parser).callonListElementContinuationElement1, - expr: &seqExpr{ - pos: position{line: 1314, col: 5, offset: 44155}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1314, col: 5, offset: 44155}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + pos: position{line: 1377, col: 17, offset: 45997}, + name: "BlockAttributes", }, }, }, - ¬Expr{ - pos: position{line: 1315, col: 5, offset: 44181}, + &labeledExpr{ + pos: position{line: 1378, col: 5, offset: 46019}, + label: "element", expr: &choiceExpr{ - pos: position{line: 1224, col: 5, offset: 41336}, + pos: position{line: 1379, col: 9, offset: 46037}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, - run: (*parser).callonListElementContinuationElement8, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement503, expr: &seqExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1353, col: 5, offset: 45352}, - label: "prefix", - expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - run: (*parser).callonListElementContinuationElement11, - expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement14, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - run: (*parser).callonListElementContinuationElement18, - expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - run: (*parser).callonListElementContinuationElement21, - expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, - run: (*parser).callonListElementContinuationElement24, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - run: (*parser).callonListElementContinuationElement25, - expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - run: (*parser).callonListElementContinuationElement30, - expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - run: (*parser).callonListElementContinuationElement34, - expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - run: (*parser).callonListElementContinuationElement38, - expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - run: (*parser).callonListElementContinuationElement43, - expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement48, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, - &labeledExpr{ - pos: position{line: 1354, col: 5, offset: 45391}, - label: "content", + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - run: (*parser).callonListElementContinuationElement52, - expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - run: (*parser).callonListElementContinuationElement55, - expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement59, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement509, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement512, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, &actionExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, - run: (*parser).callonListElementContinuationElement66, + pos: position{line: 253, col: 5, offset: 7909}, + run: (*parser).callonListElementContinuationElement519, expr: &seqExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, + pos: position{line: 253, col: 5, offset: 7909}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 253, col: 5, offset: 7909}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, &labeledExpr{ - pos: position{line: 1403, col: 5, offset: 47249}, - label: "prefix", + pos: position{line: 253, col: 9, offset: 7913}, + label: "name", expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - run: (*parser).callonListElementContinuationElement69, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonListElementContinuationElement523, expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement72, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, - &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - run: (*parser).callonListElementContinuationElement76, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 253, col: 30, offset: 7934}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 254, col: 5, offset: 7943}, + label: "value", + expr: &zeroOrOneExpr{ + pos: position{line: 254, col: 11, offset: 7949}, + expr: &actionExpr{ + pos: position{line: 267, col: 5, offset: 8397}, + run: (*parser).callonListElementContinuationElement531, + expr: &seqExpr{ + pos: position{line: 267, col: 5, offset: 8397}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement533, + expr: &oneOrMoreExpr{ + pos: position{line: 2923, col: 11, offset: 96777}, + expr: &charClassMatcher{ + pos: position{line: 2923, col: 12, offset: 96778}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &labeledExpr{ + pos: position{line: 267, col: 12, offset: 8404}, + label: "elements", + expr: &zeroOrMoreExpr{ + pos: position{line: 267, col: 21, offset: 8413}, + expr: &actionExpr{ + pos: position{line: 271, col: 37, offset: 8572}, + run: (*parser).callonListElementContinuationElement538, expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 271, col: 37, offset: 8572}, exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - run: (*parser).callonListElementContinuationElement79, - expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, - val: "*", - ignoreCase: false, - want: "\"*\"", + ¬Expr{ + pos: position{line: 271, col: 37, offset: 8572}, + expr: &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement542, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, - &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, - run: (*parser).callonListElementContinuationElement82, + &labeledExpr{ + pos: position{line: 272, col: 5, offset: 8582}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 273, col: 9, offset: 8600}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 273, col: 10, offset: 8601}, + run: (*parser).callonListElementContinuationElement551, + expr: &oneOrMoreExpr{ + pos: position{line: 273, col: 10, offset: 8601}, + expr: &charClassMatcher{ + pos: position{line: 273, col: 10, offset: 8601}, + val: "[^\\r\\n{]", + chars: []rune{'\r', '\n', '{'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + &actionExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonListElementContinuationElement554, + expr: &seqExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 557, col: 5, offset: 18336}, + run: (*parser).callonListElementContinuationElement556, + }, + &labeledExpr{ + pos: position{line: 560, col: 5, offset: 18400}, + label: "element", + expr: &choiceExpr{ + pos: position{line: 560, col: 14, offset: 18409}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + run: (*parser).callonListElementContinuationElement559, + expr: &seqExpr{ + pos: position{line: 571, col: 25, offset: 18773}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 571, col: 25, offset: 18773}, + val: "{counter:", + ignoreCase: false, + want: "\"{counter:\"", + }, + &labeledExpr{ + pos: position{line: 571, col: 37, offset: 18785}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonListElementContinuationElement563, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 571, col: 56, offset: 18804}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 571, col: 62, offset: 18810}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonListElementContinuationElement570, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonListElementContinuationElement575, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonListElementContinuationElement577, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 571, col: 78, offset: 18826}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + run: (*parser).callonListElementContinuationElement581, + expr: &seqExpr{ + pos: position{line: 575, col: 25, offset: 18944}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 575, col: 25, offset: 18944}, + val: "{counter2:", + ignoreCase: false, + want: "\"{counter2:\"", + }, + &labeledExpr{ + pos: position{line: 575, col: 38, offset: 18957}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonListElementContinuationElement585, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 575, col: 57, offset: 18976}, + label: "start", + expr: &zeroOrOneExpr{ + pos: position{line: 575, col: 63, offset: 18982}, + expr: &actionExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + run: (*parser).callonListElementContinuationElement592, + expr: &seqExpr{ + pos: position{line: 579, col: 17, offset: 19105}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 579, col: 17, offset: 19105}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &labeledExpr{ + pos: position{line: 579, col: 21, offset: 19109}, + label: "start", + expr: &choiceExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 579, col: 28, offset: 19116}, + run: (*parser).callonListElementContinuationElement597, + expr: &charClassMatcher{ + pos: position{line: 579, col: 28, offset: 19116}, + val: "[A-Za-z]", + ranges: []rune{'A', 'Z', 'a', 'z'}, + ignoreCase: false, + inverted: false, + }, + }, + &actionExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + run: (*parser).callonListElementContinuationElement599, + expr: &oneOrMoreExpr{ + pos: position{line: 581, col: 9, offset: 19170}, + expr: &charClassMatcher{ + pos: position{line: 581, col: 9, offset: 19170}, + val: "[0-9]", + ranges: []rune{'0', '9'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 575, col: 79, offset: 18998}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + run: (*parser).callonListElementContinuationElement603, + expr: &seqExpr{ + pos: position{line: 564, col: 31, offset: 18526}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 564, col: 31, offset: 18526}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + &labeledExpr{ + pos: position{line: 564, col: 35, offset: 18530}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonListElementContinuationElement607, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 564, col: 54, offset: 18549}, + val: "}", + ignoreCase: false, + want: "\"}\"", + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 277, col: 12, offset: 8729}, + run: (*parser).callonListElementContinuationElement613, + expr: &litMatcher{ + pos: position{line: 277, col: 12, offset: 8729}, + val: "{", + ignoreCase: false, + want: "\"{\"", + }, + }, + }, + }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, - run: (*parser).callonListElementContinuationElement84, - expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, }, }, }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement86, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement616, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, + }, + }, + }, + &actionExpr{ + pos: position{line: 284, col: 19, offset: 8884}, + run: (*parser).callonListElementContinuationElement623, + expr: &seqExpr{ + pos: position{line: 284, col: 19, offset: 8884}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 284, col: 19, offset: 8884}, + val: ":!", + ignoreCase: false, + want: "\":!\"", + }, &labeledExpr{ - pos: position{line: 1404, col: 5, offset: 47290}, - label: "checkstyle", - expr: &zeroOrOneExpr{ - pos: position{line: 1404, col: 16, offset: 47301}, - expr: &actionExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - run: (*parser).callonListElementContinuationElement91, - expr: &seqExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - exprs: []interface{}{ - &andExpr{ - pos: position{line: 1440, col: 5, offset: 48578}, - expr: &litMatcher{ - pos: position{line: 1440, col: 6, offset: 48579}, - val: "[", - ignoreCase: false, - want: "\"[\"", - }, - }, - &labeledExpr{ - pos: position{line: 1440, col: 10, offset: 48583}, - label: "style", - expr: &choiceExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1441, col: 7, offset: 48597}, - run: (*parser).callonListElementContinuationElement97, - expr: &litMatcher{ - pos: position{line: 1441, col: 7, offset: 48597}, - val: "[ ]", - ignoreCase: false, - want: "\"[ ]\"", - }, - }, - &actionExpr{ - pos: position{line: 1442, col: 7, offset: 48642}, - run: (*parser).callonListElementContinuationElement99, - expr: &litMatcher{ - pos: position{line: 1442, col: 7, offset: 48642}, - val: "[*]", - ignoreCase: false, - want: "\"[*]\"", - }, - }, - &actionExpr{ - pos: position{line: 1443, col: 7, offset: 48685}, - run: (*parser).callonListElementContinuationElement101, - expr: &litMatcher{ - pos: position{line: 1443, col: 7, offset: 48685}, - val: "[x]", - ignoreCase: false, - want: "\"[x]\"", - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement103, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 284, col: 24, offset: 8889}, + label: "name", + expr: &actionExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonListElementContinuationElement627, + expr: &seqExpr{ + pos: position{line: 262, col: 18, offset: 8296}, + exprs: []interface{}{ + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, + }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1405, col: 5, offset: 47340}, - label: "content", + &litMatcher{ + pos: position{line: 284, col: 45, offset: 8910}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 284, col: 49, offset: 8914}, expr: &actionExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - run: (*parser).callonListElementContinuationElement107, - expr: &seqExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1293, col: 5, offset: 43558}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - run: (*parser).callonListElementContinuationElement110, - expr: &oneOrMoreExpr{ - pos: position{line: 1293, col: 14, offset: 43567}, - expr: &charClassMatcher{ - pos: position{line: 1293, col: 14, offset: 43567}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement634, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement637, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement114, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, &actionExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - run: (*parser).callonListElementContinuationElement121, + pos: position{line: 286, col: 5, offset: 8997}, + run: (*parser).callonListElementContinuationElement644, expr: &seqExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, + pos: position{line: 286, col: 5, offset: 8997}, exprs: []interface{}{ + &litMatcher{ + pos: position{line: 286, col: 5, offset: 8997}, + val: ":", + ignoreCase: false, + want: "\":\"", + }, &labeledExpr{ - pos: position{line: 1510, col: 5, offset: 50534}, - label: "ref", + pos: position{line: 286, col: 9, offset: 9001}, + label: "name", expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - run: (*parser).callonListElementContinuationElement124, + pos: position{line: 262, col: 18, offset: 8296}, + run: (*parser).callonListElementContinuationElement648, expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - run: (*parser).callonListElementContinuationElement128, - expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, - val: ">", + &charClassMatcher{ + pos: position{line: 262, col: 18, offset: 8296}, + val: "[_0-9\\pL]", + chars: []rune{'_'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, - want: "\">\"", + inverted: false, }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement132, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &zeroOrMoreExpr{ + pos: position{line: 262, col: 28, offset: 8306}, + expr: &charClassMatcher{ + pos: position{line: 262, col: 29, offset: 8307}, + val: "[-0-9\\pL]", + chars: []rune{'-'}, + ranges: []rune{'0', '9'}, + classes: []*unicode.RangeTable{rangeTable("L")}, + ignoreCase: false, + inverted: false, }, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1511, col: 5, offset: 50570}, - label: "description", + &litMatcher{ + pos: position{line: 286, col: 30, offset: 9022}, + val: "!:", + ignoreCase: false, + want: "\"!:\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 286, col: 35, offset: 9027}, expr: &actionExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - run: (*parser).callonListElementContinuationElement136, - expr: &seqExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1521, col: 5, offset: 50918}, - label: "rawline", - expr: &actionExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, - run: (*parser).callonListElementContinuationElement139, - expr: &oneOrMoreExpr{ - pos: position{line: 1521, col: 14, offset: 50927}, - expr: &charClassMatcher{ - pos: position{line: 1521, col: 14, offset: 50927}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement655, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement658, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement143, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, &actionExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, - run: (*parser).callonListElementContinuationElement150, + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonListElementContinuationElement665, expr: &seqExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, + pos: position{line: 693, col: 5, offset: 22586}, exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 693, col: 5, offset: 22586}, + run: (*parser).callonListElementContinuationElement667, + }, + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonListElementContinuationElement668, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement672, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement675, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 698, col: 5, offset: 22769}, + run: (*parser).callonListElementContinuationElement682, + }, &labeledExpr{ - pos: position{line: 1452, col: 5, offset: 48878}, - label: "term", - expr: &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - run: (*parser).callonListElementContinuationElement153, - expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, + pos: position{line: 703, col: 5, offset: 22970}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 714, col: 5, offset: 23294}, + expr: &actionExpr{ + pos: position{line: 714, col: 6, offset: 23295}, + run: (*parser).callonListElementContinuationElement685, expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 714, col: 6, offset: 23295}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, + pos: position{line: 714, col: 6, offset: 23295}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonListElementContinuationElement689, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement693, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement696, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 715, col: 5, offset: 23325}, + label: "line", expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonListElementContinuationElement157, + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement706, expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, + pos: position{line: 682, col: 5, offset: 22281}, exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonListElementContinuationElement160, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement712, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - want: "\":\"", + inverted: true, }, }, }, }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonListElementContinuationElement163, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement716, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, }, - ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, - expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + }, + }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 704, col: 5, offset: 23004}, + expr: &choiceExpr{ + pos: position{line: 711, col: 29, offset: 23237}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + run: (*parser).callonListElementContinuationElement725, + expr: &seqExpr{ + pos: position{line: 649, col: 26, offset: 21363}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 649, col: 26, offset: 21363}, + val: "////", + ignoreCase: false, + want: "\"////\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 649, col: 33, offset: 21370}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement729, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement166, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement732, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -36368,1383 +40412,1907 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, - &anyMatcher{ - line: 1460, col: 40, offset: 49172, - }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, }, }, - &labeledExpr{ - pos: position{line: 1453, col: 5, offset: 48913}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonListElementContinuationElement175, - expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonListElementContinuationElement178, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", - ignoreCase: false, - want: "\":\"", + }, + }, + }, + &actionExpr{ + pos: position{line: 723, col: 5, offset: 23478}, + run: (*parser).callonListElementContinuationElement741, + expr: &seqExpr{ + pos: position{line: 723, col: 5, offset: 23478}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 723, col: 5, offset: 23478}, + run: (*parser).callonListElementContinuationElement743, + }, + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonListElementContinuationElement744, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement748, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement751, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, }, }, }, - }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonListElementContinuationElement181, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, }, }, + &andCodeExpr{ + pos: position{line: 728, col: 5, offset: 23661}, + run: (*parser).callonListElementContinuationElement758, + }, &labeledExpr{ - pos: position{line: 1454, col: 5, offset: 48958}, - label: "description", - expr: &choiceExpr{ - pos: position{line: 1476, col: 5, offset: 49588}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, - run: (*parser).callonListElementContinuationElement184, - expr: &seqExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1478, col: 9, offset: 49653}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement187, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 733, col: 5, offset: 23862}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 744, col: 4, offset: 24184}, + expr: &actionExpr{ + pos: position{line: 744, col: 5, offset: 24185}, + run: (*parser).callonListElementContinuationElement761, + expr: &seqExpr{ + pos: position{line: 744, col: 5, offset: 24185}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 744, col: 5, offset: 24185}, + expr: &choiceExpr{ + pos: position{line: 741, col: 29, offset: 24128}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement190, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonListElementContinuationElement765, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", ignoreCase: false, - want: "\"\\n\"", + want: "\"====\"", }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement769, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement772, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, - &zeroOrMoreExpr{ - pos: position{line: 1479, col: 9, offset: 49673}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement198, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + }, + &labeledExpr{ + pos: position{line: 745, col: 5, offset: 24215}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement782, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement204, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement788, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement207, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, + inverted: true, }, }, }, }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1480, col: 9, offset: 49693}, - label: "content", - expr: &zeroOrOneExpr{ - pos: position{line: 1480, col: 17, offset: 49701}, - expr: &actionExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, - run: (*parser).callonListElementContinuationElement216, - expr: &seqExpr{ - pos: position{line: 1278, col: 5, offset: 43132}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1278, col: 5, offset: 43132}, - expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement219, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement225, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement228, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1279, col: 5, offset: 43147}, - expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, - exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement792, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, - val: "+", + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"+\"", + want: "\"\\n\"", }, - &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement239, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", }, - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement241, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, ¬Expr{ - pos: position{line: 1280, col: 5, offset: 43182}, - expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - run: (*parser).callonListElementContinuationElement247, - expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement250, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - run: (*parser).callonListElementContinuationElement254, - expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - run: (*parser).callonListElementContinuationElement257, - expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, - expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, - run: (*parser).callonListElementContinuationElement260, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - run: (*parser).callonListElementContinuationElement261, - expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, - expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - run: (*parser).callonListElementContinuationElement266, - expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, - val: "[a-z]", - ranges: []rune{'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - run: (*parser).callonListElementContinuationElement270, - expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, - val: "[A-Z]", - ranges: []rune{'A', 'Z'}, - ignoreCase: false, - inverted: false, - }, - &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, - val: ".", - ignoreCase: false, - want: "\".\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - run: (*parser).callonListElementContinuationElement274, - expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, - expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, - val: "[ivxdlcm]", - chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - run: (*parser).callonListElementContinuationElement279, - expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - exprs: []interface{}{ - &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, - expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, - val: "[IVXDLCM]", - chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, - ignoreCase: false, - inverted: false, - }, - }, - &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, - val: ")", - ignoreCase: false, - want: "\")\"", - }, - }, - }, - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement284, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 741, col: 29, offset: 24128}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + run: (*parser).callonListElementContinuationElement800, + expr: &seqExpr{ + pos: position{line: 653, col: 26, offset: 21477}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 653, col: 26, offset: 21477}, + val: "====", + ignoreCase: false, + want: "\"====\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 653, col: 33, offset: 21484}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement804, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement807, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 753, col: 5, offset: 24368}, + run: (*parser).callonListElementContinuationElement816, + expr: &seqExpr{ + pos: position{line: 753, col: 5, offset: 24368}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 753, col: 5, offset: 24368}, + run: (*parser).callonListElementContinuationElement818, + }, + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonListElementContinuationElement819, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement823, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement826, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 758, col: 5, offset: 24549}, + run: (*parser).callonListElementContinuationElement833, + }, + &labeledExpr{ + pos: position{line: 763, col: 5, offset: 24749}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 774, col: 5, offset: 25069}, + expr: &actionExpr{ + pos: position{line: 774, col: 6, offset: 25070}, + run: (*parser).callonListElementContinuationElement836, + expr: &seqExpr{ + pos: position{line: 774, col: 6, offset: 25070}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 774, col: 6, offset: 25070}, + expr: &choiceExpr{ + pos: position{line: 771, col: 28, offset: 25014}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonListElementContinuationElement840, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement844, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, - ¬Expr{ - pos: position{line: 1281, col: 5, offset: 43212}, - expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - run: (*parser).callonListElementContinuationElement288, - expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - exprs: []interface{}{ - &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement291, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement847, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, - label: "prefix", - expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - run: (*parser).callonListElementContinuationElement295, - expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - run: (*parser).callonListElementContinuationElement298, - expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, - expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, - val: "*", - ignoreCase: false, - want: "\"*\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, - run: (*parser).callonListElementContinuationElement301, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, - label: "depth", - expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, - run: (*parser).callonListElementContinuationElement303, - expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, - val: "-", - ignoreCase: false, - want: "\"-\"", - }, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", }, - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement305, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 775, col: 5, offset: 25099}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement857, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement863, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement867, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, }, }, ¬Expr{ - pos: position{line: 1282, col: 5, offset: 43244}, + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 771, col: 28, offset: 25014}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + run: (*parser).callonListElementContinuationElement875, + expr: &seqExpr{ + pos: position{line: 657, col: 25, offset: 21590}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 657, col: 25, offset: 21590}, + val: "```", + ignoreCase: false, + want: "\"```\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 657, col: 31, offset: 21596}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement879, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement882, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 783, col: 5, offset: 25254}, + run: (*parser).callonListElementContinuationElement891, + expr: &seqExpr{ + pos: position{line: 783, col: 5, offset: 25254}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 783, col: 5, offset: 25254}, + run: (*parser).callonListElementContinuationElement893, + }, + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonListElementContinuationElement894, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement898, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement901, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 788, col: 5, offset: 25437}, + run: (*parser).callonListElementContinuationElement908, + }, + &labeledExpr{ + pos: position{line: 793, col: 5, offset: 25638}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 804, col: 5, offset: 25966}, + expr: &actionExpr{ + pos: position{line: 804, col: 6, offset: 25967}, + run: (*parser).callonListElementContinuationElement911, + expr: &seqExpr{ + pos: position{line: 804, col: 6, offset: 25967}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 804, col: 6, offset: 25967}, + expr: &choiceExpr{ + pos: position{line: 801, col: 29, offset: 25909}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonListElementContinuationElement915, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, expr: &actionExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - run: (*parser).callonListElementContinuationElement309, - expr: &seqExpr{ - pos: position{line: 1516, col: 5, offset: 50735}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 1516, col: 5, offset: 50735}, - val: "<", - ignoreCase: false, - want: "\"<\"", - }, - &labeledExpr{ - pos: position{line: 1516, col: 9, offset: 50739}, - label: "ref", - expr: &actionExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - run: (*parser).callonListElementContinuationElement313, - expr: &oneOrMoreExpr{ - pos: position{line: 1516, col: 14, offset: 50744}, - expr: &charClassMatcher{ - pos: position{line: 1516, col: 14, offset: 50744}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement919, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement922, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - }, - &litMatcher{ - pos: position{line: 1516, col: 62, offset: 50792}, - val: ">", - ignoreCase: false, - want: "\">\"", - }, - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement317, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, - ¬Expr{ - pos: position{line: 1283, col: 5, offset: 43274}, - expr: &seqExpr{ - pos: position{line: 1283, col: 7, offset: 43276}, - exprs: []interface{}{ - &actionExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - run: (*parser).callonListElementContinuationElement322, - expr: &oneOrMoreExpr{ - pos: position{line: 1460, col: 5, offset: 49137}, - expr: &seqExpr{ - pos: position{line: 1460, col: 6, offset: 49138}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 1460, col: 6, offset: 49138}, - expr: &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonListElementContinuationElement326, - expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonListElementContinuationElement329, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonListElementContinuationElement332, - }, - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 1460, col: 35, offset: 49167}, - expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement335, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - &anyMatcher{ - line: 1460, col: 40, offset: 49172, - }, - }, - }, - }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 805, col: 5, offset: 25997}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement932, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement938, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement942, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", }, - &actionExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - run: (*parser).callonListElementContinuationElement343, - expr: &seqExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - exprs: []interface{}{ - &labeledExpr{ - pos: position{line: 1465, col: 5, offset: 49269}, - label: "separator", - expr: &actionExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - run: (*parser).callonListElementContinuationElement346, - expr: &oneOrMoreExpr{ - pos: position{line: 1465, col: 16, offset: 49280}, - expr: &litMatcher{ - pos: position{line: 1465, col: 17, offset: 49281}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - }, - }, - }, - &andCodeExpr{ - pos: position{line: 1468, col: 5, offset: 49338}, - run: (*parser).callonListElementContinuationElement349, - }, - }, - }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, ¬Expr{ - pos: position{line: 1284, col: 5, offset: 43332}, - expr: &actionExpr{ - pos: position{line: 494, col: 5, offset: 16393}, - run: (*parser).callonListElementContinuationElement351, - expr: &seqExpr{ - pos: position{line: 494, col: 5, offset: 16393}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 494, col: 5, offset: 16393}, - expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, - val: "[0-9\\pL]", - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - &labeledExpr{ - pos: position{line: 495, col: 5, offset: 16423}, - label: "delimiter", - expr: &choiceExpr{ - pos: position{line: 496, col: 9, offset: 16443}, - alternatives: []interface{}{ - &seqExpr{ - pos: position{line: 508, col: 26, offset: 16764}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 508, col: 26, offset: 16764}, - val: "////", - ignoreCase: false, - want: "\"////\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 508, col: 33, offset: 16771}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement360, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement363, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 510, col: 26, offset: 16808}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 510, col: 26, offset: 16808}, - val: "====", - ignoreCase: false, - want: "\"====\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 510, col: 33, offset: 16815}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement373, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement376, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 512, col: 25, offset: 16851}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 512, col: 25, offset: 16851}, - val: "```", - ignoreCase: false, - want: "\"```\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 512, col: 31, offset: 16857}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement386, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement389, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 514, col: 26, offset: 16894}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 514, col: 26, offset: 16894}, - val: "----", - ignoreCase: false, - want: "\"----\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 514, col: 33, offset: 16901}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement399, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement402, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 516, col: 26, offset: 16938}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 516, col: 26, offset: 16938}, - val: "....", - ignoreCase: false, - want: "\"....\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 516, col: 33, offset: 16945}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement412, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement415, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 518, col: 30, offset: 16986}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 518, col: 30, offset: 16986}, - val: "++++", - ignoreCase: false, - want: "\"++++\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 518, col: 37, offset: 16993}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement425, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement428, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 520, col: 24, offset: 17028}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 520, col: 24, offset: 17028}, - val: "____", - ignoreCase: false, - want: "\"____\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 520, col: 31, offset: 17035}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement438, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement441, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - &seqExpr{ - pos: position{line: 522, col: 26, offset: 17072}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 522, col: 26, offset: 17072}, - val: "****", - ignoreCase: false, - want: "\"****\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 522, col: 33, offset: 17079}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement451, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement454, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - }, - }, + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 801, col: 29, offset: 25909}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + run: (*parser).callonListElementContinuationElement950, + expr: &seqExpr{ + pos: position{line: 661, col: 26, offset: 21702}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 661, col: 26, offset: 21702}, + val: "----", + ignoreCase: false, + want: "\"----\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 661, col: 33, offset: 21709}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement954, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement957, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 813, col: 5, offset: 26152}, + run: (*parser).callonListElementContinuationElement966, + expr: &seqExpr{ + pos: position{line: 813, col: 5, offset: 26152}, + exprs: []interface{}{ + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonListElementContinuationElement968, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement972, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement975, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 814, col: 5, offset: 26183}, + run: (*parser).callonListElementContinuationElement982, + }, + &labeledExpr{ + pos: position{line: 818, col: 5, offset: 26335}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 834, col: 5, offset: 26860}, + expr: &actionExpr{ + pos: position{line: 834, col: 6, offset: 26861}, + run: (*parser).callonListElementContinuationElement985, + expr: &seqExpr{ + pos: position{line: 834, col: 6, offset: 26861}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 834, col: 6, offset: 26861}, + expr: &choiceExpr{ + pos: position{line: 831, col: 29, offset: 26803}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonListElementContinuationElement989, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement993, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement996, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 835, col: 5, offset: 26891}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement1006, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement1012, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1016, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 819, col: 5, offset: 26369}, + run: (*parser).callonListElementContinuationElement1023, + }, + &zeroOrOneExpr{ + pos: position{line: 824, col: 5, offset: 26570}, + expr: &choiceExpr{ + pos: position{line: 831, col: 29, offset: 26803}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + run: (*parser).callonListElementContinuationElement1026, + expr: &seqExpr{ + pos: position{line: 665, col: 26, offset: 21816}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 665, col: 26, offset: 21816}, + val: "....", + ignoreCase: false, + want: "\"....\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 665, col: 33, offset: 21823}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1030, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1033, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 843, col: 5, offset: 27060}, + run: (*parser).callonListElementContinuationElement1042, + expr: &seqExpr{ + pos: position{line: 843, col: 5, offset: 27060}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 843, col: 5, offset: 27060}, + label: "firstLine", + expr: &actionExpr{ + pos: position{line: 850, col: 5, offset: 27319}, + run: (*parser).callonListElementContinuationElement1045, + expr: &seqExpr{ + pos: position{line: 850, col: 5, offset: 27319}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 850, col: 5, offset: 27319}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement1048, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1054, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1057, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 851, col: 5, offset: 27334}, + val: "> ", + ignoreCase: false, + want: "\"> \"", + }, + &labeledExpr{ + pos: position{line: 852, col: 5, offset: 27344}, + label: "content", + expr: &actionExpr{ + pos: position{line: 852, col: 14, offset: 27353}, + run: (*parser).callonListElementContinuationElement1066, + expr: &oneOrMoreExpr{ + pos: position{line: 852, col: 15, offset: 27354}, + expr: &charClassMatcher{ + pos: position{line: 852, col: 15, offset: 27354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1070, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 844, col: 5, offset: 27097}, + label: "otherLines", + expr: &zeroOrMoreExpr{ + pos: position{line: 844, col: 16, offset: 27108}, + expr: &choiceExpr{ + pos: position{line: 844, col: 17, offset: 27109}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 850, col: 5, offset: 27319}, + run: (*parser).callonListElementContinuationElement1080, + expr: &seqExpr{ + pos: position{line: 850, col: 5, offset: 27319}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 850, col: 5, offset: 27319}, + expr: &actionExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement1083, + expr: &seqExpr{ + pos: position{line: 590, col: 14, offset: 19471}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 590, col: 14, offset: 19471}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &zeroOrMoreExpr{ + pos: position{line: 590, col: 19, offset: 19476}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1089, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1092, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + &litMatcher{ + pos: position{line: 851, col: 5, offset: 27334}, + val: "> ", + ignoreCase: false, + want: "\"> \"", + }, + &labeledExpr{ + pos: position{line: 852, col: 5, offset: 27344}, + label: "content", + expr: &actionExpr{ + pos: position{line: 852, col: 14, offset: 27353}, + run: (*parser).callonListElementContinuationElement1101, + expr: &oneOrMoreExpr{ + pos: position{line: 852, col: 15, offset: 27354}, + expr: &charClassMatcher{ + pos: position{line: 852, col: 15, offset: 27354}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1105, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonListElementContinuationElement1112, + expr: &seqExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + exprs: []interface{}{ + &labeledExpr{ + pos: position{line: 1644, col: 5, offset: 54823}, + label: "content", + expr: &actionExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonListElementContinuationElement1115, + expr: &oneOrMoreExpr{ + pos: position{line: 1644, col: 14, offset: 54832}, + expr: &charClassMatcher{ + pos: position{line: 1644, col: 14, offset: 54832}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonListElementContinuationElement1118, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1120, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, - &labeledExpr{ - pos: position{line: 1285, col: 5, offset: 43352}, - label: "content", + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + &actionExpr{ + pos: position{line: 869, col: 5, offset: 27712}, + run: (*parser).callonListElementContinuationElement1127, + expr: &seqExpr{ + pos: position{line: 869, col: 5, offset: 27712}, + exprs: []interface{}{ + &andCodeExpr{ + pos: position{line: 869, col: 5, offset: 27712}, + run: (*parser).callonListElementContinuationElement1129, + }, + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonListElementContinuationElement1130, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1134, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1137, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 874, col: 5, offset: 27903}, + run: (*parser).callonListElementContinuationElement1144, + }, + &labeledExpr{ + pos: position{line: 879, col: 5, offset: 28108}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 890, col: 5, offset: 28464}, + expr: &actionExpr{ + pos: position{line: 890, col: 6, offset: 28465}, + run: (*parser).callonListElementContinuationElement1147, + expr: &seqExpr{ + pos: position{line: 890, col: 6, offset: 28465}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 890, col: 6, offset: 28465}, + expr: &choiceExpr{ + pos: position{line: 887, col: 33, offset: 28399}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonListElementContinuationElement1151, + expr: &seqExpr{ + pos: position{line: 669, col: 30, offset: 21934}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, expr: &actionExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - run: (*parser).callonListElementContinuationElement462, - expr: &oneOrMoreExpr{ - pos: position{line: 1285, col: 14, offset: 43361}, - expr: &charClassMatcher{ - pos: position{line: 1285, col: 14, offset: 43361}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1155, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, }, }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement466, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1158, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -37753,13 +42321,97 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 891, col: 5, offset: 28499}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement1168, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement1174, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1178, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, @@ -37768,19 +42420,33 @@ var g = &grammar{ }, }, }, + }, + }, + }, + &zeroOrOneExpr{ + pos: position{line: 880, col: 5, offset: 28146}, + expr: &choiceExpr{ + pos: position{line: 887, col: 33, offset: 28399}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, - run: (*parser).callonListElementContinuationElement473, + pos: position{line: 669, col: 30, offset: 21934}, + run: (*parser).callonListElementContinuationElement1187, expr: &seqExpr{ - pos: position{line: 1488, col: 9, offset: 49936}, + pos: position{line: 669, col: 30, offset: 21934}, exprs: []interface{}{ - &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement475, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + &litMatcher{ + pos: position{line: 669, col: 30, offset: 21934}, + val: "++++", + ignoreCase: false, + want: "\"++++\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 669, col: 37, offset: 21941}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1191, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -37788,47 +42454,29 @@ var g = &grammar{ }, }, }, - &labeledExpr{ - pos: position{line: 1489, col: 9, offset: 49988}, - label: "content", - expr: &actionExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, - run: (*parser).callonListElementContinuationElement479, - expr: &oneOrMoreExpr{ - pos: position{line: 1489, col: 18, offset: 49997}, - expr: &charClassMatcher{ - pos: position{line: 1489, col: 18, offset: 49997}, - val: "[^\\r\\n]", - chars: []rune{'\r', '\n'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement483, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1194, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -37837,9 +42485,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -37847,562 +42495,263 @@ var g = &grammar{ }, }, }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 1316, col: 5, offset: 44198}, - label: "attributes", - expr: &zeroOrOneExpr{ - pos: position{line: 1316, col: 16, offset: 44209}, - expr: &ruleRefExpr{ - pos: position{line: 1316, col: 17, offset: 44210}, - name: "BlockAttributes", - }, - }, - }, - &labeledExpr{ - pos: position{line: 1317, col: 5, offset: 44232}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 1318, col: 9, offset: 44250}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement495, - expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, - expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement501, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement504, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, }, }, }, &actionExpr{ - pos: position{line: 110, col: 5, offset: 3252}, - run: (*parser).callonListElementContinuationElement511, + pos: position{line: 899, col: 5, offset: 28650}, + run: (*parser).callonListElementContinuationElement1203, expr: &seqExpr{ - pos: position{line: 110, col: 5, offset: 3252}, + pos: position{line: 899, col: 5, offset: 28650}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 110, col: 5, offset: 3252}, - val: ":", - ignoreCase: false, - want: "\":\"", + &andCodeExpr{ + pos: position{line: 899, col: 5, offset: 28650}, + run: (*parser).callonListElementContinuationElement1205, }, - &labeledExpr{ - pos: position{line: 110, col: 9, offset: 3256}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonListElementContinuationElement515, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonListElementContinuationElement1206, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1210, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, inverted: false, }, }, }, - }, - }, - }, - &litMatcher{ - pos: position{line: 110, col: 30, offset: 3277}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 111, col: 5, offset: 3286}, - label: "value", - expr: &zeroOrOneExpr{ - pos: position{line: 111, col: 11, offset: 3292}, - expr: &actionExpr{ - pos: position{line: 125, col: 5, offset: 3744}, - run: (*parser).callonListElementContinuationElement523, - expr: &seqExpr{ - pos: position{line: 125, col: 5, offset: 3744}, - exprs: []interface{}{ + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement525, - expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &labeledExpr{ - pos: position{line: 125, col: 12, offset: 3751}, - label: "elements", - expr: &zeroOrMoreExpr{ - pos: position{line: 125, col: 21, offset: 3760}, - expr: &actionExpr{ - pos: position{line: 129, col: 37, offset: 3919}, - run: (*parser).callonListElementContinuationElement530, - expr: &seqExpr{ - pos: position{line: 129, col: 37, offset: 3919}, - exprs: []interface{}{ - ¬Expr{ - pos: position{line: 129, col: 37, offset: 3919}, - expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement534, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", - }, - }, - }, - }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 130, col: 5, offset: 3929}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 131, col: 9, offset: 3947}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 131, col: 10, offset: 3948}, - run: (*parser).callonListElementContinuationElement543, - expr: &oneOrMoreExpr{ - pos: position{line: 131, col: 10, offset: 3948}, - expr: &charClassMatcher{ - pos: position{line: 131, col: 10, offset: 3948}, - val: "[^\\r\\n{]", - chars: []rune{'\r', '\n', '{'}, - ignoreCase: false, - inverted: true, - }, - }, - }, - &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonListElementContinuationElement546, - expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - exprs: []interface{}{ - &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, - run: (*parser).callonListElementContinuationElement548, - }, - &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, - label: "element", - expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - run: (*parser).callonListElementContinuationElement551, - expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, - val: "{counter:", - ignoreCase: false, - want: "\"{counter:\"", - }, - &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonListElementContinuationElement555, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonListElementContinuationElement562, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonListElementContinuationElement567, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonListElementContinuationElement569, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - run: (*parser).callonListElementContinuationElement573, - expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, - val: "{counter2:", - ignoreCase: false, - want: "\"{counter2:\"", - }, - &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonListElementContinuationElement577, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, - label: "start", - expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, - expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - run: (*parser).callonListElementContinuationElement584, - expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, - label: "start", - expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, - run: (*parser).callonListElementContinuationElement589, - expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, - val: "[A-Za-z]", - ranges: []rune{'A', 'Z', 'a', 'z'}, - ignoreCase: false, - inverted: false, - }, - }, - &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - run: (*parser).callonListElementContinuationElement591, - expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, - expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, - val: "[0-9]", - ranges: []rune{'0', '9'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - run: (*parser).callonListElementContinuationElement595, - expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, - val: "{", - ignoreCase: false, - want: "\"{\"", - }, - &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonListElementContinuationElement599, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - }, - }, - }, - }, - }, - &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, - val: "}", - ignoreCase: false, - want: "\"}\"", - }, - }, - }, - }, - }, - }, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1213, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + &andCodeExpr{ + pos: position{line: 904, col: 5, offset: 28829}, + run: (*parser).callonListElementContinuationElement1220, + }, + &labeledExpr{ + pos: position{line: 909, col: 5, offset: 29028}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 920, col: 4, offset: 29334}, + expr: &actionExpr{ + pos: position{line: 920, col: 5, offset: 29335}, + run: (*parser).callonListElementContinuationElement1223, + expr: &seqExpr{ + pos: position{line: 920, col: 5, offset: 29335}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 920, col: 5, offset: 29335}, + expr: &choiceExpr{ + pos: position{line: 917, col: 27, offset: 29282}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonListElementContinuationElement1227, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", + ignoreCase: false, + want: "\"____\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1231, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1234, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, - &actionExpr{ - pos: position{line: 135, col: 12, offset: 4076}, - run: (*parser).callonListElementContinuationElement605, - expr: &litMatcher{ - pos: position{line: 135, col: 12, offset: 4076}, - val: "{", + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 921, col: 5, offset: 29363}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement1244, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement1250, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1254, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", ignoreCase: false, - want: "\"{\"", + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", }, }, }, }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, }, }, }, @@ -38415,39 +42764,79 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 917, col: 27, offset: 29282}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement608, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ + pos: position{line: 673, col: 24, offset: 22050}, + run: (*parser).callonListElementContinuationElement1262, + expr: &seqExpr{ + pos: position{line: 673, col: 24, offset: 22050}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", + pos: position{line: 673, col: 24, offset: 22050}, + val: "____", ignoreCase: false, - want: "\"\\n\"", + want: "\"____\"", }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &zeroOrMoreExpr{ + pos: position{line: 673, col: 31, offset: 22057}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1266, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1269, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -38456,212 +42845,335 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 142, col: 19, offset: 4231}, - run: (*parser).callonListElementContinuationElement615, + pos: position{line: 929, col: 5, offset: 29518}, + run: (*parser).callonListElementContinuationElement1278, expr: &seqExpr{ - pos: position{line: 142, col: 19, offset: 4231}, + pos: position{line: 929, col: 5, offset: 29518}, exprs: []interface{}{ - &litMatcher{ - pos: position{line: 142, col: 19, offset: 4231}, - val: ":!", - ignoreCase: false, - want: "\":!\"", + &andCodeExpr{ + pos: position{line: 929, col: 5, offset: 29518}, + run: (*parser).callonListElementContinuationElement1280, }, - &labeledExpr{ - pos: position{line: 142, col: 24, offset: 4236}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonListElementContinuationElement619, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonListElementContinuationElement1281, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1285, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, ignoreCase: false, inverted: false, }, }, }, - }, - }, - }, - &litMatcher{ - pos: position{line: 142, col: 45, offset: 4257}, - val: ":", - ignoreCase: false, - want: "\":\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 142, col: 49, offset: 4261}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement626, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, - &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, - alternatives: []interface{}{ - &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement629, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ - &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", - ignoreCase: false, - want: "\"\\n\"", - }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1288, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, }, }, }, }, - ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, - expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, - }, - }, }, }, - }, - }, - }, - &actionExpr{ - pos: position{line: 144, col: 5, offset: 4328}, - run: (*parser).callonListElementContinuationElement636, - expr: &seqExpr{ - pos: position{line: 144, col: 5, offset: 4328}, - exprs: []interface{}{ - &litMatcher{ - pos: position{line: 144, col: 5, offset: 4328}, - val: ":", - ignoreCase: false, - want: "\":\"", + &andCodeExpr{ + pos: position{line: 934, col: 5, offset: 29701}, + run: (*parser).callonListElementContinuationElement1295, }, &labeledExpr{ - pos: position{line: 144, col: 9, offset: 4332}, - label: "name", - expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - run: (*parser).callonListElementContinuationElement640, - expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, - exprs: []interface{}{ - &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, - val: "[_0-9\\pL]", - chars: []rune{'_'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, - }, - &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, - expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, - val: "[-0-9\\pL]", - chars: []rune{'-'}, - ranges: []rune{'0', '9'}, - classes: []*unicode.RangeTable{rangeTable("L")}, - ignoreCase: false, - inverted: false, + pos: position{line: 939, col: 5, offset: 29902}, + label: "content", + expr: &zeroOrMoreExpr{ + pos: position{line: 950, col: 4, offset: 30226}, + expr: &actionExpr{ + pos: position{line: 950, col: 5, offset: 30227}, + run: (*parser).callonListElementContinuationElement1298, + expr: &seqExpr{ + pos: position{line: 950, col: 5, offset: 30227}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 950, col: 5, offset: 30227}, + expr: &choiceExpr{ + pos: position{line: 947, col: 29, offset: 30169}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonListElementContinuationElement1302, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ + &litMatcher{ + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", + ignoreCase: false, + want: "\"****\"", + }, + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1306, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1309, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + &labeledExpr{ + pos: position{line: 951, col: 5, offset: 30257}, + label: "line", + expr: &actionExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + run: (*parser).callonListElementContinuationElement1319, + expr: &seqExpr{ + pos: position{line: 682, col: 5, offset: 22281}, + exprs: []interface{}{ + ¬Expr{ + pos: position{line: 682, col: 5, offset: 22281}, + expr: ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + &labeledExpr{ + pos: position{line: 683, col: 5, offset: 22354}, + label: "content", + expr: &actionExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + run: (*parser).callonListElementContinuationElement1325, + expr: &zeroOrMoreExpr{ + pos: position{line: 683, col: 14, offset: 22363}, + expr: &charClassMatcher{ + pos: position{line: 683, col: 14, offset: 22363}, + val: "[^\\r\\n]", + chars: []rune{'\r', '\n'}, + ignoreCase: false, + inverted: true, + }, + }, + }, + }, + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1329, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, + }, + }, + }, + }, }, }, }, }, }, }, - &litMatcher{ - pos: position{line: 144, col: 30, offset: 4353}, - val: "!:", - ignoreCase: false, - want: "\"!:\"", - }, - &zeroOrMoreExpr{ - pos: position{line: 144, col: 35, offset: 4358}, - expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement647, - expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, - val: "[ \\t]", - chars: []rune{' ', '\t'}, - ignoreCase: false, - inverted: false, - }, - }, - }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 947, col: 29, offset: 30169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement650, - expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, - alternatives: []interface{}{ + pos: position{line: 677, col: 26, offset: 22162}, + run: (*parser).callonListElementContinuationElement1337, + expr: &seqExpr{ + pos: position{line: 677, col: 26, offset: 22162}, + exprs: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, - val: "\n", + pos: position{line: 677, col: 26, offset: 22162}, + val: "****", ignoreCase: false, - want: "\"\\n\"", + want: "\"****\"", }, - &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, - val: "\r\n", - ignoreCase: false, - want: "\"\\r\\n\"", + &zeroOrMoreExpr{ + pos: position{line: 677, col: 33, offset: 22169}, + expr: &actionExpr{ + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1341, + expr: &charClassMatcher{ + pos: position{line: 2919, col: 11, offset: 96711}, + val: "[ \\t]", + chars: []rune{' ', '\t'}, + ignoreCase: false, + inverted: false, + }, + }, }, - &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, - val: "\r", - ignoreCase: false, - want: "\"\\r\"", + &choiceExpr{ + pos: position{line: 2935, col: 8, offset: 97034}, + alternatives: []interface{}{ + &actionExpr{ + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1344, + expr: &choiceExpr{ + pos: position{line: 2928, col: 13, offset: 96895}, + alternatives: []interface{}{ + &litMatcher{ + pos: position{line: 2928, col: 13, offset: 96895}, + val: "\n", + ignoreCase: false, + want: "\"\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 20, offset: 96902}, + val: "\r\n", + ignoreCase: false, + want: "\"\\r\\n\"", + }, + &litMatcher{ + pos: position{line: 2928, col: 29, offset: 96911}, + val: "\r", + ignoreCase: false, + want: "\"\\r\"", + }, + }, + }, + }, + ¬Expr{ + pos: position{line: 2932, col: 8, offset: 96984}, + expr: &anyMatcher{ + line: 2932, col: 9, offset: 96985, + }, + }, + }, }, }, }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -38669,57 +43181,53 @@ var g = &grammar{ }, }, }, - &ruleRefExpr{ - pos: position{line: 1321, col: 11, offset: 44326}, - name: "DelimitedBlock", - }, &actionExpr{ - pos: position{line: 2741, col: 18, offset: 91169}, - run: (*parser).callonListElementContinuationElement658, + pos: position{line: 2801, col: 18, offset: 92923}, + run: (*parser).callonListElementContinuationElement1353, expr: &seqExpr{ - pos: position{line: 2741, col: 18, offset: 91169}, + pos: position{line: 2801, col: 18, offset: 92923}, exprs: []interface{}{ &choiceExpr{ - pos: position{line: 2742, col: 9, offset: 91179}, + pos: position{line: 2802, col: 9, offset: 92933}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2742, col: 9, offset: 91179}, + pos: position{line: 2802, col: 9, offset: 92933}, val: "'''", ignoreCase: false, want: "\"'''\"", }, &litMatcher{ - pos: position{line: 2743, col: 11, offset: 91215}, + pos: position{line: 2803, col: 11, offset: 92969}, val: "***", ignoreCase: false, want: "\"***\"", }, &litMatcher{ - pos: position{line: 2743, col: 19, offset: 91223}, + pos: position{line: 2803, col: 19, offset: 92977}, val: "* * *", ignoreCase: false, want: "\"* * *\"", }, &litMatcher{ - pos: position{line: 2743, col: 29, offset: 91233}, + pos: position{line: 2803, col: 29, offset: 92987}, val: "---", ignoreCase: false, want: "\"---\"", }, &litMatcher{ - pos: position{line: 2743, col: 37, offset: 91241}, + pos: position{line: 2803, col: 37, offset: 92995}, val: "- - -", ignoreCase: false, want: "\"- - -\"", }, &litMatcher{ - pos: position{line: 2743, col: 47, offset: 91251}, + pos: position{line: 2803, col: 47, offset: 93005}, val: "___", ignoreCase: false, want: "\"___\"", }, &litMatcher{ - pos: position{line: 2743, col: 55, offset: 91259}, + pos: position{line: 2803, col: 55, offset: 93013}, val: "_ _ _", ignoreCase: false, want: "\"_ _ _\"", @@ -38727,12 +43235,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 2744, col: 11, offset: 91317}, + pos: position{line: 2804, col: 11, offset: 93071}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement669, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1364, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -38741,28 +43249,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement672, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1367, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -38771,36 +43279,36 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement680, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1375, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -38809,9 +43317,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -38820,32 +43328,28 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1323, col: 11, offset: 44412}, + pos: position{line: 1384, col: 11, offset: 46199}, name: "ImageBlock", }, - &ruleRefExpr{ - pos: position{line: 1324, col: 11, offset: 44433}, - name: "FileInclusion", - }, &actionExpr{ - pos: position{line: 2639, col: 5, offset: 88300}, - run: (*parser).callonListElementContinuationElement689, + pos: position{line: 2699, col: 5, offset: 90054}, + run: (*parser).callonListElementContinuationElement1383, expr: &seqExpr{ - pos: position{line: 2639, col: 5, offset: 88300}, + pos: position{line: 2699, col: 5, offset: 90054}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, val: "|===", ignoreCase: false, want: "\"|===\"", }, &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + pos: position{line: 2707, col: 26, offset: 90238}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement693, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1387, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -38854,28 +43358,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement696, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1390, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -38884,48 +43388,48 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, &labeledExpr{ - pos: position{line: 2640, col: 5, offset: 88324}, + pos: position{line: 2700, col: 5, offset: 90078}, label: "header", expr: &zeroOrOneExpr{ - pos: position{line: 2640, col: 12, offset: 88331}, + pos: position{line: 2700, col: 12, offset: 90085}, expr: &actionExpr{ - pos: position{line: 2655, col: 5, offset: 88644}, - run: (*parser).callonListElementContinuationElement705, + pos: position{line: 2715, col: 5, offset: 90398}, + run: (*parser).callonListElementContinuationElement1399, expr: &seqExpr{ - pos: position{line: 2655, col: 5, offset: 88644}, + pos: position{line: 2715, col: 5, offset: 90398}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2655, col: 5, offset: 88644}, + pos: position{line: 2715, col: 5, offset: 90398}, label: "cells", expr: &oneOrMoreExpr{ - pos: position{line: 2655, col: 11, offset: 88650}, + pos: position{line: 2715, col: 11, offset: 90404}, expr: &actionExpr{ - pos: position{line: 2661, col: 5, offset: 88767}, - run: (*parser).callonListElementContinuationElement709, + pos: position{line: 2721, col: 5, offset: 90521}, + run: (*parser).callonListElementContinuationElement1403, expr: &seqExpr{ - pos: position{line: 2661, col: 5, offset: 88767}, + pos: position{line: 2721, col: 5, offset: 90521}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2661, col: 5, offset: 88767}, + pos: position{line: 2721, col: 5, offset: 90521}, val: "|", ignoreCase: false, want: "\"|\"", }, &zeroOrMoreExpr{ - pos: position{line: 2661, col: 9, offset: 88771}, + pos: position{line: 2721, col: 9, offset: 90525}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement713, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1407, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -38934,23 +43438,23 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2662, col: 5, offset: 88783}, + pos: position{line: 2722, col: 5, offset: 90537}, label: "content", expr: &zeroOrOneExpr{ - pos: position{line: 2662, col: 14, offset: 88792}, + pos: position{line: 2722, col: 14, offset: 90546}, expr: &actionExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - run: (*parser).callonListElementContinuationElement717, + pos: position{line: 2754, col: 5, offset: 91334}, + run: (*parser).callonListElementContinuationElement1411, expr: &labeledExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, + pos: position{line: 2754, col: 5, offset: 91334}, label: "content", expr: &actionExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - run: (*parser).callonListElementContinuationElement719, + pos: position{line: 2754, col: 14, offset: 91343}, + run: (*parser).callonListElementContinuationElement1413, expr: &oneOrMoreExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, + pos: position{line: 2754, col: 14, offset: 91343}, expr: &charClassMatcher{ - pos: position{line: 2694, col: 14, offset: 89589}, + pos: position{line: 2754, col: 14, offset: 91343}, val: "[^\\r\\n|]", chars: []rune{'\r', '\n', '|'}, ignoreCase: false, @@ -38968,28 +43472,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement723, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1417, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -38998,37 +43502,37 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, &oneOrMoreExpr{ - pos: position{line: 2656, col: 5, offset: 88672}, + pos: position{line: 2716, col: 5, offset: 90426}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement731, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement1425, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement737, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1431, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39037,28 +43541,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement740, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1434, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39067,9 +43571,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39084,40 +43588,40 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2641, col: 5, offset: 88350}, + pos: position{line: 2701, col: 5, offset: 90104}, label: "rows", expr: &zeroOrMoreExpr{ - pos: position{line: 2641, col: 10, offset: 88355}, + pos: position{line: 2701, col: 10, offset: 90109}, expr: &choiceExpr{ - pos: position{line: 2666, col: 13, offset: 88889}, + pos: position{line: 2726, col: 13, offset: 90643}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2676, col: 5, offset: 89108}, - run: (*parser).callonListElementContinuationElement750, + pos: position{line: 2736, col: 5, offset: 90862}, + run: (*parser).callonListElementContinuationElement1444, expr: &seqExpr{ - pos: position{line: 2676, col: 5, offset: 89108}, + pos: position{line: 2736, col: 5, offset: 90862}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2676, col: 5, offset: 89108}, + pos: position{line: 2736, col: 5, offset: 90862}, expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, + pos: position{line: 2711, col: 22, offset: 90311}, alternatives: []interface{}{ &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, val: "|===", ignoreCase: false, want: "\"|===\"", }, &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + pos: position{line: 2707, col: 26, offset: 90238}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement757, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1451, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39126,28 +43630,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement760, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1454, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39156,9 +43660,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39166,55 +43670,55 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &labeledExpr{ - pos: position{line: 2677, col: 5, offset: 89131}, + pos: position{line: 2737, col: 5, offset: 90885}, label: "cells", expr: &oneOrMoreExpr{ - pos: position{line: 2677, col: 11, offset: 89137}, + pos: position{line: 2737, col: 11, offset: 90891}, expr: &actionExpr{ - pos: position{line: 2677, col: 12, offset: 89138}, - run: (*parser).callonListElementContinuationElement771, + pos: position{line: 2737, col: 12, offset: 90892}, + run: (*parser).callonListElementContinuationElement1465, expr: &seqExpr{ - pos: position{line: 2677, col: 12, offset: 89138}, + pos: position{line: 2737, col: 12, offset: 90892}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2677, col: 12, offset: 89138}, + pos: position{line: 2737, col: 12, offset: 90892}, label: "cell", expr: &actionExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, - run: (*parser).callonListElementContinuationElement774, + pos: position{line: 2746, col: 5, offset: 91133}, + run: (*parser).callonListElementContinuationElement1468, expr: &seqExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, + pos: position{line: 2746, col: 5, offset: 91133}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2686, col: 5, offset: 89379}, + pos: position{line: 2746, col: 5, offset: 91133}, expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, + pos: position{line: 2711, col: 22, offset: 90311}, alternatives: []interface{}{ &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, val: "|===", ignoreCase: false, want: "\"|===\"", }, &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + pos: position{line: 2707, col: 26, offset: 90238}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement781, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1475, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39223,28 +43727,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement784, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1478, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39253,9 +43757,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39263,38 +43767,38 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, ¬Expr{ - pos: position{line: 2687, col: 5, offset: 89402}, + pos: position{line: 2747, col: 5, offset: 91156}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement794, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement1488, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement800, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1494, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39303,28 +43807,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement803, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1497, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39333,9 +43837,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39345,18 +43849,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2688, col: 5, offset: 89417}, + pos: position{line: 2748, col: 5, offset: 91171}, val: "|", ignoreCase: false, want: "\"|\"", }, &zeroOrMoreExpr{ - pos: position{line: 2688, col: 9, offset: 89421}, + pos: position{line: 2748, col: 9, offset: 91175}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement812, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1506, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39365,23 +43869,23 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2688, col: 16, offset: 89428}, + pos: position{line: 2748, col: 16, offset: 91182}, label: "content", expr: &zeroOrOneExpr{ - pos: position{line: 2688, col: 25, offset: 89437}, + pos: position{line: 2748, col: 25, offset: 91191}, expr: &actionExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - run: (*parser).callonListElementContinuationElement816, + pos: position{line: 2754, col: 5, offset: 91334}, + run: (*parser).callonListElementContinuationElement1510, expr: &labeledExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, + pos: position{line: 2754, col: 5, offset: 91334}, label: "content", expr: &actionExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - run: (*parser).callonListElementContinuationElement818, + pos: position{line: 2754, col: 14, offset: 91343}, + run: (*parser).callonListElementContinuationElement1512, expr: &oneOrMoreExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, + pos: position{line: 2754, col: 14, offset: 91343}, expr: &charClassMatcher{ - pos: position{line: 2694, col: 14, offset: 89589}, + pos: position{line: 2754, col: 14, offset: 91343}, val: "[^\\r\\n|]", chars: []rune{'\r', '\n', '|'}, ignoreCase: false, @@ -39398,28 +43902,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement822, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1516, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39428,9 +43932,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39441,32 +43945,32 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2680, col: 6, offset: 89200}, + pos: position{line: 2740, col: 6, offset: 90954}, alternatives: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2680, col: 6, offset: 89200}, + pos: position{line: 2740, col: 6, offset: 90954}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement831, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement1525, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement837, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1531, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39475,28 +43979,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement840, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1534, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39505,9 +44009,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39517,26 +44021,26 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2680, col: 19, offset: 89213}, + pos: position{line: 2740, col: 19, offset: 90967}, expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, + pos: position{line: 2711, col: 22, offset: 90311}, alternatives: []interface{}{ &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, val: "|===", ignoreCase: false, want: "\"|===\"", }, &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + pos: position{line: 2707, col: 26, offset: 90238}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement852, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1546, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39545,28 +44049,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement855, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1549, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39575,9 +44079,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39585,9 +44089,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39599,32 +44103,32 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2669, col: 5, offset: 88956}, - run: (*parser).callonListElementContinuationElement864, + pos: position{line: 2729, col: 5, offset: 90710}, + run: (*parser).callonListElementContinuationElement1558, expr: &seqExpr{ - pos: position{line: 2669, col: 5, offset: 88956}, + pos: position{line: 2729, col: 5, offset: 90710}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2669, col: 5, offset: 88956}, + pos: position{line: 2729, col: 5, offset: 90710}, expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, + pos: position{line: 2711, col: 22, offset: 90311}, alternatives: []interface{}{ &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, val: "|===", ignoreCase: false, want: "\"|===\"", }, &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + pos: position{line: 2707, col: 26, offset: 90238}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement871, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1565, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39633,28 +44137,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement874, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1568, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39663,9 +44167,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39673,46 +44177,46 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, &labeledExpr{ - pos: position{line: 2670, col: 5, offset: 88979}, + pos: position{line: 2730, col: 5, offset: 90733}, label: "cells", expr: &oneOrMoreExpr{ - pos: position{line: 2670, col: 11, offset: 88985}, + pos: position{line: 2730, col: 11, offset: 90739}, expr: &actionExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, - run: (*parser).callonListElementContinuationElement885, + pos: position{line: 2746, col: 5, offset: 91133}, + run: (*parser).callonListElementContinuationElement1579, expr: &seqExpr{ - pos: position{line: 2686, col: 5, offset: 89379}, + pos: position{line: 2746, col: 5, offset: 91133}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2686, col: 5, offset: 89379}, + pos: position{line: 2746, col: 5, offset: 91133}, expr: &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, + pos: position{line: 2711, col: 22, offset: 90311}, alternatives: []interface{}{ &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, val: "|===", ignoreCase: false, want: "\"|===\"", }, &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + pos: position{line: 2707, col: 26, offset: 90238}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement892, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1586, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39721,28 +44225,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement895, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1589, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39751,9 +44255,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39761,38 +44265,38 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, }, ¬Expr{ - pos: position{line: 2687, col: 5, offset: 89402}, + pos: position{line: 2747, col: 5, offset: 91156}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement905, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement1599, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement911, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1605, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39801,28 +44305,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement914, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1608, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39831,9 +44335,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -39843,18 +44347,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2688, col: 5, offset: 89417}, + pos: position{line: 2748, col: 5, offset: 91171}, val: "|", ignoreCase: false, want: "\"|\"", }, &zeroOrMoreExpr{ - pos: position{line: 2688, col: 9, offset: 89421}, + pos: position{line: 2748, col: 9, offset: 91175}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement923, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1617, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39863,23 +44367,23 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2688, col: 16, offset: 89428}, + pos: position{line: 2748, col: 16, offset: 91182}, label: "content", expr: &zeroOrOneExpr{ - pos: position{line: 2688, col: 25, offset: 89437}, + pos: position{line: 2748, col: 25, offset: 91191}, expr: &actionExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, - run: (*parser).callonListElementContinuationElement927, + pos: position{line: 2754, col: 5, offset: 91334}, + run: (*parser).callonListElementContinuationElement1621, expr: &labeledExpr{ - pos: position{line: 2694, col: 5, offset: 89580}, + pos: position{line: 2754, col: 5, offset: 91334}, label: "content", expr: &actionExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, - run: (*parser).callonListElementContinuationElement929, + pos: position{line: 2754, col: 14, offset: 91343}, + run: (*parser).callonListElementContinuationElement1623, expr: &oneOrMoreExpr{ - pos: position{line: 2694, col: 14, offset: 89589}, + pos: position{line: 2754, col: 14, offset: 91343}, expr: &charClassMatcher{ - pos: position{line: 2694, col: 14, offset: 89589}, + pos: position{line: 2754, col: 14, offset: 91343}, val: "[^\\r\\n|]", chars: []rune{'\r', '\n', '|'}, ignoreCase: false, @@ -39897,28 +44401,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement933, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1627, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39927,37 +44431,37 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 2671, col: 5, offset: 89006}, + pos: position{line: 2731, col: 5, offset: 90760}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, - run: (*parser).callonListElementContinuationElement941, + pos: position{line: 590, col: 14, offset: 19471}, + run: (*parser).callonListElementContinuationElement1635, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement947, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1641, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -39966,28 +44470,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement950, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1644, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -39996,9 +44500,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40015,24 +44519,24 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2651, col: 22, offset: 88557}, + pos: position{line: 2711, col: 22, offset: 90311}, alternatives: []interface{}{ &seqExpr{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2647, col: 19, offset: 88477}, + pos: position{line: 2707, col: 19, offset: 90231}, val: "|===", ignoreCase: false, want: "\"|===\"", }, &zeroOrMoreExpr{ - pos: position{line: 2647, col: 26, offset: 88484}, + pos: position{line: 2707, col: 26, offset: 90238}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement961, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1655, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -40041,28 +44545,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement964, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1658, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40071,9 +44575,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40081,9 +44585,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40092,36 +44596,36 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonListElementContinuationElement973, + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonListElementContinuationElement1667, expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, + pos: position{line: 2654, col: 31, offset: 88719}, val: "//", ignoreCase: false, want: "\"//\"", }, ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, + pos: position{line: 2654, col: 36, offset: 88724}, expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, + pos: position{line: 2654, col: 37, offset: 88725}, val: "//", ignoreCase: false, want: "\"//\"", }, }, &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, + pos: position{line: 2649, col: 49, offset: 88525}, label: "content", expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonListElementContinuationElement979, + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonListElementContinuationElement1673, expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40131,28 +44635,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement983, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1677, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40161,9 +44665,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40172,62 +44676,62 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1572, col: 5, offset: 52684}, - run: (*parser).callonListElementContinuationElement990, + pos: position{line: 1632, col: 5, offset: 54447}, + run: (*parser).callonListElementContinuationElement1684, expr: &seqExpr{ - pos: position{line: 1572, col: 5, offset: 52684}, + pos: position{line: 1632, col: 5, offset: 54447}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1572, col: 5, offset: 52684}, + pos: position{line: 1632, col: 5, offset: 54447}, label: "kind", expr: &choiceExpr{ - pos: position{line: 94, col: 19, offset: 2789}, + pos: position{line: 237, col: 19, offset: 7446}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 94, col: 19, offset: 2789}, - run: (*parser).callonListElementContinuationElement994, + pos: position{line: 237, col: 19, offset: 7446}, + run: (*parser).callonListElementContinuationElement1688, expr: &litMatcher{ - pos: position{line: 94, col: 19, offset: 2789}, + pos: position{line: 237, col: 19, offset: 7446}, val: "TIP", ignoreCase: false, want: "\"TIP\"", }, }, &actionExpr{ - pos: position{line: 96, col: 5, offset: 2827}, - run: (*parser).callonListElementContinuationElement996, + pos: position{line: 239, col: 5, offset: 7484}, + run: (*parser).callonListElementContinuationElement1690, expr: &litMatcher{ - pos: position{line: 96, col: 5, offset: 2827}, + pos: position{line: 239, col: 5, offset: 7484}, val: "NOTE", ignoreCase: false, want: "\"NOTE\"", }, }, &actionExpr{ - pos: position{line: 98, col: 5, offset: 2867}, - run: (*parser).callonListElementContinuationElement998, + pos: position{line: 241, col: 5, offset: 7524}, + run: (*parser).callonListElementContinuationElement1692, expr: &litMatcher{ - pos: position{line: 98, col: 5, offset: 2867}, + pos: position{line: 241, col: 5, offset: 7524}, val: "IMPORTANT", ignoreCase: false, want: "\"IMPORTANT\"", }, }, &actionExpr{ - pos: position{line: 100, col: 5, offset: 2917}, - run: (*parser).callonListElementContinuationElement1000, + pos: position{line: 243, col: 5, offset: 7574}, + run: (*parser).callonListElementContinuationElement1694, expr: &litMatcher{ - pos: position{line: 100, col: 5, offset: 2917}, + pos: position{line: 243, col: 5, offset: 7574}, val: "WARNING", ignoreCase: false, want: "\"WARNING\"", }, }, &actionExpr{ - pos: position{line: 102, col: 5, offset: 2963}, - run: (*parser).callonListElementContinuationElement1002, + pos: position{line: 245, col: 5, offset: 7620}, + run: (*parser).callonListElementContinuationElement1696, expr: &litMatcher{ - pos: position{line: 102, col: 5, offset: 2963}, + pos: position{line: 245, col: 5, offset: 7620}, val: "CAUTION", ignoreCase: false, want: "\"CAUTION\"", @@ -40237,30 +44741,30 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1572, col: 27, offset: 52706}, + pos: position{line: 1632, col: 27, offset: 54469}, val: ": ", ignoreCase: false, want: "\": \"", }, &labeledExpr{ - pos: position{line: 1573, col: 5, offset: 52716}, + pos: position{line: 1633, col: 5, offset: 54479}, label: "firstLine", expr: &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - run: (*parser).callonListElementContinuationElement1006, + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonListElementContinuationElement1700, expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, label: "content", expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - run: (*parser).callonListElementContinuationElement1009, + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonListElementContinuationElement1703, expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40270,32 +44774,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, - run: (*parser).callonListElementContinuationElement1012, + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonListElementContinuationElement1706, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1014, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1708, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40304,9 +44808,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40316,34 +44820,34 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1574, col: 5, offset: 52750}, + pos: position{line: 1634, col: 5, offset: 54513}, label: "otherLines", expr: &zeroOrMoreExpr{ - pos: position{line: 1574, col: 16, offset: 52761}, + pos: position{line: 1634, col: 16, offset: 54524}, expr: &actionExpr{ - pos: position{line: 1575, col: 9, offset: 52771}, - run: (*parser).callonListElementContinuationElement1023, + pos: position{line: 1635, col: 9, offset: 54534}, + run: (*parser).callonListElementContinuationElement1717, expr: &seqExpr{ - pos: position{line: 1575, col: 9, offset: 52771}, + pos: position{line: 1635, col: 9, offset: 54534}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1575, col: 9, offset: 52771}, + pos: position{line: 1635, col: 9, offset: 54534}, expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, + pos: position{line: 1372, col: 38, offset: 45848}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, - run: (*parser).callonListElementContinuationElement1029, + pos: position{line: 2919, col: 10, offset: 96710}, + run: (*parser).callonListElementContinuationElement1723, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -40352,25 +44856,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1031, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1725, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40382,42 +44886,42 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1576, col: 9, offset: 52810}, + pos: position{line: 1636, col: 9, offset: 54573}, label: "line", expr: &choiceExpr{ - pos: position{line: 1576, col: 15, offset: 52816}, + pos: position{line: 1636, col: 15, offset: 54579}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonListElementContinuationElement1038, + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonListElementContinuationElement1732, expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, + pos: position{line: 2654, col: 31, offset: 88719}, val: "//", ignoreCase: false, want: "\"//\"", }, ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, + pos: position{line: 2654, col: 36, offset: 88724}, expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, + pos: position{line: 2654, col: 37, offset: 88725}, val: "//", ignoreCase: false, want: "\"//\"", }, }, &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, + pos: position{line: 2649, col: 49, offset: 88525}, label: "content", expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonListElementContinuationElement1044, + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonListElementContinuationElement1738, expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40427,28 +44931,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1048, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1742, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40457,9 +44961,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40468,21 +44972,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - run: (*parser).callonListElementContinuationElement1055, + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonListElementContinuationElement1749, expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, label: "content", expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - run: (*parser).callonListElementContinuationElement1058, + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonListElementContinuationElement1752, expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40492,32 +44996,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, - run: (*parser).callonListElementContinuationElement1061, + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonListElementContinuationElement1755, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1063, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1757, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40526,9 +45030,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40548,36 +45052,36 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1595, col: 5, offset: 53290}, - run: (*parser).callonListElementContinuationElement1070, + pos: position{line: 1655, col: 5, offset: 55053}, + run: (*parser).callonListElementContinuationElement1764, expr: &seqExpr{ - pos: position{line: 1595, col: 5, offset: 53290}, + pos: position{line: 1655, col: 5, offset: 55053}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1595, col: 5, offset: 53290}, + pos: position{line: 1655, col: 5, offset: 55053}, label: "firstLine", expr: &actionExpr{ - pos: position{line: 1602, col: 5, offset: 53575}, - run: (*parser).callonListElementContinuationElement1073, + pos: position{line: 1662, col: 5, offset: 55338}, + run: (*parser).callonListElementContinuationElement1767, expr: &seqExpr{ - pos: position{line: 1602, col: 5, offset: 53575}, + pos: position{line: 1662, col: 5, offset: 55338}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1602, col: 5, offset: 53575}, + pos: position{line: 1662, col: 5, offset: 55338}, label: "content", expr: &actionExpr{ - pos: position{line: 1602, col: 14, offset: 53584}, - run: (*parser).callonListElementContinuationElement1076, + pos: position{line: 1662, col: 14, offset: 55347}, + run: (*parser).callonListElementContinuationElement1770, expr: &seqExpr{ - pos: position{line: 1602, col: 14, offset: 53584}, + pos: position{line: 1662, col: 14, offset: 55347}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, - run: (*parser).callonListElementContinuationElement1078, + pos: position{line: 2923, col: 11, offset: 96777}, + run: (*parser).callonListElementContinuationElement1772, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -40586,9 +45090,9 @@ var g = &grammar{ }, }, &oneOrMoreExpr{ - pos: position{line: 1602, col: 21, offset: 53591}, + pos: position{line: 1662, col: 21, offset: 55354}, expr: &charClassMatcher{ - pos: position{line: 1602, col: 21, offset: 53591}, + pos: position{line: 1662, col: 21, offset: 55354}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40600,32 +45104,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1605, col: 5, offset: 53648}, - run: (*parser).callonListElementContinuationElement1083, + pos: position{line: 1665, col: 5, offset: 55411}, + run: (*parser).callonListElementContinuationElement1777, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1085, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1779, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40634,9 +45138,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40646,44 +45150,44 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1596, col: 5, offset: 53331}, + pos: position{line: 1656, col: 5, offset: 55094}, label: "otherLines", expr: &zeroOrMoreExpr{ - pos: position{line: 1596, col: 16, offset: 53342}, + pos: position{line: 1656, col: 16, offset: 55105}, expr: &choiceExpr{ - pos: position{line: 1596, col: 17, offset: 53343}, + pos: position{line: 1656, col: 17, offset: 55106}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, - run: (*parser).callonListElementContinuationElement1095, + pos: position{line: 2649, col: 22, offset: 88498}, + run: (*parser).callonListElementContinuationElement1789, expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, + pos: position{line: 2654, col: 31, offset: 88719}, val: "//", ignoreCase: false, want: "\"//\"", }, ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, + pos: position{line: 2654, col: 36, offset: 88724}, expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, + pos: position{line: 2654, col: 37, offset: 88725}, val: "//", ignoreCase: false, want: "\"//\"", }, }, &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, + pos: position{line: 2649, col: 49, offset: 88525}, label: "content", expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, - run: (*parser).callonListElementContinuationElement1101, + pos: position{line: 2656, col: 29, offset: 88760}, + run: (*parser).callonListElementContinuationElement1795, expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40693,28 +45197,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1105, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1799, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40723,9 +45227,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40734,21 +45238,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, - run: (*parser).callonListElementContinuationElement1112, + pos: position{line: 1644, col: 5, offset: 54823}, + run: (*parser).callonListElementContinuationElement1806, expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, label: "content", expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, - run: (*parser).callonListElementContinuationElement1115, + pos: position{line: 1644, col: 14, offset: 54832}, + run: (*parser).callonListElementContinuationElement1809, expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40758,32 +45262,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, - run: (*parser).callonListElementContinuationElement1118, + pos: position{line: 1647, col: 5, offset: 54889}, + run: (*parser).callonListElementContinuationElement1812, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1120, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1814, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40792,9 +45296,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40810,21 +45314,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1342, col: 5, offset: 45067}, - run: (*parser).callonListElementContinuationElement1127, + pos: position{line: 1402, col: 5, offset: 46830}, + run: (*parser).callonListElementContinuationElement1821, expr: &seqExpr{ - pos: position{line: 1342, col: 5, offset: 45067}, + pos: position{line: 1402, col: 5, offset: 46830}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1342, col: 5, offset: 45067}, + pos: position{line: 1402, col: 5, offset: 46830}, label: "content", expr: &actionExpr{ - pos: position{line: 1342, col: 14, offset: 45076}, - run: (*parser).callonListElementContinuationElement1130, + pos: position{line: 1402, col: 14, offset: 46839}, + run: (*parser).callonListElementContinuationElement1824, expr: &oneOrMoreExpr{ - pos: position{line: 1342, col: 14, offset: 45076}, + pos: position{line: 1402, col: 14, offset: 46839}, expr: &charClassMatcher{ - pos: position{line: 1342, col: 14, offset: 45076}, + pos: position{line: 1402, col: 14, offset: 46839}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -40834,28 +45338,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, - run: (*parser).callonListElementContinuationElement1134, + pos: position{line: 2928, col: 12, offset: 96894}, + run: (*parser).callonListElementContinuationElement1828, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40864,9 +45368,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -40883,33 +45387,33 @@ var g = &grammar{ }, { name: "Callout", - pos: position{line: 1500, col: 1, offset: 50230}, + pos: position{line: 1560, col: 1, offset: 51993}, expr: &actionExpr{ - pos: position{line: 1502, col: 5, offset: 50308}, + pos: position{line: 1562, col: 5, offset: 52071}, run: (*parser).callonCallout1, expr: &seqExpr{ - pos: position{line: 1502, col: 5, offset: 50308}, + pos: position{line: 1562, col: 5, offset: 52071}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 1502, col: 5, offset: 50308}, + pos: position{line: 1562, col: 5, offset: 52071}, run: (*parser).callonCallout3, }, &litMatcher{ - pos: position{line: 1505, col: 5, offset: 50370}, + pos: position{line: 1565, col: 5, offset: 52133}, val: "<", ignoreCase: false, want: "\"<\"", }, &labeledExpr{ - pos: position{line: 1505, col: 9, offset: 50374}, + pos: position{line: 1565, col: 9, offset: 52137}, label: "ref", expr: &actionExpr{ - pos: position{line: 1505, col: 14, offset: 50379}, + pos: position{line: 1565, col: 14, offset: 52142}, run: (*parser).callonCallout6, expr: &oneOrMoreExpr{ - pos: position{line: 1505, col: 14, offset: 50379}, + pos: position{line: 1565, col: 14, offset: 52142}, expr: &charClassMatcher{ - pos: position{line: 1505, col: 14, offset: 50379}, + pos: position{line: 1565, col: 14, offset: 52142}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -40919,18 +45423,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1505, col: 62, offset: 50427}, + pos: position{line: 1565, col: 62, offset: 52190}, val: ">", ignoreCase: false, want: "\">\"", }, &zeroOrMoreExpr{ - pos: position{line: 1505, col: 66, offset: 50431}, + pos: position{line: 1565, col: 66, offset: 52194}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonCallout11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -40939,30 +45443,30 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1505, col: 73, offset: 50438}, + pos: position{line: 1565, col: 73, offset: 52201}, expr: &choiceExpr{ - pos: position{line: 1505, col: 75, offset: 50440}, + pos: position{line: 1565, col: 75, offset: 52203}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonCallout15, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -40971,13 +45475,13 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, &ruleRefExpr{ - pos: position{line: 1505, col: 81, offset: 50446}, + pos: position{line: 1565, col: 81, offset: 52209}, name: "Callout", }, }, @@ -40989,17 +45493,17 @@ var g = &grammar{ }, { name: "ShortcutParagraph", - pos: position{line: 1531, col: 1, offset: 51307}, + pos: position{line: 1591, col: 1, offset: 53070}, expr: &actionExpr{ - pos: position{line: 1532, col: 5, offset: 51333}, + pos: position{line: 1592, col: 5, offset: 53096}, run: (*parser).callonShortcutParagraph1, expr: &seqExpr{ - pos: position{line: 1532, col: 5, offset: 51333}, + pos: position{line: 1592, col: 5, offset: 53096}, exprs: []interface{}{ &andExpr{ - pos: position{line: 1532, col: 5, offset: 51333}, + pos: position{line: 1592, col: 5, offset: 53096}, expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -41008,22 +45512,22 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1533, col: 5, offset: 51444}, + pos: position{line: 1593, col: 5, offset: 53207}, expr: ¬Expr{ - pos: position{line: 1533, col: 7, offset: 51446}, + pos: position{line: 1593, col: 7, offset: 53209}, expr: &actionExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, run: (*parser).callonShortcutParagraph7, expr: &seqExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1360, col: 5, offset: 45560}, + pos: position{line: 1420, col: 5, offset: 47323}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonShortcutParagraph10, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41032,27 +45536,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1360, col: 12, offset: 45567}, + pos: position{line: 1420, col: 12, offset: 47330}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, run: (*parser).callonShortcutParagraph14, expr: &seqExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1362, col: 9, offset: 45630}, + pos: position{line: 1422, col: 9, offset: 47393}, label: "depth", expr: &actionExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, run: (*parser).callonShortcutParagraph17, expr: &oneOrMoreExpr{ - pos: position{line: 1362, col: 16, offset: 45637}, + pos: position{line: 1422, col: 16, offset: 47400}, expr: &litMatcher{ - pos: position{line: 1362, col: 17, offset: 45638}, + pos: position{line: 1422, col: 17, offset: 47401}, val: ".", ignoreCase: false, want: "\".\"", @@ -41061,22 +45565,22 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1366, col: 9, offset: 45738}, + pos: position{line: 1426, col: 9, offset: 47501}, run: (*parser).callonShortcutParagraph20, }, }, }, }, &actionExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, run: (*parser).callonShortcutParagraph21, expr: &seqExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1385, col: 11, offset: 46455}, + pos: position{line: 1445, col: 11, offset: 48218}, expr: &charClassMatcher{ - pos: position{line: 1385, col: 12, offset: 46456}, + pos: position{line: 1445, col: 12, offset: 48219}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -41084,7 +45588,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1385, col: 20, offset: 46464}, + pos: position{line: 1445, col: 20, offset: 48227}, val: ".", ignoreCase: false, want: "\".\"", @@ -41093,20 +45597,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, run: (*parser).callonShortcutParagraph26, expr: &seqExpr{ - pos: position{line: 1387, col: 13, offset: 46581}, + pos: position{line: 1447, col: 13, offset: 48344}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1387, col: 14, offset: 46582}, + pos: position{line: 1447, col: 14, offset: 48345}, val: "[a-z]", ranges: []rune{'a', 'z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1387, col: 21, offset: 46589}, + pos: position{line: 1447, col: 21, offset: 48352}, val: ".", ignoreCase: false, want: "\".\"", @@ -41115,20 +45619,20 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, run: (*parser).callonShortcutParagraph30, expr: &seqExpr{ - pos: position{line: 1389, col: 13, offset: 46709}, + pos: position{line: 1449, col: 13, offset: 48472}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 1389, col: 14, offset: 46710}, + pos: position{line: 1449, col: 14, offset: 48473}, val: "[A-Z]", ranges: []rune{'A', 'Z'}, ignoreCase: false, inverted: false, }, &litMatcher{ - pos: position{line: 1389, col: 21, offset: 46717}, + pos: position{line: 1449, col: 21, offset: 48480}, val: ".", ignoreCase: false, want: "\".\"", @@ -41137,15 +45641,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, run: (*parser).callonShortcutParagraph34, expr: &seqExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1391, col: 13, offset: 46837}, + pos: position{line: 1451, col: 13, offset: 48600}, expr: &charClassMatcher{ - pos: position{line: 1391, col: 14, offset: 46838}, + pos: position{line: 1451, col: 14, offset: 48601}, val: "[ivxdlcm]", chars: []rune{'i', 'v', 'x', 'd', 'l', 'c', 'm'}, ignoreCase: false, @@ -41153,7 +45657,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1391, col: 26, offset: 46850}, + pos: position{line: 1451, col: 26, offset: 48613}, val: ")", ignoreCase: false, want: "\")\"", @@ -41162,15 +45666,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, run: (*parser).callonShortcutParagraph39, expr: &seqExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1393, col: 13, offset: 46970}, + pos: position{line: 1453, col: 13, offset: 48733}, expr: &charClassMatcher{ - pos: position{line: 1393, col: 14, offset: 46971}, + pos: position{line: 1453, col: 14, offset: 48734}, val: "[IVXDLCM]", chars: []rune{'I', 'V', 'X', 'D', 'L', 'C', 'M'}, ignoreCase: false, @@ -41178,7 +45682,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1393, col: 26, offset: 46983}, + pos: position{line: 1453, col: 26, offset: 48746}, val: ")", ignoreCase: false, want: "\")\"", @@ -41190,12 +45694,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonShortcutParagraph44, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41209,22 +45713,22 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1534, col: 5, offset: 51477}, + pos: position{line: 1594, col: 5, offset: 53240}, expr: ¬Expr{ - pos: position{line: 1534, col: 7, offset: 51479}, + pos: position{line: 1594, col: 7, offset: 53242}, expr: &actionExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, run: (*parser).callonShortcutParagraph49, expr: &seqExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1410, col: 5, offset: 47522}, + pos: position{line: 1470, col: 5, offset: 49285}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonShortcutParagraph52, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41233,27 +45737,27 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1410, col: 12, offset: 47529}, + pos: position{line: 1470, col: 12, offset: 49292}, label: "prefix", expr: &choiceExpr{ - pos: position{line: 1410, col: 20, offset: 47537}, + pos: position{line: 1470, col: 20, offset: 49300}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, run: (*parser).callonShortcutParagraph56, expr: &seqExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1412, col: 9, offset: 47594}, + pos: position{line: 1472, col: 9, offset: 49357}, label: "depth", expr: &actionExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, + pos: position{line: 1472, col: 16, offset: 49364}, run: (*parser).callonShortcutParagraph59, expr: &oneOrMoreExpr{ - pos: position{line: 1412, col: 16, offset: 47601}, + pos: position{line: 1472, col: 16, offset: 49364}, expr: &litMatcher{ - pos: position{line: 1412, col: 17, offset: 47602}, + pos: position{line: 1472, col: 17, offset: 49365}, val: "*", ignoreCase: false, want: "\"*\"", @@ -41262,20 +45766,20 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1416, col: 9, offset: 47702}, + pos: position{line: 1476, col: 9, offset: 49465}, run: (*parser).callonShortcutParagraph62, }, }, }, }, &labeledExpr{ - pos: position{line: 1433, col: 14, offset: 48409}, + pos: position{line: 1493, col: 14, offset: 50172}, label: "depth", expr: &actionExpr{ - pos: position{line: 1433, col: 21, offset: 48416}, + pos: position{line: 1493, col: 21, offset: 50179}, run: (*parser).callonShortcutParagraph64, expr: &litMatcher{ - pos: position{line: 1433, col: 22, offset: 48417}, + pos: position{line: 1493, col: 22, offset: 50180}, val: "-", ignoreCase: false, want: "\"-\"", @@ -41286,12 +45790,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonShortcutParagraph66, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41305,57 +45809,57 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1535, col: 5, offset: 51512}, + pos: position{line: 1595, col: 5, offset: 53275}, expr: ¬Expr{ - pos: position{line: 1535, col: 7, offset: 51514}, + pos: position{line: 1595, col: 7, offset: 53277}, expr: &choiceExpr{ - pos: position{line: 94, col: 19, offset: 2789}, + pos: position{line: 237, col: 19, offset: 7446}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 94, col: 19, offset: 2789}, + pos: position{line: 237, col: 19, offset: 7446}, run: (*parser).callonShortcutParagraph72, expr: &litMatcher{ - pos: position{line: 94, col: 19, offset: 2789}, + pos: position{line: 237, col: 19, offset: 7446}, val: "TIP", ignoreCase: false, want: "\"TIP\"", }, }, &actionExpr{ - pos: position{line: 96, col: 5, offset: 2827}, + pos: position{line: 239, col: 5, offset: 7484}, run: (*parser).callonShortcutParagraph74, expr: &litMatcher{ - pos: position{line: 96, col: 5, offset: 2827}, + pos: position{line: 239, col: 5, offset: 7484}, val: "NOTE", ignoreCase: false, want: "\"NOTE\"", }, }, &actionExpr{ - pos: position{line: 98, col: 5, offset: 2867}, + pos: position{line: 241, col: 5, offset: 7524}, run: (*parser).callonShortcutParagraph76, expr: &litMatcher{ - pos: position{line: 98, col: 5, offset: 2867}, + pos: position{line: 241, col: 5, offset: 7524}, val: "IMPORTANT", ignoreCase: false, want: "\"IMPORTANT\"", }, }, &actionExpr{ - pos: position{line: 100, col: 5, offset: 2917}, + pos: position{line: 243, col: 5, offset: 7574}, run: (*parser).callonShortcutParagraph78, expr: &litMatcher{ - pos: position{line: 100, col: 5, offset: 2917}, + pos: position{line: 243, col: 5, offset: 7574}, val: "WARNING", ignoreCase: false, want: "\"WARNING\"", }, }, &actionExpr{ - pos: position{line: 102, col: 5, offset: 2963}, + pos: position{line: 245, col: 5, offset: 7620}, run: (*parser).callonShortcutParagraph80, expr: &litMatcher{ - pos: position{line: 102, col: 5, offset: 2963}, + pos: position{line: 245, col: 5, offset: 7620}, val: "CAUTION", ignoreCase: false, want: "\"CAUTION\"", @@ -41366,24 +45870,24 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1536, col: 5, offset: 51535}, + pos: position{line: 1596, col: 5, offset: 53298}, label: "firstLine", expr: &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, run: (*parser).callonShortcutParagraph83, expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, label: "content", expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, run: (*parser).callonShortcutParagraph86, expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -41393,32 +45897,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, + pos: position{line: 1647, col: 5, offset: 54889}, run: (*parser).callonShortcutParagraph89, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonShortcutParagraph91, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -41427,9 +45931,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -41439,53 +45943,53 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1537, col: 5, offset: 51569}, + pos: position{line: 1597, col: 5, offset: 53332}, run: (*parser).callonShortcutParagraph98, }, &labeledExpr{ - pos: position{line: 1544, col: 5, offset: 51931}, + pos: position{line: 1604, col: 5, offset: 53694}, label: "otherLines", expr: &zeroOrMoreExpr{ - pos: position{line: 1544, col: 16, offset: 51942}, + pos: position{line: 1604, col: 16, offset: 53705}, expr: &actionExpr{ - pos: position{line: 1545, col: 9, offset: 51952}, + pos: position{line: 1605, col: 9, offset: 53715}, run: (*parser).callonShortcutParagraph101, expr: &seqExpr{ - pos: position{line: 1545, col: 9, offset: 51952}, + pos: position{line: 1605, col: 9, offset: 53715}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1545, col: 9, offset: 51952}, + pos: position{line: 1605, col: 9, offset: 53715}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, ¬Expr{ - pos: position{line: 1546, col: 9, offset: 51966}, + pos: position{line: 1606, col: 9, offset: 53729}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, run: (*parser).callonShortcutParagraph107, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonShortcutParagraph113, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41494,28 +45998,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonShortcutParagraph116, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -41524,9 +46028,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -41536,30 +46040,30 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1547, col: 9, offset: 51985}, + pos: position{line: 1607, col: 9, offset: 53748}, expr: &ruleRefExpr{ - pos: position{line: 1547, col: 10, offset: 51986}, + pos: position{line: 1607, col: 10, offset: 53749}, name: "BlockAttributes", }, }, ¬Expr{ - pos: position{line: 1548, col: 9, offset: 52010}, + pos: position{line: 1608, col: 9, offset: 53773}, expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, + pos: position{line: 1372, col: 38, offset: 45848}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonShortcutParagraph129, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41568,25 +46072,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonShortcutParagraph131, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -41598,42 +46102,42 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1549, col: 9, offset: 52049}, + pos: position{line: 1609, col: 9, offset: 53812}, label: "line", expr: &choiceExpr{ - pos: position{line: 1549, col: 15, offset: 52055}, + pos: position{line: 1609, col: 15, offset: 53818}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 2649, col: 22, offset: 88498}, run: (*parser).callonShortcutParagraph138, expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, + pos: position{line: 2654, col: 31, offset: 88719}, val: "//", ignoreCase: false, want: "\"//\"", }, ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, + pos: position{line: 2654, col: 36, offset: 88724}, expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, + pos: position{line: 2654, col: 37, offset: 88725}, val: "//", ignoreCase: false, want: "\"//\"", }, }, &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, + pos: position{line: 2649, col: 49, offset: 88525}, label: "content", expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, run: (*parser).callonShortcutParagraph144, expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -41643,28 +46147,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonShortcutParagraph148, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -41673,9 +46177,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -41684,21 +46188,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, run: (*parser).callonShortcutParagraph155, expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, label: "content", expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, run: (*parser).callonShortcutParagraph158, expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -41708,32 +46212,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, + pos: position{line: 1647, col: 5, offset: 54889}, run: (*parser).callonShortcutParagraph161, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonShortcutParagraph163, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -41742,9 +46246,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -41766,32 +46270,32 @@ var g = &grammar{ }, { name: "Paragraph", - pos: position{line: 1556, col: 1, offset: 52252}, + pos: position{line: 1616, col: 1, offset: 54015}, expr: &actionExpr{ - pos: position{line: 1557, col: 5, offset: 52270}, + pos: position{line: 1617, col: 5, offset: 54033}, run: (*parser).callonParagraph1, expr: &seqExpr{ - pos: position{line: 1557, col: 5, offset: 52270}, + pos: position{line: 1617, col: 5, offset: 54033}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1557, col: 5, offset: 52270}, + pos: position{line: 1617, col: 5, offset: 54033}, label: "firstLine", expr: &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, run: (*parser).callonParagraph4, expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, label: "content", expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, run: (*parser).callonParagraph7, expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -41801,32 +46305,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, + pos: position{line: 1647, col: 5, offset: 54889}, run: (*parser).callonParagraph10, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonParagraph12, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -41835,9 +46339,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -41847,49 +46351,49 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1558, col: 5, offset: 52304}, + pos: position{line: 1618, col: 5, offset: 54067}, label: "otherLines", expr: &zeroOrMoreExpr{ - pos: position{line: 1558, col: 16, offset: 52315}, + pos: position{line: 1618, col: 16, offset: 54078}, expr: &actionExpr{ - pos: position{line: 1559, col: 9, offset: 52325}, + pos: position{line: 1619, col: 9, offset: 54088}, run: (*parser).callonParagraph21, expr: &seqExpr{ - pos: position{line: 1559, col: 9, offset: 52325}, + pos: position{line: 1619, col: 9, offset: 54088}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1559, col: 9, offset: 52325}, + pos: position{line: 1619, col: 9, offset: 54088}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, ¬Expr{ - pos: position{line: 1560, col: 9, offset: 52338}, + pos: position{line: 1620, col: 9, offset: 54101}, expr: &actionExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, run: (*parser).callonParagraph27, expr: &seqExpr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 449, col: 14, offset: 14872}, + pos: position{line: 590, col: 14, offset: 19471}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &zeroOrMoreExpr{ - pos: position{line: 449, col: 19, offset: 14877}, + pos: position{line: 590, col: 19, offset: 19476}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonParagraph33, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41898,28 +46402,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonParagraph36, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -41928,9 +46432,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -41940,30 +46444,30 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1561, col: 9, offset: 52357}, + pos: position{line: 1621, col: 9, offset: 54120}, expr: &ruleRefExpr{ - pos: position{line: 1561, col: 10, offset: 52358}, + pos: position{line: 1621, col: 10, offset: 54121}, name: "BlockAttributes", }, }, ¬Expr{ - pos: position{line: 1562, col: 9, offset: 52382}, + pos: position{line: 1622, col: 9, offset: 54145}, expr: &seqExpr{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1311, col: 34, offset: 44057}, + pos: position{line: 1372, col: 34, offset: 45844}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 1311, col: 38, offset: 44061}, + pos: position{line: 1372, col: 38, offset: 45848}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonParagraph49, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -41972,25 +46476,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonParagraph51, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -42002,42 +46506,42 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1563, col: 9, offset: 52421}, + pos: position{line: 1623, col: 9, offset: 54184}, label: "line", expr: &choiceExpr{ - pos: position{line: 1563, col: 15, offset: 52427}, + pos: position{line: 1623, col: 15, offset: 54190}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 2649, col: 22, offset: 88498}, run: (*parser).callonParagraph58, expr: &seqExpr{ - pos: position{line: 2589, col: 22, offset: 86744}, + pos: position{line: 2649, col: 22, offset: 88498}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2594, col: 31, offset: 86965}, + pos: position{line: 2654, col: 31, offset: 88719}, val: "//", ignoreCase: false, want: "\"//\"", }, ¬Expr{ - pos: position{line: 2594, col: 36, offset: 86970}, + pos: position{line: 2654, col: 36, offset: 88724}, expr: &litMatcher{ - pos: position{line: 2594, col: 37, offset: 86971}, + pos: position{line: 2654, col: 37, offset: 88725}, val: "//", ignoreCase: false, want: "\"//\"", }, }, &labeledExpr{ - pos: position{line: 2589, col: 49, offset: 86771}, + pos: position{line: 2649, col: 49, offset: 88525}, label: "content", expr: &actionExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, run: (*parser).callonParagraph64, expr: &zeroOrMoreExpr{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, expr: &charClassMatcher{ - pos: position{line: 2596, col: 29, offset: 87006}, + pos: position{line: 2656, col: 29, offset: 88760}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -42047,28 +46551,28 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonParagraph68, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -42077,9 +46581,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -42088,21 +46592,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, run: (*parser).callonParagraph75, expr: &seqExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1584, col: 5, offset: 53060}, + pos: position{line: 1644, col: 5, offset: 54823}, label: "content", expr: &actionExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, run: (*parser).callonParagraph78, expr: &oneOrMoreExpr{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, expr: &charClassMatcher{ - pos: position{line: 1584, col: 14, offset: 53069}, + pos: position{line: 1644, col: 14, offset: 54832}, val: "[^\\r\\n]", chars: []rune{'\r', '\n'}, ignoreCase: false, @@ -42112,32 +46616,32 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 1587, col: 5, offset: 53126}, + pos: position{line: 1647, col: 5, offset: 54889}, run: (*parser).callonParagraph81, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonParagraph83, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -42146,9 +46650,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -42170,39 +46674,39 @@ var g = &grammar{ }, { name: "QuotedText", - pos: position{line: 1615, col: 1, offset: 54110}, + pos: position{line: 1675, col: 1, offset: 55873}, expr: &choiceExpr{ - pos: position{line: 1616, col: 5, offset: 54129}, + pos: position{line: 1676, col: 5, offset: 55892}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1617, col: 9, offset: 54139}, + pos: position{line: 1677, col: 9, offset: 55902}, run: (*parser).callonQuotedText2, expr: &seqExpr{ - pos: position{line: 1617, col: 9, offset: 54139}, + pos: position{line: 1677, col: 9, offset: 55902}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1617, col: 9, offset: 54139}, + pos: position{line: 1677, col: 9, offset: 55902}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 1617, col: 20, offset: 54150}, + pos: position{line: 1677, col: 20, offset: 55913}, expr: &ruleRefExpr{ - pos: position{line: 1617, col: 21, offset: 54151}, + pos: position{line: 1677, col: 21, offset: 55914}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1618, col: 9, offset: 54277}, + pos: position{line: 1678, col: 9, offset: 56040}, label: "text", expr: &choiceExpr{ - pos: position{line: 1618, col: 15, offset: 54283}, + pos: position{line: 1678, col: 15, offset: 56046}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1618, col: 15, offset: 54283}, + pos: position{line: 1678, col: 15, offset: 56046}, name: "UnconstrainedQuotedText", }, &ruleRefExpr{ - pos: position{line: 1618, col: 41, offset: 54309}, + pos: position{line: 1678, col: 41, offset: 56072}, name: "ConstrainedQuotedText", }, }, @@ -42212,7 +46716,7 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1622, col: 7, offset: 54428}, + pos: position{line: 1682, col: 7, offset: 56191}, name: "EscapedQuotedText", }, }, @@ -42220,32 +46724,32 @@ var g = &grammar{ }, { name: "ConstrainedQuotedText", - pos: position{line: 1628, col: 1, offset: 54619}, + pos: position{line: 1688, col: 1, offset: 56382}, expr: &choiceExpr{ - pos: position{line: 1629, col: 5, offset: 54649}, + pos: position{line: 1689, col: 5, offset: 56412}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1629, col: 5, offset: 54649}, + pos: position{line: 1689, col: 5, offset: 56412}, name: "SingleQuoteBoldText", }, &ruleRefExpr{ - pos: position{line: 1630, col: 7, offset: 54676}, + pos: position{line: 1690, col: 7, offset: 56439}, name: "SingleQuoteItalicText", }, &ruleRefExpr{ - pos: position{line: 1631, col: 7, offset: 54704}, + pos: position{line: 1691, col: 7, offset: 56467}, name: "SingleQuoteMarkedText", }, &ruleRefExpr{ - pos: position{line: 1632, col: 7, offset: 54732}, + pos: position{line: 1692, col: 7, offset: 56495}, name: "SingleQuoteMonospaceText", }, &ruleRefExpr{ - pos: position{line: 1633, col: 7, offset: 54764}, + pos: position{line: 1693, col: 7, offset: 56527}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 1634, col: 7, offset: 54785}, + pos: position{line: 1694, col: 7, offset: 56548}, name: "SuperscriptText", }, }, @@ -42253,24 +46757,24 @@ var g = &grammar{ }, { name: "UnconstrainedQuotedText", - pos: position{line: 1636, col: 1, offset: 54803}, + pos: position{line: 1696, col: 1, offset: 56566}, expr: &choiceExpr{ - pos: position{line: 1637, col: 5, offset: 54835}, + pos: position{line: 1697, col: 5, offset: 56598}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1637, col: 5, offset: 54835}, + pos: position{line: 1697, col: 5, offset: 56598}, name: "DoubleQuoteBoldText", }, &ruleRefExpr{ - pos: position{line: 1638, col: 7, offset: 54861}, + pos: position{line: 1698, col: 7, offset: 56624}, name: "DoubleQuoteItalicText", }, &ruleRefExpr{ - pos: position{line: 1639, col: 7, offset: 54889}, + pos: position{line: 1699, col: 7, offset: 56652}, name: "DoubleQuoteMarkedText", }, &ruleRefExpr{ - pos: position{line: 1640, col: 7, offset: 54917}, + pos: position{line: 1700, col: 7, offset: 56680}, name: "DoubleQuoteMonospaceText", }, }, @@ -42278,50 +46782,50 @@ var g = &grammar{ }, { name: "EscapedQuotedText", - pos: position{line: 1642, col: 1, offset: 54943}, + pos: position{line: 1702, col: 1, offset: 56706}, expr: &actionExpr{ - pos: position{line: 1643, col: 5, offset: 55024}, + pos: position{line: 1703, col: 5, offset: 56787}, run: (*parser).callonEscapedQuotedText1, expr: &seqExpr{ - pos: position{line: 1643, col: 5, offset: 55024}, + pos: position{line: 1703, col: 5, offset: 56787}, exprs: []interface{}{ &andExpr{ - pos: position{line: 1643, col: 5, offset: 55024}, + pos: position{line: 1703, col: 5, offset: 56787}, expr: &litMatcher{ - pos: position{line: 1643, col: 7, offset: 55026}, + pos: position{line: 1703, col: 7, offset: 56789}, val: "\\", ignoreCase: false, want: "\"\\\\\"", }, }, &labeledExpr{ - pos: position{line: 1644, col: 5, offset: 55035}, + pos: position{line: 1704, col: 5, offset: 56798}, label: "element", expr: &choiceExpr{ - pos: position{line: 1645, col: 9, offset: 55053}, + pos: position{line: 1705, col: 9, offset: 56816}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1645, col: 9, offset: 55053}, + pos: position{line: 1705, col: 9, offset: 56816}, name: "EscapedBoldText", }, &ruleRefExpr{ - pos: position{line: 1646, col: 11, offset: 55080}, + pos: position{line: 1706, col: 11, offset: 56843}, name: "EscapedItalicText", }, &ruleRefExpr{ - pos: position{line: 1647, col: 11, offset: 55108}, + pos: position{line: 1707, col: 11, offset: 56871}, name: "EscapedMarkedText", }, &ruleRefExpr{ - pos: position{line: 1648, col: 11, offset: 55136}, + pos: position{line: 1708, col: 11, offset: 56899}, name: "EscapedMonospaceText", }, &ruleRefExpr{ - pos: position{line: 1649, col: 11, offset: 55168}, + pos: position{line: 1709, col: 11, offset: 56931}, name: "EscapedSubscriptText", }, &ruleRefExpr{ - pos: position{line: 1650, col: 11, offset: 55200}, + pos: position{line: 1710, col: 11, offset: 56963}, name: "EscapedSuperscriptText", }, }, @@ -42333,16 +46837,16 @@ var g = &grammar{ }, { name: "BoldText", - pos: position{line: 1670, col: 1, offset: 55727}, + pos: position{line: 1730, col: 1, offset: 57490}, expr: &choiceExpr{ - pos: position{line: 1670, col: 13, offset: 55739}, + pos: position{line: 1730, col: 13, offset: 57502}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1670, col: 13, offset: 55739}, + pos: position{line: 1730, col: 13, offset: 57502}, name: "DoubleQuoteBoldText", }, &ruleRefExpr{ - pos: position{line: 1670, col: 35, offset: 55761}, + pos: position{line: 1730, col: 35, offset: 57524}, name: "SingleQuoteBoldText", }, }, @@ -42350,29 +46854,29 @@ var g = &grammar{ }, { name: "DoubleQuoteBoldText", - pos: position{line: 1684, col: 1, offset: 56123}, + pos: position{line: 1744, col: 1, offset: 57886}, expr: &actionExpr{ - pos: position{line: 1685, col: 5, offset: 56151}, + pos: position{line: 1745, col: 5, offset: 57914}, run: (*parser).callonDoubleQuoteBoldText1, expr: &seqExpr{ - pos: position{line: 1685, col: 5, offset: 56151}, + pos: position{line: 1745, col: 5, offset: 57914}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1682, col: 33, offset: 56117}, + pos: position{line: 1742, col: 33, offset: 57880}, val: "**", ignoreCase: false, want: "\"**\"", }, &labeledExpr{ - pos: position{line: 1686, col: 5, offset: 56185}, + pos: position{line: 1746, col: 5, offset: 57948}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1686, col: 15, offset: 56195}, + pos: position{line: 1746, col: 15, offset: 57958}, name: "DoubleQuoteBoldTextElements", }, }, &litMatcher{ - pos: position{line: 1682, col: 33, offset: 56117}, + pos: position{line: 1742, col: 33, offset: 57880}, val: "**", ignoreCase: false, want: "\"**\"", @@ -42383,49 +46887,49 @@ var g = &grammar{ }, { name: "DoubleQuoteBoldTextElements", - pos: position{line: 1691, col: 1, offset: 56352}, + pos: position{line: 1751, col: 1, offset: 58115}, expr: &oneOrMoreExpr{ - pos: position{line: 1691, col: 32, offset: 56383}, + pos: position{line: 1751, col: 32, offset: 58146}, expr: &ruleRefExpr{ - pos: position{line: 1691, col: 32, offset: 56383}, + pos: position{line: 1751, col: 32, offset: 58146}, name: "DoubleQuoteBoldTextElement", }, }, }, { name: "DoubleQuoteBoldTextElement", - pos: position{line: 1693, col: 1, offset: 56414}, + pos: position{line: 1753, col: 1, offset: 58177}, expr: &actionExpr{ - pos: position{line: 1694, col: 5, offset: 56449}, + pos: position{line: 1754, col: 5, offset: 58212}, run: (*parser).callonDoubleQuoteBoldTextElement1, expr: &seqExpr{ - pos: position{line: 1694, col: 5, offset: 56449}, + pos: position{line: 1754, col: 5, offset: 58212}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1694, col: 5, offset: 56449}, + pos: position{line: 1754, col: 5, offset: 58212}, expr: &litMatcher{ - pos: position{line: 1682, col: 33, offset: 56117}, + pos: position{line: 1742, col: 33, offset: 57880}, val: "**", ignoreCase: false, want: "\"**\"", }, }, &labeledExpr{ - pos: position{line: 1695, col: 5, offset: 56483}, + pos: position{line: 1755, col: 5, offset: 58246}, label: "element", expr: &choiceExpr{ - pos: position{line: 1696, col: 9, offset: 56501}, + pos: position{line: 1756, col: 9, offset: 58264}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, run: (*parser).callonDoubleQuoteBoldTextElement7, expr: &seqExpr{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, expr: &charClassMatcher{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, val: "[,?!;0-9\\pL]", chars: []rune{',', '?', '!', ';'}, ranges: []rune{'0', '9'}, @@ -42435,15 +46939,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1675, col: 19, offset: 55889}, + pos: position{line: 1735, col: 19, offset: 57652}, expr: &choiceExpr{ - pos: position{line: 1675, col: 21, offset: 55891}, + pos: position{line: 1735, col: 21, offset: 57654}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteBoldTextElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -42451,7 +46955,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1672, col: 22, offset: 55849}, + pos: position{line: 1732, col: 22, offset: 57612}, val: "*", ignoreCase: false, want: "\"*\"", @@ -42463,12 +46967,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonDoubleQuoteBoldTextElement16, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -42477,28 +46981,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 1698, col: 11, offset: 56574}, + pos: position{line: 1758, col: 11, offset: 58337}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteBoldTextElement20, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -42507,27 +47011,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1698, col: 19, offset: 56582}, + pos: position{line: 1758, col: 19, offset: 58345}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteBoldTextElement26, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -42539,44 +47043,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteBoldTextElement31, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteBoldTextElement33, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteBoldTextElement36, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteBoldTextElement40, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -42585,9 +47089,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -42601,33 +47105,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteBoldTextElement47, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteBoldTextElement52, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -42635,12 +47139,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteBoldTextElement54, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -42657,7 +47161,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -42666,28 +47170,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteBoldTextElement58, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteBoldTextElement62, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -42696,9 +47200,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -42712,33 +47216,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteBoldTextElement69, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteBoldTextElement74, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -42746,12 +47250,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteBoldTextElement76, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -42768,7 +47272,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -42777,28 +47281,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteBoldTextElement80, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteBoldTextElement84, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -42807,9 +47311,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -42823,7 +47327,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -42838,49 +47342,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteBoldTextElement90, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteBoldTextElement92, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonDoubleQuoteBoldTextElement95, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonDoubleQuoteBoldTextElement97, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteBoldTextElement101, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -42890,12 +47394,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteBoldTextElement105, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -42904,27 +47408,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonDoubleQuoteBoldTextElement111, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -42932,9 +47436,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -42945,44 +47449,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteBoldTextElement116, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteBoldTextElement118, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteBoldTextElement121, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteBoldTextElement125, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -42991,9 +47495,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -43007,33 +47511,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteBoldTextElement132, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteBoldTextElement137, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -43041,12 +47545,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteBoldTextElement139, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -43063,7 +47567,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -43072,28 +47576,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteBoldTextElement143, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteBoldTextElement147, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -43102,9 +47606,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -43118,33 +47622,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteBoldTextElement154, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteBoldTextElement159, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -43152,12 +47656,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteBoldTextElement161, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -43174,7 +47678,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -43183,28 +47687,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteBoldTextElement165, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteBoldTextElement169, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -43213,9 +47717,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -43229,7 +47733,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -43244,10 +47748,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonDoubleQuoteBoldTextElement175, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -43258,7 +47762,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -43267,27 +47771,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonDoubleQuoteBoldTextElement178, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteBoldTextElement182, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -43297,7 +47801,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -43309,10 +47813,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonDoubleQuoteBoldTextElement186, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -43326,63 +47830,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonDoubleQuoteBoldTextElement188, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonDoubleQuoteBoldTextElement190, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonDoubleQuoteBoldTextElement192, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonDoubleQuoteBoldTextElement194, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonDoubleQuoteBoldTextElement196, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonDoubleQuoteBoldTextElement198, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -43390,15 +47894,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -43409,39 +47913,39 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1702, col: 11, offset: 56711}, + pos: position{line: 1762, col: 11, offset: 58474}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 1703, col: 11, offset: 56733}, + pos: position{line: 1763, col: 11, offset: 58496}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 1704, col: 11, offset: 56756}, + pos: position{line: 1764, col: 11, offset: 58519}, name: "QuotedTextInDoubleQuoteBoldText", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonDoubleQuoteBoldTextElement207, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonDoubleQuoteBoldTextElement211, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -43451,7 +47955,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -43460,31 +47964,31 @@ var g = &grammar{ }, }, &charClassMatcher{ - pos: position{line: 1723, col: 5, offset: 57268}, + pos: position{line: 1783, col: 5, offset: 59031}, val: "[^\\r\\n*]", chars: []rune{'\r', '\n', '*'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 1724, col: 7, offset: 57365}, + pos: position{line: 1784, col: 7, offset: 59128}, run: (*parser).callonDoubleQuoteBoldTextElement216, expr: &seqExpr{ - pos: position{line: 1724, col: 7, offset: 57365}, + pos: position{line: 1784, col: 7, offset: 59128}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1682, col: 33, offset: 56117}, + pos: position{line: 1742, col: 33, offset: 57880}, val: "**", ignoreCase: false, want: "\"**\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonDoubleQuoteBoldTextElement219, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -43505,52 +48009,52 @@ var g = &grammar{ }, { name: "QuotedTextInDoubleQuoteBoldText", - pos: position{line: 1710, col: 1, offset: 56910}, + pos: position{line: 1770, col: 1, offset: 58673}, expr: &actionExpr{ - pos: position{line: 1711, col: 5, offset: 56950}, + pos: position{line: 1771, col: 5, offset: 58713}, run: (*parser).callonQuotedTextInDoubleQuoteBoldText1, expr: &seqExpr{ - pos: position{line: 1711, col: 5, offset: 56950}, + pos: position{line: 1771, col: 5, offset: 58713}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1711, col: 5, offset: 56950}, + pos: position{line: 1771, col: 5, offset: 58713}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 1711, col: 16, offset: 56961}, + pos: position{line: 1771, col: 16, offset: 58724}, expr: &ruleRefExpr{ - pos: position{line: 1711, col: 17, offset: 56962}, + pos: position{line: 1771, col: 17, offset: 58725}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1712, col: 5, offset: 56988}, + pos: position{line: 1772, col: 5, offset: 58751}, label: "text", expr: &choiceExpr{ - pos: position{line: 1713, col: 9, offset: 57003}, + pos: position{line: 1773, col: 9, offset: 58766}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1713, col: 9, offset: 57003}, + pos: position{line: 1773, col: 9, offset: 58766}, name: "SingleQuoteBoldText", }, &ruleRefExpr{ - pos: position{line: 1714, col: 11, offset: 57033}, + pos: position{line: 1774, col: 11, offset: 58796}, name: "ItalicText", }, &ruleRefExpr{ - pos: position{line: 1715, col: 11, offset: 57054}, + pos: position{line: 1775, col: 11, offset: 58817}, name: "MarkedText", }, &ruleRefExpr{ - pos: position{line: 1716, col: 11, offset: 57075}, + pos: position{line: 1776, col: 11, offset: 58838}, name: "MonospaceText", }, &ruleRefExpr{ - pos: position{line: 1717, col: 11, offset: 57099}, + pos: position{line: 1777, col: 11, offset: 58862}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 1718, col: 11, offset: 57123}, + pos: position{line: 1778, col: 11, offset: 58886}, name: "SuperscriptText", }, }, @@ -43562,29 +48066,29 @@ var g = &grammar{ }, { name: "SingleQuoteBoldText", - pos: position{line: 1735, col: 1, offset: 57752}, + pos: position{line: 1795, col: 1, offset: 59515}, expr: &actionExpr{ - pos: position{line: 1736, col: 5, offset: 57780}, + pos: position{line: 1796, col: 5, offset: 59543}, run: (*parser).callonSingleQuoteBoldText1, expr: &seqExpr{ - pos: position{line: 1736, col: 5, offset: 57780}, + pos: position{line: 1796, col: 5, offset: 59543}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1731, col: 38, offset: 57706}, + pos: position{line: 1791, col: 38, offset: 59469}, val: "*", ignoreCase: false, want: "\"*\"", }, &labeledExpr{ - pos: position{line: 1737, col: 5, offset: 57818}, + pos: position{line: 1797, col: 5, offset: 59581}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1737, col: 15, offset: 57828}, + pos: position{line: 1797, col: 15, offset: 59591}, name: "SingleQuoteBoldTextElements", }, }, &litMatcher{ - pos: position{line: 1733, col: 36, offset: 57746}, + pos: position{line: 1793, col: 36, offset: 59509}, val: "*", ignoreCase: false, want: "\"*\"", @@ -43595,29 +48099,29 @@ var g = &grammar{ }, { name: "SingleQuoteBoldTextElements", - pos: position{line: 1742, col: 1, offset: 57988}, + pos: position{line: 1802, col: 1, offset: 59751}, expr: &actionExpr{ - pos: position{line: 1743, col: 5, offset: 58025}, + pos: position{line: 1803, col: 5, offset: 59788}, run: (*parser).callonSingleQuoteBoldTextElements1, expr: &seqExpr{ - pos: position{line: 1743, col: 5, offset: 58025}, + pos: position{line: 1803, col: 5, offset: 59788}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1743, col: 5, offset: 58025}, + pos: position{line: 1803, col: 5, offset: 59788}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, ¬Expr{ - pos: position{line: 1743, col: 10, offset: 58030}, + pos: position{line: 1803, col: 10, offset: 59793}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteBoldTextElements7, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -43626,18 +48130,18 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1744, col: 5, offset: 58069}, + pos: position{line: 1804, col: 5, offset: 59832}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 1744, col: 14, offset: 58078}, + pos: position{line: 1804, col: 14, offset: 59841}, expr: &ruleRefExpr{ - pos: position{line: 1744, col: 15, offset: 58079}, + pos: position{line: 1804, col: 15, offset: 59842}, name: "SingleQuoteBoldTextElement", }, }, }, &andCodeExpr{ - pos: position{line: 1745, col: 5, offset: 58113}, + pos: position{line: 1805, col: 5, offset: 59876}, run: (*parser).callonSingleQuoteBoldTextElements12, }, }, @@ -43646,20 +48150,20 @@ var g = &grammar{ }, { name: "SingleQuoteBoldTextElement", - pos: position{line: 1751, col: 1, offset: 58254}, + pos: position{line: 1811, col: 1, offset: 60017}, expr: &choiceExpr{ - pos: position{line: 1752, col: 5, offset: 58289}, + pos: position{line: 1812, col: 5, offset: 60052}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, run: (*parser).callonSingleQuoteBoldTextElement2, expr: &seqExpr{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, expr: &charClassMatcher{ - pos: position{line: 1675, col: 5, offset: 55875}, + pos: position{line: 1735, col: 5, offset: 57638}, val: "[,?!;0-9\\pL]", chars: []rune{',', '?', '!', ';'}, ranges: []rune{'0', '9'}, @@ -43669,15 +48173,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1675, col: 19, offset: 55889}, + pos: position{line: 1735, col: 19, offset: 57652}, expr: &choiceExpr{ - pos: position{line: 1675, col: 21, offset: 55891}, + pos: position{line: 1735, col: 21, offset: 57654}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteBoldTextElement8, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -43685,7 +48189,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1672, col: 22, offset: 55849}, + pos: position{line: 1732, col: 22, offset: 57612}, val: "*", ignoreCase: false, want: "\"*\"", @@ -43697,12 +48201,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonSingleQuoteBoldTextElement11, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -43711,28 +48215,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 1754, col: 7, offset: 58321}, + pos: position{line: 1814, col: 7, offset: 60084}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteBoldTextElement15, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -43741,27 +48245,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1754, col: 15, offset: 58329}, + pos: position{line: 1814, col: 15, offset: 60092}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteBoldTextElement21, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -43773,44 +48277,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteBoldTextElement26, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteBoldTextElement28, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteBoldTextElement31, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteBoldTextElement35, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -43819,9 +48323,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -43835,33 +48339,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteBoldTextElement42, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteBoldTextElement47, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -43869,12 +48373,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteBoldTextElement49, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -43891,7 +48395,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -43900,28 +48404,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteBoldTextElement53, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteBoldTextElement57, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -43930,9 +48434,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -43946,33 +48450,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteBoldTextElement64, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteBoldTextElement69, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -43980,12 +48484,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteBoldTextElement71, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -44002,7 +48506,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -44011,28 +48515,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteBoldTextElement75, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteBoldTextElement79, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -44041,9 +48545,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -44057,7 +48561,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -44072,49 +48576,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteBoldTextElement85, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteBoldTextElement87, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonSingleQuoteBoldTextElement90, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonSingleQuoteBoldTextElement92, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteBoldTextElement96, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -44124,12 +48628,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteBoldTextElement100, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -44138,27 +48642,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonSingleQuoteBoldTextElement106, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -44166,9 +48670,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -44179,44 +48683,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteBoldTextElement111, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteBoldTextElement113, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteBoldTextElement116, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteBoldTextElement120, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -44225,9 +48729,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -44241,33 +48745,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteBoldTextElement127, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteBoldTextElement132, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -44275,12 +48779,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteBoldTextElement134, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -44297,7 +48801,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -44306,28 +48810,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteBoldTextElement138, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteBoldTextElement142, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -44336,9 +48840,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -44352,33 +48856,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteBoldTextElement149, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteBoldTextElement154, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -44386,12 +48890,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteBoldTextElement156, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -44408,7 +48912,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -44417,28 +48921,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteBoldTextElement160, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteBoldTextElement164, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -44447,9 +48951,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -44463,7 +48967,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -44478,10 +48982,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonSingleQuoteBoldTextElement170, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -44492,7 +48996,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -44501,27 +49005,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonSingleQuoteBoldTextElement173, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteBoldTextElement177, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -44531,7 +49035,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -44543,10 +49047,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonSingleQuoteBoldTextElement181, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -44560,63 +49064,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonSingleQuoteBoldTextElement183, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonSingleQuoteBoldTextElement185, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonSingleQuoteBoldTextElement187, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonSingleQuoteBoldTextElement189, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonSingleQuoteBoldTextElement191, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonSingleQuoteBoldTextElement193, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -44624,15 +49128,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -44643,39 +49147,39 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1758, col: 7, offset: 58442}, + pos: position{line: 1818, col: 7, offset: 60205}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 1759, col: 7, offset: 58460}, + pos: position{line: 1819, col: 7, offset: 60223}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 1760, col: 7, offset: 58479}, + pos: position{line: 1820, col: 7, offset: 60242}, name: "QuotedTextInSingleQuoteBoldText", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonSingleQuoteBoldTextElement202, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonSingleQuoteBoldTextElement206, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -44685,7 +49189,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -44694,31 +49198,31 @@ var g = &grammar{ }, }, &charClassMatcher{ - pos: position{line: 1776, col: 5, offset: 58937}, + pos: position{line: 1836, col: 5, offset: 60700}, val: "[^\\r\\n *]", chars: []rune{'\r', '\n', ' ', '*'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 1777, col: 7, offset: 59042}, + pos: position{line: 1837, col: 7, offset: 60805}, run: (*parser).callonSingleQuoteBoldTextElement211, expr: &seqExpr{ - pos: position{line: 1777, col: 7, offset: 59042}, + pos: position{line: 1837, col: 7, offset: 60805}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1777, col: 7, offset: 59042}, + pos: position{line: 1837, col: 7, offset: 60805}, val: "*", ignoreCase: false, want: "\"*\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonSingleQuoteBoldTextElement214, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -44735,52 +49239,52 @@ var g = &grammar{ }, { name: "QuotedTextInSingleQuoteBoldText", - pos: position{line: 1764, col: 1, offset: 58580}, + pos: position{line: 1824, col: 1, offset: 60343}, expr: &actionExpr{ - pos: position{line: 1765, col: 5, offset: 58620}, + pos: position{line: 1825, col: 5, offset: 60383}, run: (*parser).callonQuotedTextInSingleQuoteBoldText1, expr: &seqExpr{ - pos: position{line: 1765, col: 5, offset: 58620}, + pos: position{line: 1825, col: 5, offset: 60383}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1765, col: 5, offset: 58620}, + pos: position{line: 1825, col: 5, offset: 60383}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 1765, col: 16, offset: 58631}, + pos: position{line: 1825, col: 16, offset: 60394}, expr: &ruleRefExpr{ - pos: position{line: 1765, col: 17, offset: 58632}, + pos: position{line: 1825, col: 17, offset: 60395}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1766, col: 5, offset: 58658}, + pos: position{line: 1826, col: 5, offset: 60421}, label: "text", expr: &choiceExpr{ - pos: position{line: 1767, col: 9, offset: 58673}, + pos: position{line: 1827, col: 9, offset: 60436}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1767, col: 9, offset: 58673}, + pos: position{line: 1827, col: 9, offset: 60436}, name: "DoubleQuoteBoldText", }, &ruleRefExpr{ - pos: position{line: 1768, col: 11, offset: 58703}, + pos: position{line: 1828, col: 11, offset: 60466}, name: "ItalicText", }, &ruleRefExpr{ - pos: position{line: 1769, col: 11, offset: 58724}, + pos: position{line: 1829, col: 11, offset: 60487}, name: "MonospaceText", }, &ruleRefExpr{ - pos: position{line: 1770, col: 11, offset: 58748}, + pos: position{line: 1830, col: 11, offset: 60511}, name: "MarkedText", }, &ruleRefExpr{ - pos: position{line: 1771, col: 11, offset: 58769}, + pos: position{line: 1831, col: 11, offset: 60532}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 1772, col: 11, offset: 58793}, + pos: position{line: 1832, col: 11, offset: 60556}, name: "SuperscriptText", }, }, @@ -44792,35 +49296,35 @@ var g = &grammar{ }, { name: "EscapedBoldText", - pos: position{line: 1781, col: 1, offset: 59217}, + pos: position{line: 1841, col: 1, offset: 60980}, expr: &choiceExpr{ - pos: position{line: 1782, col: 5, offset: 59241}, + pos: position{line: 1842, col: 5, offset: 61004}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1782, col: 5, offset: 59241}, + pos: position{line: 1842, col: 5, offset: 61004}, run: (*parser).callonEscapedBoldText2, expr: &seqExpr{ - pos: position{line: 1782, col: 5, offset: 59241}, + pos: position{line: 1842, col: 5, offset: 61004}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1782, col: 5, offset: 59241}, + pos: position{line: 1842, col: 5, offset: 61004}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, run: (*parser).callonEscapedBoldText5, expr: &seqExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, val: "\\\\", ignoreCase: false, want: "\"\\\\\\\\\"", }, &zeroOrMoreExpr{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, expr: &litMatcher{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -44831,21 +49335,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1782, col: 40, offset: 59276}, + pos: position{line: 1842, col: 40, offset: 61039}, val: "**", ignoreCase: false, want: "\"**\"", }, &labeledExpr{ - pos: position{line: 1782, col: 45, offset: 59281}, + pos: position{line: 1842, col: 45, offset: 61044}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1782, col: 55, offset: 59291}, + pos: position{line: 1842, col: 55, offset: 61054}, name: "DoubleQuoteBoldTextElements", }, }, &litMatcher{ - pos: position{line: 1782, col: 84, offset: 59320}, + pos: position{line: 1842, col: 84, offset: 61083}, val: "**", ignoreCase: false, want: "\"**\"", @@ -44854,21 +49358,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1784, col: 9, offset: 59477}, + pos: position{line: 1844, col: 9, offset: 61240}, run: (*parser).callonEscapedBoldText14, expr: &seqExpr{ - pos: position{line: 1784, col: 9, offset: 59477}, + pos: position{line: 1844, col: 9, offset: 61240}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1784, col: 9, offset: 59477}, + pos: position{line: 1844, col: 9, offset: 61240}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedBoldText17, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -44877,21 +49381,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1784, col: 44, offset: 59512}, + pos: position{line: 1844, col: 44, offset: 61275}, val: "**", ignoreCase: false, want: "\"**\"", }, &labeledExpr{ - pos: position{line: 1784, col: 49, offset: 59517}, + pos: position{line: 1844, col: 49, offset: 61280}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1784, col: 59, offset: 59527}, + pos: position{line: 1844, col: 59, offset: 61290}, name: "SingleQuoteBoldTextElements", }, }, &litMatcher{ - pos: position{line: 1784, col: 88, offset: 59556}, + pos: position{line: 1844, col: 88, offset: 61319}, val: "*", ignoreCase: false, want: "\"*\"", @@ -44900,21 +49404,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1787, col: 9, offset: 59756}, + pos: position{line: 1847, col: 9, offset: 61519}, run: (*parser).callonEscapedBoldText24, expr: &seqExpr{ - pos: position{line: 1787, col: 9, offset: 59756}, + pos: position{line: 1847, col: 9, offset: 61519}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1787, col: 9, offset: 59756}, + pos: position{line: 1847, col: 9, offset: 61519}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedBoldText27, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -44923,21 +49427,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1787, col: 44, offset: 59791}, + pos: position{line: 1847, col: 44, offset: 61554}, val: "*", ignoreCase: false, want: "\"*\"", }, &labeledExpr{ - pos: position{line: 1787, col: 48, offset: 59795}, + pos: position{line: 1847, col: 48, offset: 61558}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1787, col: 58, offset: 59805}, + pos: position{line: 1847, col: 58, offset: 61568}, name: "SingleQuoteBoldTextElements", }, }, &litMatcher{ - pos: position{line: 1787, col: 87, offset: 59834}, + pos: position{line: 1847, col: 87, offset: 61597}, val: "*", ignoreCase: false, want: "\"*\"", @@ -44950,16 +49454,16 @@ var g = &grammar{ }, { name: "ItalicText", - pos: position{line: 1795, col: 1, offset: 60132}, + pos: position{line: 1855, col: 1, offset: 61895}, expr: &choiceExpr{ - pos: position{line: 1795, col: 15, offset: 60146}, + pos: position{line: 1855, col: 15, offset: 61909}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1795, col: 15, offset: 60146}, + pos: position{line: 1855, col: 15, offset: 61909}, name: "DoubleQuoteItalicText", }, &ruleRefExpr{ - pos: position{line: 1795, col: 39, offset: 60170}, + pos: position{line: 1855, col: 39, offset: 61933}, name: "SingleQuoteItalicText", }, }, @@ -44967,29 +49471,29 @@ var g = &grammar{ }, { name: "DoubleQuoteItalicText", - pos: position{line: 1809, col: 1, offset: 60498}, + pos: position{line: 1869, col: 1, offset: 62261}, expr: &actionExpr{ - pos: position{line: 1810, col: 5, offset: 60528}, + pos: position{line: 1870, col: 5, offset: 62291}, run: (*parser).callonDoubleQuoteItalicText1, expr: &seqExpr{ - pos: position{line: 1810, col: 5, offset: 60528}, + pos: position{line: 1870, col: 5, offset: 62291}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1807, col: 35, offset: 60492}, + pos: position{line: 1867, col: 35, offset: 62255}, val: "__", ignoreCase: false, want: "\"__\"", }, &labeledExpr{ - pos: position{line: 1811, col: 5, offset: 60564}, + pos: position{line: 1871, col: 5, offset: 62327}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1811, col: 15, offset: 60574}, + pos: position{line: 1871, col: 15, offset: 62337}, name: "DoubleQuoteItalicTextElements", }, }, &litMatcher{ - pos: position{line: 1807, col: 35, offset: 60492}, + pos: position{line: 1867, col: 35, offset: 62255}, val: "__", ignoreCase: false, want: "\"__\"", @@ -45000,49 +49504,49 @@ var g = &grammar{ }, { name: "DoubleQuoteItalicTextElements", - pos: position{line: 1816, col: 1, offset: 60782}, + pos: position{line: 1876, col: 1, offset: 62545}, expr: &oneOrMoreExpr{ - pos: position{line: 1816, col: 34, offset: 60815}, + pos: position{line: 1876, col: 34, offset: 62578}, expr: &ruleRefExpr{ - pos: position{line: 1816, col: 34, offset: 60815}, + pos: position{line: 1876, col: 34, offset: 62578}, name: "DoubleQuoteItalicTextElement", }, }, }, { name: "DoubleQuoteItalicTextElement", - pos: position{line: 1818, col: 1, offset: 60847}, + pos: position{line: 1878, col: 1, offset: 62610}, expr: &actionExpr{ - pos: position{line: 1819, col: 5, offset: 60884}, + pos: position{line: 1879, col: 5, offset: 62647}, run: (*parser).callonDoubleQuoteItalicTextElement1, expr: &seqExpr{ - pos: position{line: 1819, col: 5, offset: 60884}, + pos: position{line: 1879, col: 5, offset: 62647}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1819, col: 5, offset: 60884}, + pos: position{line: 1879, col: 5, offset: 62647}, expr: &litMatcher{ - pos: position{line: 1807, col: 35, offset: 60492}, + pos: position{line: 1867, col: 35, offset: 62255}, val: "__", ignoreCase: false, want: "\"__\"", }, }, &labeledExpr{ - pos: position{line: 1820, col: 5, offset: 60920}, + pos: position{line: 1880, col: 5, offset: 62683}, label: "element", expr: &choiceExpr{ - pos: position{line: 1821, col: 9, offset: 60938}, + pos: position{line: 1881, col: 9, offset: 62701}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, run: (*parser).callonDoubleQuoteItalicTextElement7, expr: &seqExpr{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, expr: &charClassMatcher{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -45051,15 +49555,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1800, col: 15, offset: 60254}, + pos: position{line: 1860, col: 15, offset: 62017}, expr: &choiceExpr{ - pos: position{line: 1800, col: 17, offset: 60256}, + pos: position{line: 1860, col: 17, offset: 62019}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteItalicTextElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -45067,7 +49571,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1797, col: 24, offset: 60216}, + pos: position{line: 1857, col: 24, offset: 61979}, val: "_", ignoreCase: false, want: "\"_\"", @@ -45079,12 +49583,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonDoubleQuoteItalicTextElement16, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -45093,28 +49597,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 1823, col: 11, offset: 61013}, + pos: position{line: 1883, col: 11, offset: 62776}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteItalicTextElement20, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -45123,27 +49627,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1823, col: 19, offset: 61021}, + pos: position{line: 1883, col: 19, offset: 62784}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteItalicTextElement26, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -45155,44 +49659,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteItalicTextElement31, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteItalicTextElement33, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteItalicTextElement36, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteItalicTextElement40, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -45201,9 +49705,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -45217,33 +49721,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteItalicTextElement47, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteItalicTextElement52, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -45251,12 +49755,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteItalicTextElement54, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -45273,7 +49777,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -45282,28 +49786,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteItalicTextElement58, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteItalicTextElement62, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -45312,9 +49816,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -45328,33 +49832,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteItalicTextElement69, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteItalicTextElement74, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -45362,12 +49866,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteItalicTextElement76, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -45384,7 +49888,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -45393,28 +49897,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteItalicTextElement80, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteItalicTextElement84, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -45423,9 +49927,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -45439,7 +49943,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -45454,49 +49958,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteItalicTextElement90, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteItalicTextElement92, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonDoubleQuoteItalicTextElement95, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonDoubleQuoteItalicTextElement97, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteItalicTextElement101, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -45506,12 +50010,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteItalicTextElement105, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -45520,27 +50024,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonDoubleQuoteItalicTextElement111, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -45548,9 +50052,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -45561,44 +50065,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteItalicTextElement116, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteItalicTextElement118, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteItalicTextElement121, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteItalicTextElement125, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -45607,9 +50111,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -45623,33 +50127,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteItalicTextElement132, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteItalicTextElement137, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -45657,12 +50161,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteItalicTextElement139, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -45679,7 +50183,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -45688,28 +50192,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteItalicTextElement143, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteItalicTextElement147, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -45718,9 +50222,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -45734,33 +50238,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteItalicTextElement154, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteItalicTextElement159, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -45768,12 +50272,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteItalicTextElement161, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -45790,7 +50294,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -45799,28 +50303,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteItalicTextElement165, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteItalicTextElement169, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -45829,9 +50333,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -45845,7 +50349,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -45860,10 +50364,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonDoubleQuoteItalicTextElement175, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -45874,7 +50378,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -45883,27 +50387,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonDoubleQuoteItalicTextElement178, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteItalicTextElement182, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -45913,7 +50417,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -45925,10 +50429,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonDoubleQuoteItalicTextElement186, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -45942,63 +50446,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonDoubleQuoteItalicTextElement188, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonDoubleQuoteItalicTextElement190, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonDoubleQuoteItalicTextElement192, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonDoubleQuoteItalicTextElement194, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonDoubleQuoteItalicTextElement196, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonDoubleQuoteItalicTextElement198, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -46006,15 +50510,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -46025,39 +50529,39 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1827, col: 11, offset: 61150}, + pos: position{line: 1887, col: 11, offset: 62913}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 1828, col: 11, offset: 61172}, + pos: position{line: 1888, col: 11, offset: 62935}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 1829, col: 11, offset: 61195}, + pos: position{line: 1889, col: 11, offset: 62958}, name: "QuotedTextInDoubleQuoteItalicText", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonDoubleQuoteItalicTextElement207, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonDoubleQuoteItalicTextElement211, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -46067,7 +50571,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -46076,31 +50580,31 @@ var g = &grammar{ }, }, &charClassMatcher{ - pos: position{line: 1847, col: 5, offset: 61706}, + pos: position{line: 1907, col: 5, offset: 63469}, val: "[^\\r\\n_]", chars: []rune{'\r', '\n', '_'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 1848, col: 7, offset: 61805}, + pos: position{line: 1908, col: 7, offset: 63568}, run: (*parser).callonDoubleQuoteItalicTextElement216, expr: &seqExpr{ - pos: position{line: 1848, col: 7, offset: 61805}, + pos: position{line: 1908, col: 7, offset: 63568}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1848, col: 7, offset: 61805}, + pos: position{line: 1908, col: 7, offset: 63568}, val: "__", ignoreCase: false, want: "\"__\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonDoubleQuoteItalicTextElement219, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -46121,52 +50625,52 @@ var g = &grammar{ }, { name: "QuotedTextInDoubleQuoteItalicText", - pos: position{line: 1835, col: 1, offset: 61353}, + pos: position{line: 1895, col: 1, offset: 63116}, expr: &actionExpr{ - pos: position{line: 1836, col: 5, offset: 61395}, + pos: position{line: 1896, col: 5, offset: 63158}, run: (*parser).callonQuotedTextInDoubleQuoteItalicText1, expr: &seqExpr{ - pos: position{line: 1836, col: 5, offset: 61395}, + pos: position{line: 1896, col: 5, offset: 63158}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1836, col: 5, offset: 61395}, + pos: position{line: 1896, col: 5, offset: 63158}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 1836, col: 16, offset: 61406}, + pos: position{line: 1896, col: 16, offset: 63169}, expr: &ruleRefExpr{ - pos: position{line: 1836, col: 17, offset: 61407}, + pos: position{line: 1896, col: 17, offset: 63170}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1837, col: 5, offset: 61433}, + pos: position{line: 1897, col: 5, offset: 63196}, label: "text", expr: &choiceExpr{ - pos: position{line: 1837, col: 11, offset: 61439}, + pos: position{line: 1897, col: 11, offset: 63202}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1837, col: 11, offset: 61439}, + pos: position{line: 1897, col: 11, offset: 63202}, name: "SingleQuoteItalicText", }, &ruleRefExpr{ - pos: position{line: 1838, col: 11, offset: 61471}, + pos: position{line: 1898, col: 11, offset: 63234}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 1839, col: 11, offset: 61490}, + pos: position{line: 1899, col: 11, offset: 63253}, name: "MarkedText", }, &ruleRefExpr{ - pos: position{line: 1840, col: 11, offset: 61511}, + pos: position{line: 1900, col: 11, offset: 63274}, name: "MonospaceText", }, &ruleRefExpr{ - pos: position{line: 1841, col: 11, offset: 61535}, + pos: position{line: 1901, col: 11, offset: 63298}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 1842, col: 11, offset: 61559}, + pos: position{line: 1902, col: 11, offset: 63322}, name: "SuperscriptText", }, }, @@ -46178,29 +50682,29 @@ var g = &grammar{ }, { name: "SingleQuoteItalicText", - pos: position{line: 1859, col: 1, offset: 62181}, + pos: position{line: 1919, col: 1, offset: 63944}, expr: &actionExpr{ - pos: position{line: 1860, col: 5, offset: 62211}, + pos: position{line: 1920, col: 5, offset: 63974}, run: (*parser).callonSingleQuoteItalicText1, expr: &seqExpr{ - pos: position{line: 1860, col: 5, offset: 62211}, + pos: position{line: 1920, col: 5, offset: 63974}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1855, col: 40, offset: 62132}, + pos: position{line: 1915, col: 40, offset: 63895}, val: "_", ignoreCase: false, want: "\"_\"", }, &labeledExpr{ - pos: position{line: 1861, col: 5, offset: 62251}, + pos: position{line: 1921, col: 5, offset: 64014}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1861, col: 15, offset: 62261}, + pos: position{line: 1921, col: 15, offset: 64024}, name: "SingleQuoteItalicTextElements", }, }, &litMatcher{ - pos: position{line: 1857, col: 38, offset: 62175}, + pos: position{line: 1917, col: 38, offset: 63938}, val: "_", ignoreCase: false, want: "\"_\"", @@ -46211,29 +50715,29 @@ var g = &grammar{ }, { name: "SingleQuoteItalicTextElements", - pos: position{line: 1866, col: 1, offset: 62428}, + pos: position{line: 1926, col: 1, offset: 64191}, expr: &actionExpr{ - pos: position{line: 1867, col: 5, offset: 62466}, + pos: position{line: 1927, col: 5, offset: 64229}, run: (*parser).callonSingleQuoteItalicTextElements1, expr: &seqExpr{ - pos: position{line: 1867, col: 5, offset: 62466}, + pos: position{line: 1927, col: 5, offset: 64229}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1867, col: 5, offset: 62466}, + pos: position{line: 1927, col: 5, offset: 64229}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, ¬Expr{ - pos: position{line: 1867, col: 10, offset: 62471}, + pos: position{line: 1927, col: 10, offset: 64234}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteItalicTextElements7, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -46242,18 +50746,18 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1868, col: 5, offset: 62510}, + pos: position{line: 1928, col: 5, offset: 64273}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 1868, col: 14, offset: 62519}, + pos: position{line: 1928, col: 14, offset: 64282}, expr: &ruleRefExpr{ - pos: position{line: 1868, col: 15, offset: 62520}, + pos: position{line: 1928, col: 15, offset: 64283}, name: "SingleQuoteItalicTextElement", }, }, }, &andCodeExpr{ - pos: position{line: 1869, col: 5, offset: 62555}, + pos: position{line: 1929, col: 5, offset: 64318}, run: (*parser).callonSingleQuoteItalicTextElements12, }, }, @@ -46262,20 +50766,20 @@ var g = &grammar{ }, { name: "SingleQuoteItalicTextElement", - pos: position{line: 1875, col: 1, offset: 62696}, + pos: position{line: 1935, col: 1, offset: 64459}, expr: &choiceExpr{ - pos: position{line: 1876, col: 5, offset: 62733}, + pos: position{line: 1936, col: 5, offset: 64496}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, run: (*parser).callonSingleQuoteItalicTextElement2, expr: &seqExpr{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, expr: &charClassMatcher{ - pos: position{line: 1800, col: 5, offset: 60244}, + pos: position{line: 1860, col: 5, offset: 62007}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -46284,15 +50788,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1800, col: 15, offset: 60254}, + pos: position{line: 1860, col: 15, offset: 62017}, expr: &choiceExpr{ - pos: position{line: 1800, col: 17, offset: 60256}, + pos: position{line: 1860, col: 17, offset: 62019}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteItalicTextElement8, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -46300,7 +50804,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1797, col: 24, offset: 60216}, + pos: position{line: 1857, col: 24, offset: 61979}, val: "_", ignoreCase: false, want: "\"_\"", @@ -46312,12 +50816,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonSingleQuoteItalicTextElement11, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -46326,28 +50830,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 1878, col: 7, offset: 62767}, + pos: position{line: 1938, col: 7, offset: 64530}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteItalicTextElement15, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -46356,27 +50860,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1878, col: 15, offset: 62775}, + pos: position{line: 1938, col: 15, offset: 64538}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteItalicTextElement21, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -46388,44 +50892,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteItalicTextElement26, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteItalicTextElement28, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteItalicTextElement31, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteItalicTextElement35, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -46434,9 +50938,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -46450,33 +50954,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteItalicTextElement42, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteItalicTextElement47, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -46484,12 +50988,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteItalicTextElement49, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -46506,7 +51010,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -46515,28 +51019,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteItalicTextElement53, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteItalicTextElement57, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -46545,9 +51049,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -46561,33 +51065,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteItalicTextElement64, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteItalicTextElement69, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -46595,12 +51099,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteItalicTextElement71, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -46617,7 +51121,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -46626,28 +51130,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteItalicTextElement75, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteItalicTextElement79, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -46656,9 +51160,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -46672,7 +51176,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -46687,49 +51191,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteItalicTextElement85, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteItalicTextElement87, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonSingleQuoteItalicTextElement90, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonSingleQuoteItalicTextElement92, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteItalicTextElement96, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -46739,12 +51243,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteItalicTextElement100, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -46753,27 +51257,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonSingleQuoteItalicTextElement106, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -46781,9 +51285,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -46794,44 +51298,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteItalicTextElement111, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteItalicTextElement113, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteItalicTextElement116, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteItalicTextElement120, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -46840,9 +51344,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -46856,33 +51360,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteItalicTextElement127, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteItalicTextElement132, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -46890,12 +51394,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteItalicTextElement134, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -46912,7 +51416,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -46921,28 +51425,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteItalicTextElement138, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteItalicTextElement142, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -46951,9 +51455,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -46967,33 +51471,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteItalicTextElement149, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteItalicTextElement154, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -47001,12 +51505,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteItalicTextElement156, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -47023,7 +51527,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -47032,28 +51536,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteItalicTextElement160, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteItalicTextElement164, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -47062,9 +51566,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -47078,7 +51582,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -47093,10 +51597,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonSingleQuoteItalicTextElement170, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -47107,7 +51611,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -47116,27 +51620,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonSingleQuoteItalicTextElement173, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteItalicTextElement177, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -47146,7 +51650,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -47158,10 +51662,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonSingleQuoteItalicTextElement181, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -47175,63 +51679,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonSingleQuoteItalicTextElement183, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonSingleQuoteItalicTextElement185, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonSingleQuoteItalicTextElement187, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonSingleQuoteItalicTextElement189, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonSingleQuoteItalicTextElement191, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonSingleQuoteItalicTextElement193, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -47239,15 +51743,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -47258,39 +51762,39 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1882, col: 7, offset: 62888}, + pos: position{line: 1942, col: 7, offset: 64651}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 1883, col: 7, offset: 62906}, + pos: position{line: 1943, col: 7, offset: 64669}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 1884, col: 7, offset: 62925}, + pos: position{line: 1944, col: 7, offset: 64688}, name: "QuotedTextInSingleQuoteItalicText", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonSingleQuoteItalicTextElement202, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonSingleQuoteItalicTextElement206, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -47300,7 +51804,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -47309,31 +51813,31 @@ var g = &grammar{ }, }, &charClassMatcher{ - pos: position{line: 1900, col: 5, offset: 63382}, + pos: position{line: 1960, col: 5, offset: 65145}, val: "[^\\r\\n _]", chars: []rune{'\r', '\n', ' ', '_'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 1901, col: 7, offset: 63489}, + pos: position{line: 1961, col: 7, offset: 65252}, run: (*parser).callonSingleQuoteItalicTextElement211, expr: &seqExpr{ - pos: position{line: 1901, col: 7, offset: 63489}, + pos: position{line: 1961, col: 7, offset: 65252}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1901, col: 7, offset: 63489}, + pos: position{line: 1961, col: 7, offset: 65252}, val: "_", ignoreCase: false, want: "\"_\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonSingleQuoteItalicTextElement214, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -47350,52 +51854,52 @@ var g = &grammar{ }, { name: "QuotedTextInSingleQuoteItalicText", - pos: position{line: 1888, col: 1, offset: 63030}, + pos: position{line: 1948, col: 1, offset: 64793}, expr: &actionExpr{ - pos: position{line: 1889, col: 5, offset: 63071}, + pos: position{line: 1949, col: 5, offset: 64834}, run: (*parser).callonQuotedTextInSingleQuoteItalicText1, expr: &seqExpr{ - pos: position{line: 1889, col: 5, offset: 63071}, + pos: position{line: 1949, col: 5, offset: 64834}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1889, col: 5, offset: 63071}, + pos: position{line: 1949, col: 5, offset: 64834}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 1889, col: 16, offset: 63082}, + pos: position{line: 1949, col: 16, offset: 64845}, expr: &ruleRefExpr{ - pos: position{line: 1889, col: 17, offset: 63083}, + pos: position{line: 1949, col: 17, offset: 64846}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1890, col: 5, offset: 63109}, + pos: position{line: 1950, col: 5, offset: 64872}, label: "text", expr: &choiceExpr{ - pos: position{line: 1890, col: 11, offset: 63115}, + pos: position{line: 1950, col: 11, offset: 64878}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1890, col: 11, offset: 63115}, + pos: position{line: 1950, col: 11, offset: 64878}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 1891, col: 11, offset: 63134}, + pos: position{line: 1951, col: 11, offset: 64897}, name: "DoubleQuoteItalicText", }, &ruleRefExpr{ - pos: position{line: 1892, col: 11, offset: 63166}, + pos: position{line: 1952, col: 11, offset: 64929}, name: "MarkedText", }, &ruleRefExpr{ - pos: position{line: 1893, col: 11, offset: 63187}, + pos: position{line: 1953, col: 11, offset: 64950}, name: "MonospaceText", }, &ruleRefExpr{ - pos: position{line: 1894, col: 11, offset: 63211}, + pos: position{line: 1954, col: 11, offset: 64974}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 1895, col: 11, offset: 63235}, + pos: position{line: 1955, col: 11, offset: 64998}, name: "SuperscriptText", }, }, @@ -47407,35 +51911,35 @@ var g = &grammar{ }, { name: "EscapedItalicText", - pos: position{line: 1905, col: 1, offset: 63667}, + pos: position{line: 1965, col: 1, offset: 65430}, expr: &choiceExpr{ - pos: position{line: 1906, col: 5, offset: 63693}, + pos: position{line: 1966, col: 5, offset: 65456}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1906, col: 5, offset: 63693}, + pos: position{line: 1966, col: 5, offset: 65456}, run: (*parser).callonEscapedItalicText2, expr: &seqExpr{ - pos: position{line: 1906, col: 5, offset: 63693}, + pos: position{line: 1966, col: 5, offset: 65456}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1906, col: 5, offset: 63693}, + pos: position{line: 1966, col: 5, offset: 65456}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, run: (*parser).callonEscapedItalicText5, expr: &seqExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, val: "\\\\", ignoreCase: false, want: "\"\\\\\\\\\"", }, &zeroOrMoreExpr{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, expr: &litMatcher{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -47446,21 +51950,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1906, col: 40, offset: 63728}, + pos: position{line: 1966, col: 40, offset: 65491}, val: "__", ignoreCase: false, want: "\"__\"", }, &labeledExpr{ - pos: position{line: 1906, col: 45, offset: 63733}, + pos: position{line: 1966, col: 45, offset: 65496}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1906, col: 55, offset: 63743}, + pos: position{line: 1966, col: 55, offset: 65506}, name: "DoubleQuoteItalicTextElements", }, }, &litMatcher{ - pos: position{line: 1906, col: 86, offset: 63774}, + pos: position{line: 1966, col: 86, offset: 65537}, val: "__", ignoreCase: false, want: "\"__\"", @@ -47469,21 +51973,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1908, col: 9, offset: 63931}, + pos: position{line: 1968, col: 9, offset: 65694}, run: (*parser).callonEscapedItalicText14, expr: &seqExpr{ - pos: position{line: 1908, col: 9, offset: 63931}, + pos: position{line: 1968, col: 9, offset: 65694}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1908, col: 9, offset: 63931}, + pos: position{line: 1968, col: 9, offset: 65694}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedItalicText17, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -47492,21 +51996,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1908, col: 44, offset: 63966}, + pos: position{line: 1968, col: 44, offset: 65729}, val: "__", ignoreCase: false, want: "\"__\"", }, &labeledExpr{ - pos: position{line: 1908, col: 49, offset: 63971}, + pos: position{line: 1968, col: 49, offset: 65734}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1908, col: 59, offset: 63981}, + pos: position{line: 1968, col: 59, offset: 65744}, name: "SingleQuoteItalicTextElements", }, }, &litMatcher{ - pos: position{line: 1908, col: 90, offset: 64012}, + pos: position{line: 1968, col: 90, offset: 65775}, val: "_", ignoreCase: false, want: "\"_\"", @@ -47515,21 +52019,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1911, col: 9, offset: 64212}, + pos: position{line: 1971, col: 9, offset: 65975}, run: (*parser).callonEscapedItalicText24, expr: &seqExpr{ - pos: position{line: 1911, col: 9, offset: 64212}, + pos: position{line: 1971, col: 9, offset: 65975}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1911, col: 9, offset: 64212}, + pos: position{line: 1971, col: 9, offset: 65975}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedItalicText27, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -47538,21 +52042,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1911, col: 44, offset: 64247}, + pos: position{line: 1971, col: 44, offset: 66010}, val: "_", ignoreCase: false, want: "\"_\"", }, &labeledExpr{ - pos: position{line: 1911, col: 48, offset: 64251}, + pos: position{line: 1971, col: 48, offset: 66014}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1911, col: 58, offset: 64261}, + pos: position{line: 1971, col: 58, offset: 66024}, name: "SingleQuoteItalicTextElements", }, }, &litMatcher{ - pos: position{line: 1911, col: 89, offset: 64292}, + pos: position{line: 1971, col: 89, offset: 66055}, val: "_", ignoreCase: false, want: "\"_\"", @@ -47565,16 +52069,16 @@ var g = &grammar{ }, { name: "MonospaceText", - pos: position{line: 1918, col: 1, offset: 64611}, + pos: position{line: 1978, col: 1, offset: 66374}, expr: &choiceExpr{ - pos: position{line: 1918, col: 18, offset: 64628}, + pos: position{line: 1978, col: 18, offset: 66391}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1918, col: 18, offset: 64628}, + pos: position{line: 1978, col: 18, offset: 66391}, name: "DoubleQuoteMonospaceText", }, &ruleRefExpr{ - pos: position{line: 1918, col: 45, offset: 64655}, + pos: position{line: 1978, col: 45, offset: 66418}, name: "SingleQuoteMonospaceText", }, }, @@ -47582,29 +52086,29 @@ var g = &grammar{ }, { name: "DoubleQuoteMonospaceText", - pos: position{line: 1932, col: 1, offset: 65007}, + pos: position{line: 1992, col: 1, offset: 66770}, expr: &actionExpr{ - pos: position{line: 1933, col: 5, offset: 65040}, + pos: position{line: 1993, col: 5, offset: 66803}, run: (*parser).callonDoubleQuoteMonospaceText1, expr: &seqExpr{ - pos: position{line: 1933, col: 5, offset: 65040}, + pos: position{line: 1993, col: 5, offset: 66803}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1930, col: 38, offset: 65001}, + pos: position{line: 1990, col: 38, offset: 66764}, val: "``", ignoreCase: false, want: "\"``\"", }, &labeledExpr{ - pos: position{line: 1934, col: 5, offset: 65079}, + pos: position{line: 1994, col: 5, offset: 66842}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1934, col: 15, offset: 65089}, + pos: position{line: 1994, col: 15, offset: 66852}, name: "DoubleQuoteMonospaceTextElements", }, }, &litMatcher{ - pos: position{line: 1930, col: 38, offset: 65001}, + pos: position{line: 1990, col: 38, offset: 66764}, val: "``", ignoreCase: false, want: "\"``\"", @@ -47615,49 +52119,49 @@ var g = &grammar{ }, { name: "DoubleQuoteMonospaceTextElements", - pos: position{line: 1939, col: 1, offset: 65261}, + pos: position{line: 1999, col: 1, offset: 67024}, expr: &oneOrMoreExpr{ - pos: position{line: 1939, col: 37, offset: 65297}, + pos: position{line: 1999, col: 37, offset: 67060}, expr: &ruleRefExpr{ - pos: position{line: 1939, col: 37, offset: 65297}, + pos: position{line: 1999, col: 37, offset: 67060}, name: "DoubleQuoteMonospaceTextElement", }, }, }, { name: "DoubleQuoteMonospaceTextElement", - pos: position{line: 1941, col: 1, offset: 65364}, + pos: position{line: 2001, col: 1, offset: 67127}, expr: &actionExpr{ - pos: position{line: 1942, col: 5, offset: 65404}, + pos: position{line: 2002, col: 5, offset: 67167}, run: (*parser).callonDoubleQuoteMonospaceTextElement1, expr: &seqExpr{ - pos: position{line: 1942, col: 5, offset: 65404}, + pos: position{line: 2002, col: 5, offset: 67167}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1942, col: 5, offset: 65404}, + pos: position{line: 2002, col: 5, offset: 67167}, expr: &litMatcher{ - pos: position{line: 1930, col: 38, offset: 65001}, + pos: position{line: 1990, col: 38, offset: 66764}, val: "``", ignoreCase: false, want: "\"``\"", }, }, &labeledExpr{ - pos: position{line: 1943, col: 5, offset: 65443}, + pos: position{line: 2003, col: 5, offset: 67206}, label: "element", expr: &choiceExpr{ - pos: position{line: 1944, col: 9, offset: 65461}, + pos: position{line: 2004, col: 9, offset: 67224}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1923, col: 5, offset: 64738}, + pos: position{line: 1983, col: 5, offset: 66501}, run: (*parser).callonDoubleQuoteMonospaceTextElement7, expr: &seqExpr{ - pos: position{line: 1923, col: 5, offset: 64738}, + pos: position{line: 1983, col: 5, offset: 66501}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 1923, col: 5, offset: 64738}, + pos: position{line: 1983, col: 5, offset: 66501}, expr: &charClassMatcher{ - pos: position{line: 1923, col: 5, offset: 64738}, + pos: position{line: 1983, col: 5, offset: 66501}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -47666,15 +52170,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 1923, col: 15, offset: 64748}, + pos: position{line: 1983, col: 15, offset: 66511}, expr: &choiceExpr{ - pos: position{line: 1923, col: 17, offset: 64750}, + pos: position{line: 1983, col: 17, offset: 66513}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteMonospaceTextElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -47682,7 +52186,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1920, col: 27, offset: 64707}, + pos: position{line: 1980, col: 27, offset: 66470}, val: "`", ignoreCase: false, want: "\"`\"", @@ -47694,12 +52198,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonDoubleQuoteMonospaceTextElement16, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -47708,28 +52212,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 1946, col: 11, offset: 65539}, + pos: position{line: 2006, col: 11, offset: 67302}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteMonospaceTextElement20, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -47738,27 +52242,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1946, col: 19, offset: 65547}, + pos: position{line: 2006, col: 19, offset: 67310}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteMonospaceTextElement26, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -47770,44 +52274,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMonospaceTextElement31, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMonospaceTextElement33, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteMonospaceTextElement36, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMonospaceTextElement40, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -47816,9 +52320,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -47832,33 +52336,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMonospaceTextElement47, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMonospaceTextElement52, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -47866,12 +52370,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMonospaceTextElement54, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -47888,7 +52392,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -47897,28 +52401,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteMonospaceTextElement58, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMonospaceTextElement62, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -47927,9 +52431,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -47943,33 +52447,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMonospaceTextElement69, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMonospaceTextElement74, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -47977,12 +52481,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMonospaceTextElement76, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -47999,7 +52503,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -48008,28 +52512,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteMonospaceTextElement80, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMonospaceTextElement84, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -48038,9 +52542,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -48054,7 +52558,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -48069,49 +52573,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteMonospaceTextElement90, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteMonospaceTextElement92, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonDoubleQuoteMonospaceTextElement95, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonDoubleQuoteMonospaceTextElement97, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteMonospaceTextElement101, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -48121,12 +52625,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteMonospaceTextElement105, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -48135,27 +52639,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonDoubleQuoteMonospaceTextElement111, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -48163,9 +52667,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -48176,44 +52680,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMonospaceTextElement116, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMonospaceTextElement118, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteMonospaceTextElement121, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMonospaceTextElement125, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -48222,9 +52726,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -48238,33 +52742,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMonospaceTextElement132, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMonospaceTextElement137, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -48272,12 +52776,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMonospaceTextElement139, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -48294,7 +52798,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -48303,28 +52807,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteMonospaceTextElement143, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMonospaceTextElement147, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -48333,9 +52837,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -48349,33 +52853,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMonospaceTextElement154, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMonospaceTextElement159, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -48383,12 +52887,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMonospaceTextElement161, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -48405,7 +52909,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -48414,28 +52918,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteMonospaceTextElement165, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMonospaceTextElement169, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -48444,9 +52948,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -48460,7 +52964,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -48475,10 +52979,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonDoubleQuoteMonospaceTextElement175, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -48489,7 +52993,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -48498,27 +53002,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonDoubleQuoteMonospaceTextElement178, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteMonospaceTextElement182, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -48528,7 +53032,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -48540,10 +53044,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonDoubleQuoteMonospaceTextElement186, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -48557,63 +53061,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonDoubleQuoteMonospaceTextElement188, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonDoubleQuoteMonospaceTextElement190, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonDoubleQuoteMonospaceTextElement192, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonDoubleQuoteMonospaceTextElement194, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonDoubleQuoteMonospaceTextElement196, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonDoubleQuoteMonospaceTextElement198, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -48621,15 +53125,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -48640,45 +53144,45 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 1950, col: 11, offset: 65676}, + pos: position{line: 2010, col: 11, offset: 67439}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 1951, col: 11, offset: 65698}, + pos: position{line: 2011, col: 11, offset: 67461}, name: "QuotedString", }, &litMatcher{ - pos: position{line: 2609, col: 18, offset: 87431}, + pos: position{line: 2669, col: 18, offset: 89185}, val: "`'", ignoreCase: false, want: "\"`'\"", }, &ruleRefExpr{ - pos: position{line: 1953, col: 11, offset: 65788}, + pos: position{line: 2013, col: 11, offset: 67551}, name: "QuotedTextInDoubleQuoteMonospaceText", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonDoubleQuoteMonospaceTextElement208, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonDoubleQuoteMonospaceTextElement212, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -48688,7 +53192,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -48697,31 +53201,31 @@ var g = &grammar{ }, }, &charClassMatcher{ - pos: position{line: 1972, col: 5, offset: 66320}, + pos: position{line: 2032, col: 5, offset: 68083}, val: "[^\\r\\n`]", chars: []rune{'\r', '\n', '`'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 1973, col: 7, offset: 66422}, + pos: position{line: 2033, col: 7, offset: 68185}, run: (*parser).callonDoubleQuoteMonospaceTextElement217, expr: &seqExpr{ - pos: position{line: 1973, col: 7, offset: 66422}, + pos: position{line: 2033, col: 7, offset: 68185}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1973, col: 7, offset: 66422}, + pos: position{line: 2033, col: 7, offset: 68185}, val: "``", ignoreCase: false, want: "\"``\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonDoubleQuoteMonospaceTextElement220, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -48742,52 +53246,52 @@ var g = &grammar{ }, { name: "QuotedTextInDoubleQuoteMonospaceText", - pos: position{line: 1959, col: 1, offset: 65952}, + pos: position{line: 2019, col: 1, offset: 67715}, expr: &actionExpr{ - pos: position{line: 1960, col: 5, offset: 65996}, + pos: position{line: 2020, col: 5, offset: 67759}, run: (*parser).callonQuotedTextInDoubleQuoteMonospaceText1, expr: &seqExpr{ - pos: position{line: 1960, col: 5, offset: 65996}, + pos: position{line: 2020, col: 5, offset: 67759}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 1960, col: 5, offset: 65996}, + pos: position{line: 2020, col: 5, offset: 67759}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 1960, col: 16, offset: 66007}, + pos: position{line: 2020, col: 16, offset: 67770}, expr: &ruleRefExpr{ - pos: position{line: 1960, col: 17, offset: 66008}, + pos: position{line: 2020, col: 17, offset: 67771}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 1961, col: 5, offset: 66034}, + pos: position{line: 2021, col: 5, offset: 67797}, label: "text", expr: &choiceExpr{ - pos: position{line: 1962, col: 9, offset: 66049}, + pos: position{line: 2022, col: 9, offset: 67812}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 1962, col: 9, offset: 66049}, + pos: position{line: 2022, col: 9, offset: 67812}, name: "SingleQuoteMonospaceText", }, &ruleRefExpr{ - pos: position{line: 1963, col: 11, offset: 66084}, + pos: position{line: 2023, col: 11, offset: 67847}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 1964, col: 11, offset: 66103}, + pos: position{line: 2024, col: 11, offset: 67866}, name: "ItalicText", }, &ruleRefExpr{ - pos: position{line: 1965, col: 11, offset: 66124}, + pos: position{line: 2025, col: 11, offset: 67887}, name: "MarkedText", }, &ruleRefExpr{ - pos: position{line: 1966, col: 11, offset: 66145}, + pos: position{line: 2026, col: 11, offset: 67908}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 1967, col: 11, offset: 66169}, + pos: position{line: 2027, col: 11, offset: 67932}, name: "SuperscriptText", }, }, @@ -48799,29 +53303,29 @@ var g = &grammar{ }, { name: "SingleQuoteMonospaceText", - pos: position{line: 1986, col: 1, offset: 66908}, + pos: position{line: 2046, col: 1, offset: 68671}, expr: &actionExpr{ - pos: position{line: 1987, col: 5, offset: 66941}, + pos: position{line: 2047, col: 5, offset: 68704}, run: (*parser).callonSingleQuoteMonospaceText1, expr: &seqExpr{ - pos: position{line: 1987, col: 5, offset: 66941}, + pos: position{line: 2047, col: 5, offset: 68704}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1982, col: 43, offset: 66856}, + pos: position{line: 2042, col: 43, offset: 68619}, val: "`", ignoreCase: false, want: "\"`\"", }, &labeledExpr{ - pos: position{line: 1988, col: 5, offset: 66985}, + pos: position{line: 2048, col: 5, offset: 68748}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 1988, col: 15, offset: 66995}, + pos: position{line: 2048, col: 15, offset: 68758}, name: "SingleQuoteMonospaceTextElements", }, }, &litMatcher{ - pos: position{line: 1984, col: 41, offset: 66902}, + pos: position{line: 2044, col: 41, offset: 68665}, val: "`", ignoreCase: false, want: "\"`\"", @@ -48832,29 +53336,29 @@ var g = &grammar{ }, { name: "SingleQuoteMonospaceTextElements", - pos: position{line: 1993, col: 1, offset: 67171}, + pos: position{line: 2053, col: 1, offset: 68934}, expr: &actionExpr{ - pos: position{line: 1994, col: 5, offset: 67212}, + pos: position{line: 2054, col: 5, offset: 68975}, run: (*parser).callonSingleQuoteMonospaceTextElements1, expr: &seqExpr{ - pos: position{line: 1994, col: 5, offset: 67212}, + pos: position{line: 2054, col: 5, offset: 68975}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1994, col: 5, offset: 67212}, + pos: position{line: 2054, col: 5, offset: 68975}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, ¬Expr{ - pos: position{line: 1994, col: 10, offset: 67217}, + pos: position{line: 2054, col: 10, offset: 68980}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteMonospaceTextElements7, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -48863,18 +53367,18 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1995, col: 5, offset: 67256}, + pos: position{line: 2055, col: 5, offset: 69019}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 1995, col: 14, offset: 67265}, + pos: position{line: 2055, col: 14, offset: 69028}, expr: &ruleRefExpr{ - pos: position{line: 1995, col: 15, offset: 67266}, + pos: position{line: 2055, col: 15, offset: 69029}, name: "SingleQuoteMonospaceTextElement", }, }, }, &andCodeExpr{ - pos: position{line: 1996, col: 5, offset: 67304}, + pos: position{line: 2056, col: 5, offset: 69067}, run: (*parser).callonSingleQuoteMonospaceTextElements12, }, }, @@ -48883,20 +53387,20 @@ var g = &grammar{ }, { name: "SingleQuoteMonospaceTextElement", - pos: position{line: 2002, col: 1, offset: 67445}, + pos: position{line: 2062, col: 1, offset: 69208}, expr: &choiceExpr{ - pos: position{line: 2003, col: 5, offset: 67486}, + pos: position{line: 2063, col: 5, offset: 69249}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, run: (*parser).callonSingleQuoteMonospaceTextElement2, expr: &seqExpr{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, expr: &charClassMatcher{ - pos: position{line: 2798, col: 5, offset: 93177}, + pos: position{line: 2858, col: 5, offset: 94931}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -48905,21 +53409,21 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2798, col: 15, offset: 93187}, + pos: position{line: 2858, col: 15, offset: 94941}, expr: &choiceExpr{ - pos: position{line: 2798, col: 17, offset: 93189}, + pos: position{line: 2858, col: 17, offset: 94943}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2798, col: 17, offset: 93189}, + pos: position{line: 2858, col: 17, offset: 94943}, val: "[\\r\\n ,]]", chars: []rune{'\r', '\n', ' ', ',', ']'}, ignoreCase: false, inverted: false, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -48929,15 +53433,15 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, run: (*parser).callonSingleQuoteMonospaceTextElement11, expr: &seqExpr{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, expr: &charClassMatcher{ - pos: position{line: 2800, col: 9, offset: 93271}, + pos: position{line: 2860, col: 9, offset: 95025}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -48946,21 +53450,21 @@ var g = &grammar{ }, }, &oneOrMoreExpr{ - pos: position{line: 2800, col: 19, offset: 93281}, + pos: position{line: 2860, col: 19, offset: 95035}, expr: &seqExpr{ - pos: position{line: 2800, col: 20, offset: 93282}, + pos: position{line: 2860, col: 20, offset: 95036}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2800, col: 20, offset: 93282}, + pos: position{line: 2860, col: 20, offset: 95036}, val: "[=*_`]", chars: []rune{'=', '*', '_', '`'}, ignoreCase: false, inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 2800, col: 27, offset: 93289}, + pos: position{line: 2860, col: 27, offset: 95043}, expr: &charClassMatcher{ - pos: position{line: 2800, col: 27, offset: 93289}, + pos: position{line: 2860, col: 27, offset: 95043}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -48975,12 +53479,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonSingleQuoteMonospaceTextElement20, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -48989,28 +53493,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2005, col: 7, offset: 67511}, + pos: position{line: 2065, col: 7, offset: 69274}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteMonospaceTextElement24, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -49019,27 +53523,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2005, col: 15, offset: 67519}, + pos: position{line: 2065, col: 15, offset: 69282}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteMonospaceTextElement30, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -49051,44 +53555,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMonospaceTextElement35, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMonospaceTextElement37, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteMonospaceTextElement40, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMonospaceTextElement44, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -49097,9 +53601,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -49113,33 +53617,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMonospaceTextElement51, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMonospaceTextElement56, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -49147,12 +53651,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMonospaceTextElement58, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -49169,7 +53673,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -49178,28 +53682,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteMonospaceTextElement62, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMonospaceTextElement66, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -49208,9 +53712,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -49224,33 +53728,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMonospaceTextElement73, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMonospaceTextElement78, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -49258,12 +53762,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMonospaceTextElement80, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -49280,7 +53784,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -49289,28 +53793,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteMonospaceTextElement84, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMonospaceTextElement88, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -49319,9 +53823,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -49335,7 +53839,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -49350,49 +53854,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteMonospaceTextElement94, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteMonospaceTextElement96, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonSingleQuoteMonospaceTextElement99, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonSingleQuoteMonospaceTextElement101, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteMonospaceTextElement105, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -49402,12 +53906,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteMonospaceTextElement109, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -49416,27 +53920,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonSingleQuoteMonospaceTextElement115, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -49444,9 +53948,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -49457,44 +53961,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMonospaceTextElement120, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMonospaceTextElement122, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteMonospaceTextElement125, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMonospaceTextElement129, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -49503,9 +54007,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -49519,33 +54023,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMonospaceTextElement136, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMonospaceTextElement141, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -49553,12 +54057,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMonospaceTextElement143, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -49575,7 +54079,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -49584,28 +54088,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteMonospaceTextElement147, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMonospaceTextElement151, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -49614,9 +54118,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -49630,33 +54134,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMonospaceTextElement158, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMonospaceTextElement163, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -49664,12 +54168,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMonospaceTextElement165, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -49686,7 +54190,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -49695,28 +54199,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteMonospaceTextElement169, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMonospaceTextElement173, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -49725,9 +54229,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -49741,7 +54245,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -49756,10 +54260,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonSingleQuoteMonospaceTextElement179, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -49770,7 +54274,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -49779,27 +54283,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonSingleQuoteMonospaceTextElement182, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteMonospaceTextElement186, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -49809,7 +54313,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -49821,10 +54325,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonSingleQuoteMonospaceTextElement190, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -49838,63 +54342,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonSingleQuoteMonospaceTextElement192, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonSingleQuoteMonospaceTextElement194, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonSingleQuoteMonospaceTextElement196, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonSingleQuoteMonospaceTextElement198, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonSingleQuoteMonospaceTextElement200, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonSingleQuoteMonospaceTextElement202, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -49902,15 +54406,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -49921,45 +54425,45 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2009, col: 7, offset: 67632}, + pos: position{line: 2069, col: 7, offset: 69395}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 2010, col: 7, offset: 67650}, + pos: position{line: 2070, col: 7, offset: 69413}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 2011, col: 7, offset: 67669}, + pos: position{line: 2071, col: 7, offset: 69432}, name: "QuotedTextInSingleQuoteMonospaceText", }, &litMatcher{ - pos: position{line: 2609, col: 18, offset: 87431}, + pos: position{line: 2669, col: 18, offset: 89185}, val: "`'", ignoreCase: false, want: "\"`'\"", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonSingleQuoteMonospaceTextElement212, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonSingleQuoteMonospaceTextElement216, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -49969,7 +54473,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -49978,34 +54482,34 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2029, col: 5, offset: 68168}, + pos: position{line: 2089, col: 5, offset: 69931}, run: (*parser).callonSingleQuoteMonospaceTextElement220, expr: &choiceExpr{ - pos: position{line: 2029, col: 6, offset: 68169}, + pos: position{line: 2089, col: 6, offset: 69932}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2029, col: 6, offset: 68169}, + pos: position{line: 2089, col: 6, offset: 69932}, val: "[^\\r\\n` ]", chars: []rune{'\r', '\n', '`', ' '}, ignoreCase: false, inverted: true, }, &seqExpr{ - pos: position{line: 2030, col: 7, offset: 68281}, + pos: position{line: 2090, col: 7, offset: 70044}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1920, col: 27, offset: 64707}, + pos: position{line: 1980, col: 27, offset: 66470}, val: "`", ignoreCase: false, want: "\"`\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonSingleQuoteMonospaceTextElement225, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -50024,52 +54528,52 @@ var g = &grammar{ }, { name: "QuotedTextInSingleQuoteMonospaceText", - pos: position{line: 2016, col: 1, offset: 67800}, + pos: position{line: 2076, col: 1, offset: 69563}, expr: &actionExpr{ - pos: position{line: 2017, col: 5, offset: 67844}, + pos: position{line: 2077, col: 5, offset: 69607}, run: (*parser).callonQuotedTextInSingleQuoteMonospaceText1, expr: &seqExpr{ - pos: position{line: 2017, col: 5, offset: 67844}, + pos: position{line: 2077, col: 5, offset: 69607}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2017, col: 5, offset: 67844}, + pos: position{line: 2077, col: 5, offset: 69607}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 2017, col: 16, offset: 67855}, + pos: position{line: 2077, col: 16, offset: 69618}, expr: &ruleRefExpr{ - pos: position{line: 2017, col: 17, offset: 67856}, + pos: position{line: 2077, col: 17, offset: 69619}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 2018, col: 5, offset: 67882}, + pos: position{line: 2078, col: 5, offset: 69645}, label: "text", expr: &choiceExpr{ - pos: position{line: 2019, col: 9, offset: 67897}, + pos: position{line: 2079, col: 9, offset: 69660}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2019, col: 9, offset: 67897}, + pos: position{line: 2079, col: 9, offset: 69660}, name: "DoubleQuoteMonospaceText", }, &ruleRefExpr{ - pos: position{line: 2020, col: 11, offset: 67932}, + pos: position{line: 2080, col: 11, offset: 69695}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 2021, col: 11, offset: 67951}, + pos: position{line: 2081, col: 11, offset: 69714}, name: "ItalicText", }, &ruleRefExpr{ - pos: position{line: 2022, col: 11, offset: 67972}, + pos: position{line: 2082, col: 11, offset: 69735}, name: "MarkedText", }, &ruleRefExpr{ - pos: position{line: 2023, col: 11, offset: 67993}, + pos: position{line: 2083, col: 11, offset: 69756}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 2024, col: 11, offset: 68017}, + pos: position{line: 2084, col: 11, offset: 69780}, name: "SuperscriptText", }, }, @@ -50081,35 +54585,35 @@ var g = &grammar{ }, { name: "EscapedMonospaceText", - pos: position{line: 2034, col: 1, offset: 68482}, + pos: position{line: 2094, col: 1, offset: 70245}, expr: &choiceExpr{ - pos: position{line: 2035, col: 5, offset: 68511}, + pos: position{line: 2095, col: 5, offset: 70274}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2035, col: 5, offset: 68511}, + pos: position{line: 2095, col: 5, offset: 70274}, run: (*parser).callonEscapedMonospaceText2, expr: &seqExpr{ - pos: position{line: 2035, col: 5, offset: 68511}, + pos: position{line: 2095, col: 5, offset: 70274}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2035, col: 5, offset: 68511}, + pos: position{line: 2095, col: 5, offset: 70274}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, run: (*parser).callonEscapedMonospaceText5, expr: &seqExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, val: "\\\\", ignoreCase: false, want: "\"\\\\\\\\\"", }, &zeroOrMoreExpr{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, expr: &litMatcher{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -50120,21 +54624,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2035, col: 40, offset: 68546}, + pos: position{line: 2095, col: 40, offset: 70309}, val: "``", ignoreCase: false, want: "\"``\"", }, &labeledExpr{ - pos: position{line: 2035, col: 45, offset: 68551}, + pos: position{line: 2095, col: 45, offset: 70314}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2035, col: 55, offset: 68561}, + pos: position{line: 2095, col: 55, offset: 70324}, name: "DoubleQuoteMonospaceTextElements", }, }, &litMatcher{ - pos: position{line: 2035, col: 89, offset: 68595}, + pos: position{line: 2095, col: 89, offset: 70358}, val: "``", ignoreCase: false, want: "\"``\"", @@ -50143,21 +54647,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2037, col: 9, offset: 68752}, + pos: position{line: 2097, col: 9, offset: 70515}, run: (*parser).callonEscapedMonospaceText14, expr: &seqExpr{ - pos: position{line: 2037, col: 9, offset: 68752}, + pos: position{line: 2097, col: 9, offset: 70515}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2037, col: 9, offset: 68752}, + pos: position{line: 2097, col: 9, offset: 70515}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedMonospaceText17, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -50166,21 +54670,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2037, col: 44, offset: 68787}, + pos: position{line: 2097, col: 44, offset: 70550}, val: "``", ignoreCase: false, want: "\"``\"", }, &labeledExpr{ - pos: position{line: 2037, col: 49, offset: 68792}, + pos: position{line: 2097, col: 49, offset: 70555}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2037, col: 59, offset: 68802}, + pos: position{line: 2097, col: 59, offset: 70565}, name: "SingleQuoteMonospaceTextElements", }, }, &litMatcher{ - pos: position{line: 2037, col: 93, offset: 68836}, + pos: position{line: 2097, col: 93, offset: 70599}, val: "`", ignoreCase: false, want: "\"`\"", @@ -50189,21 +54693,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2040, col: 9, offset: 69036}, + pos: position{line: 2100, col: 9, offset: 70799}, run: (*parser).callonEscapedMonospaceText24, expr: &seqExpr{ - pos: position{line: 2040, col: 9, offset: 69036}, + pos: position{line: 2100, col: 9, offset: 70799}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2040, col: 9, offset: 69036}, + pos: position{line: 2100, col: 9, offset: 70799}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedMonospaceText27, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -50212,21 +54716,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2040, col: 44, offset: 69071}, + pos: position{line: 2100, col: 44, offset: 70834}, val: "`", ignoreCase: false, want: "\"`\"", }, &labeledExpr{ - pos: position{line: 2040, col: 48, offset: 69075}, + pos: position{line: 2100, col: 48, offset: 70838}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2040, col: 58, offset: 69085}, + pos: position{line: 2100, col: 58, offset: 70848}, name: "SingleQuoteMonospaceTextElements", }, }, &litMatcher{ - pos: position{line: 2040, col: 92, offset: 69119}, + pos: position{line: 2100, col: 92, offset: 70882}, val: "`", ignoreCase: false, want: "\"`\"", @@ -50239,16 +54743,16 @@ var g = &grammar{ }, { name: "MarkedText", - pos: position{line: 2047, col: 1, offset: 69416}, + pos: position{line: 2107, col: 1, offset: 71179}, expr: &choiceExpr{ - pos: position{line: 2047, col: 15, offset: 69430}, + pos: position{line: 2107, col: 15, offset: 71193}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2047, col: 15, offset: 69430}, + pos: position{line: 2107, col: 15, offset: 71193}, name: "DoubleQuoteMarkedText", }, &ruleRefExpr{ - pos: position{line: 2047, col: 39, offset: 69454}, + pos: position{line: 2107, col: 39, offset: 71217}, name: "SingleQuoteMarkedText", }, }, @@ -50256,29 +54760,29 @@ var g = &grammar{ }, { name: "DoubleQuoteMarkedText", - pos: position{line: 2061, col: 1, offset: 69792}, + pos: position{line: 2121, col: 1, offset: 71555}, expr: &actionExpr{ - pos: position{line: 2062, col: 5, offset: 69822}, + pos: position{line: 2122, col: 5, offset: 71585}, run: (*parser).callonDoubleQuoteMarkedText1, expr: &seqExpr{ - pos: position{line: 2062, col: 5, offset: 69822}, + pos: position{line: 2122, col: 5, offset: 71585}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2059, col: 35, offset: 69786}, + pos: position{line: 2119, col: 35, offset: 71549}, val: "##", ignoreCase: false, want: "\"##\"", }, &labeledExpr{ - pos: position{line: 2063, col: 5, offset: 69858}, + pos: position{line: 2123, col: 5, offset: 71621}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2063, col: 15, offset: 69868}, + pos: position{line: 2123, col: 15, offset: 71631}, name: "DoubleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2059, col: 35, offset: 69786}, + pos: position{line: 2119, col: 35, offset: 71549}, val: "##", ignoreCase: false, want: "\"##\"", @@ -50289,49 +54793,49 @@ var g = &grammar{ }, { name: "DoubleQuoteMarkedTextElements", - pos: position{line: 2068, col: 1, offset: 70031}, + pos: position{line: 2128, col: 1, offset: 71794}, expr: &zeroOrMoreExpr{ - pos: position{line: 2068, col: 34, offset: 70064}, + pos: position{line: 2128, col: 34, offset: 71827}, expr: &ruleRefExpr{ - pos: position{line: 2068, col: 34, offset: 70064}, + pos: position{line: 2128, col: 34, offset: 71827}, name: "DoubleQuoteMarkedTextElement", }, }, }, { name: "DoubleQuoteMarkedTextElement", - pos: position{line: 2070, col: 1, offset: 70095}, + pos: position{line: 2130, col: 1, offset: 71858}, expr: &actionExpr{ - pos: position{line: 2071, col: 5, offset: 70164}, + pos: position{line: 2131, col: 5, offset: 71927}, run: (*parser).callonDoubleQuoteMarkedTextElement1, expr: &seqExpr{ - pos: position{line: 2071, col: 5, offset: 70164}, + pos: position{line: 2131, col: 5, offset: 71927}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2071, col: 5, offset: 70164}, + pos: position{line: 2131, col: 5, offset: 71927}, expr: &litMatcher{ - pos: position{line: 2059, col: 35, offset: 69786}, + pos: position{line: 2119, col: 35, offset: 71549}, val: "##", ignoreCase: false, want: "\"##\"", }, }, &labeledExpr{ - pos: position{line: 2072, col: 5, offset: 70200}, + pos: position{line: 2132, col: 5, offset: 71963}, label: "element", expr: &choiceExpr{ - pos: position{line: 2073, col: 9, offset: 70218}, + pos: position{line: 2133, col: 9, offset: 71981}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, run: (*parser).callonDoubleQuoteMarkedTextElement7, expr: &seqExpr{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, expr: &charClassMatcher{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, val: "[,?!;0-9\\pL]", chars: []rune{',', '?', '!', ';'}, ranges: []rune{'0', '9'}, @@ -50341,15 +54845,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2052, col: 19, offset: 69542}, + pos: position{line: 2112, col: 19, offset: 71305}, expr: &choiceExpr{ - pos: position{line: 2052, col: 21, offset: 69544}, + pos: position{line: 2112, col: 21, offset: 71307}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteMarkedTextElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -50357,7 +54861,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2049, col: 24, offset: 69500}, + pos: position{line: 2109, col: 24, offset: 71263}, val: "#", ignoreCase: false, want: "\"#\"", @@ -50369,12 +54873,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonDoubleQuoteMarkedTextElement16, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -50383,28 +54887,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2075, col: 11, offset: 70293}, + pos: position{line: 2135, col: 11, offset: 72056}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteMarkedTextElement20, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -50413,27 +54917,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2075, col: 19, offset: 70301}, + pos: position{line: 2135, col: 19, offset: 72064}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuoteMarkedTextElement26, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -50445,44 +54949,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMarkedTextElement31, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMarkedTextElement33, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteMarkedTextElement36, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMarkedTextElement40, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -50491,9 +54995,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -50507,33 +55011,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMarkedTextElement47, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMarkedTextElement52, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -50541,12 +55045,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMarkedTextElement54, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -50563,7 +55067,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -50572,28 +55076,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteMarkedTextElement58, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMarkedTextElement62, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -50602,9 +55106,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -50618,33 +55122,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMarkedTextElement69, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMarkedTextElement74, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -50652,12 +55156,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMarkedTextElement76, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -50674,7 +55178,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -50683,28 +55187,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteMarkedTextElement80, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMarkedTextElement84, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -50713,9 +55217,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -50729,7 +55233,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -50744,49 +55248,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteMarkedTextElement90, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuoteMarkedTextElement92, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonDoubleQuoteMarkedTextElement95, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonDoubleQuoteMarkedTextElement97, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteMarkedTextElement101, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -50796,12 +55300,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuoteMarkedTextElement105, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -50810,27 +55314,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonDoubleQuoteMarkedTextElement111, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -50838,9 +55342,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -50851,44 +55355,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMarkedTextElement116, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuoteMarkedTextElement118, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuoteMarkedTextElement121, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMarkedTextElement125, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -50897,9 +55401,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -50913,33 +55417,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMarkedTextElement132, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMarkedTextElement137, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -50947,12 +55451,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMarkedTextElement139, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -50969,7 +55473,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -50978,28 +55482,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuoteMarkedTextElement143, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMarkedTextElement147, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -51008,9 +55512,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -51024,33 +55528,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuoteMarkedTextElement154, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuoteMarkedTextElement159, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -51058,12 +55562,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuoteMarkedTextElement161, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -51080,7 +55584,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -51089,28 +55593,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuoteMarkedTextElement165, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuoteMarkedTextElement169, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -51119,9 +55623,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -51135,7 +55639,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -51150,10 +55654,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonDoubleQuoteMarkedTextElement175, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -51164,7 +55668,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -51173,27 +55677,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonDoubleQuoteMarkedTextElement178, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuoteMarkedTextElement182, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -51203,7 +55707,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -51215,10 +55719,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonDoubleQuoteMarkedTextElement186, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -51232,63 +55736,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonDoubleQuoteMarkedTextElement188, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonDoubleQuoteMarkedTextElement190, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonDoubleQuoteMarkedTextElement192, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonDoubleQuoteMarkedTextElement194, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonDoubleQuoteMarkedTextElement196, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonDoubleQuoteMarkedTextElement198, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -51296,15 +55800,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -51315,39 +55819,39 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2079, col: 11, offset: 70430}, + pos: position{line: 2139, col: 11, offset: 72193}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 2080, col: 11, offset: 70452}, + pos: position{line: 2140, col: 11, offset: 72215}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 2081, col: 11, offset: 70475}, + pos: position{line: 2141, col: 11, offset: 72238}, name: "QuotedTextInDoubleMarkedBoldText", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonDoubleQuoteMarkedTextElement207, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonDoubleQuoteMarkedTextElement211, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -51357,7 +55861,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -51366,31 +55870,31 @@ var g = &grammar{ }, }, &charClassMatcher{ - pos: position{line: 2101, col: 5, offset: 70990}, + pos: position{line: 2161, col: 5, offset: 72753}, val: "[^\\r\\n#]", chars: []rune{'\r', '\n', '#'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 2102, col: 7, offset: 71089}, + pos: position{line: 2162, col: 7, offset: 72852}, run: (*parser).callonDoubleQuoteMarkedTextElement216, expr: &seqExpr{ - pos: position{line: 2102, col: 7, offset: 71089}, + pos: position{line: 2162, col: 7, offset: 72852}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2059, col: 35, offset: 69786}, + pos: position{line: 2119, col: 35, offset: 71549}, val: "##", ignoreCase: false, want: "\"##\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonDoubleQuoteMarkedTextElement219, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -51411,52 +55915,52 @@ var g = &grammar{ }, { name: "QuotedTextInDoubleMarkedBoldText", - pos: position{line: 2088, col: 1, offset: 70629}, + pos: position{line: 2148, col: 1, offset: 72392}, expr: &actionExpr{ - pos: position{line: 2089, col: 5, offset: 70669}, + pos: position{line: 2149, col: 5, offset: 72432}, run: (*parser).callonQuotedTextInDoubleMarkedBoldText1, expr: &seqExpr{ - pos: position{line: 2089, col: 5, offset: 70669}, + pos: position{line: 2149, col: 5, offset: 72432}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2089, col: 5, offset: 70669}, + pos: position{line: 2149, col: 5, offset: 72432}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 2089, col: 16, offset: 70680}, + pos: position{line: 2149, col: 16, offset: 72443}, expr: &ruleRefExpr{ - pos: position{line: 2089, col: 17, offset: 70681}, + pos: position{line: 2149, col: 17, offset: 72444}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 2090, col: 5, offset: 70707}, + pos: position{line: 2150, col: 5, offset: 72470}, label: "text", expr: &choiceExpr{ - pos: position{line: 2091, col: 9, offset: 70722}, + pos: position{line: 2151, col: 9, offset: 72485}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2091, col: 9, offset: 70722}, + pos: position{line: 2151, col: 9, offset: 72485}, name: "SingleQuoteMarkedText", }, &ruleRefExpr{ - pos: position{line: 2092, col: 11, offset: 70754}, + pos: position{line: 2152, col: 11, offset: 72517}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 2093, col: 11, offset: 70773}, + pos: position{line: 2153, col: 11, offset: 72536}, name: "ItalicText", }, &ruleRefExpr{ - pos: position{line: 2094, col: 11, offset: 70794}, + pos: position{line: 2154, col: 11, offset: 72557}, name: "MonospaceText", }, &ruleRefExpr{ - pos: position{line: 2095, col: 11, offset: 70818}, + pos: position{line: 2155, col: 11, offset: 72581}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 2096, col: 11, offset: 70842}, + pos: position{line: 2156, col: 11, offset: 72605}, name: "SuperscriptText", }, }, @@ -51468,29 +55972,29 @@ var g = &grammar{ }, { name: "SingleQuoteMarkedText", - pos: position{line: 2113, col: 1, offset: 71496}, + pos: position{line: 2173, col: 1, offset: 73259}, expr: &actionExpr{ - pos: position{line: 2114, col: 5, offset: 71526}, + pos: position{line: 2174, col: 5, offset: 73289}, run: (*parser).callonSingleQuoteMarkedText1, expr: &seqExpr{ - pos: position{line: 2114, col: 5, offset: 71526}, + pos: position{line: 2174, col: 5, offset: 73289}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2109, col: 40, offset: 71448}, + pos: position{line: 2169, col: 40, offset: 73211}, val: "#", ignoreCase: false, want: "\"#\"", }, &labeledExpr{ - pos: position{line: 2115, col: 5, offset: 71566}, + pos: position{line: 2175, col: 5, offset: 73329}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2115, col: 15, offset: 71576}, + pos: position{line: 2175, col: 15, offset: 73339}, name: "SingleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2111, col: 38, offset: 71490}, + pos: position{line: 2171, col: 38, offset: 73253}, val: "#", ignoreCase: false, want: "\"#\"", @@ -51501,29 +56005,29 @@ var g = &grammar{ }, { name: "SingleQuoteMarkedTextElements", - pos: position{line: 2120, col: 1, offset: 71743}, + pos: position{line: 2180, col: 1, offset: 73506}, expr: &actionExpr{ - pos: position{line: 2121, col: 5, offset: 71781}, + pos: position{line: 2181, col: 5, offset: 73544}, run: (*parser).callonSingleQuoteMarkedTextElements1, expr: &seqExpr{ - pos: position{line: 2121, col: 5, offset: 71781}, + pos: position{line: 2181, col: 5, offset: 73544}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2121, col: 5, offset: 71781}, + pos: position{line: 2181, col: 5, offset: 73544}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, ¬Expr{ - pos: position{line: 2121, col: 10, offset: 71786}, + pos: position{line: 2181, col: 10, offset: 73549}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteMarkedTextElements7, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -51532,18 +56036,18 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2122, col: 5, offset: 71825}, + pos: position{line: 2182, col: 5, offset: 73588}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2122, col: 14, offset: 71834}, + pos: position{line: 2182, col: 14, offset: 73597}, expr: &ruleRefExpr{ - pos: position{line: 2122, col: 15, offset: 71835}, + pos: position{line: 2182, col: 15, offset: 73598}, name: "SingleQuoteMarkedTextElement", }, }, }, &andCodeExpr{ - pos: position{line: 2123, col: 5, offset: 71871}, + pos: position{line: 2183, col: 5, offset: 73634}, run: (*parser).callonSingleQuoteMarkedTextElements12, }, }, @@ -51552,20 +56056,20 @@ var g = &grammar{ }, { name: "SingleQuoteMarkedTextElement", - pos: position{line: 2129, col: 1, offset: 72012}, + pos: position{line: 2189, col: 1, offset: 73775}, expr: &choiceExpr{ - pos: position{line: 2130, col: 5, offset: 72049}, + pos: position{line: 2190, col: 5, offset: 73812}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, run: (*parser).callonSingleQuoteMarkedTextElement2, expr: &seqExpr{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, expr: &charClassMatcher{ - pos: position{line: 2052, col: 5, offset: 69528}, + pos: position{line: 2112, col: 5, offset: 71291}, val: "[,?!;0-9\\pL]", chars: []rune{',', '?', '!', ';'}, ranges: []rune{'0', '9'}, @@ -51575,15 +56079,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2052, col: 19, offset: 69542}, + pos: position{line: 2112, col: 19, offset: 71305}, expr: &choiceExpr{ - pos: position{line: 2052, col: 21, offset: 69544}, + pos: position{line: 2112, col: 21, offset: 71307}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteMarkedTextElement8, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -51591,7 +56095,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2049, col: 24, offset: 69500}, + pos: position{line: 2109, col: 24, offset: 71263}, val: "#", ignoreCase: false, want: "\"#\"", @@ -51603,12 +56107,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonSingleQuoteMarkedTextElement11, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -51617,28 +56121,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2132, col: 7, offset: 72083}, + pos: position{line: 2192, col: 7, offset: 73846}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteMarkedTextElement15, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -51647,27 +56151,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2132, col: 15, offset: 72091}, + pos: position{line: 2192, col: 15, offset: 73854}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuoteMarkedTextElement21, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -51679,44 +56183,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMarkedTextElement26, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMarkedTextElement28, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteMarkedTextElement31, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMarkedTextElement35, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -51725,9 +56229,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -51741,33 +56245,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMarkedTextElement42, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMarkedTextElement47, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -51775,12 +56279,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMarkedTextElement49, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -51797,7 +56301,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -51806,28 +56310,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteMarkedTextElement53, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMarkedTextElement57, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -51836,9 +56340,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -51852,33 +56356,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMarkedTextElement64, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMarkedTextElement69, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -51886,12 +56390,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMarkedTextElement71, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -51908,7 +56412,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -51917,28 +56421,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteMarkedTextElement75, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMarkedTextElement79, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -51947,9 +56451,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -51963,7 +56467,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -51978,49 +56482,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteMarkedTextElement85, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuoteMarkedTextElement87, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonSingleQuoteMarkedTextElement90, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonSingleQuoteMarkedTextElement92, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteMarkedTextElement96, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -52030,12 +56534,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuoteMarkedTextElement100, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -52044,27 +56548,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonSingleQuoteMarkedTextElement106, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -52072,9 +56576,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -52085,44 +56589,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMarkedTextElement111, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuoteMarkedTextElement113, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuoteMarkedTextElement116, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMarkedTextElement120, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -52131,9 +56635,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -52147,33 +56651,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMarkedTextElement127, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMarkedTextElement132, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -52181,12 +56685,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMarkedTextElement134, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -52203,7 +56707,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -52212,28 +56716,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuoteMarkedTextElement138, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMarkedTextElement142, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -52242,9 +56746,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -52258,33 +56762,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuoteMarkedTextElement149, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuoteMarkedTextElement154, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -52292,12 +56796,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuoteMarkedTextElement156, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -52314,7 +56818,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -52323,28 +56827,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuoteMarkedTextElement160, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuoteMarkedTextElement164, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -52353,9 +56857,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -52369,7 +56873,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -52384,10 +56888,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonSingleQuoteMarkedTextElement170, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -52398,7 +56902,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -52407,27 +56911,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonSingleQuoteMarkedTextElement173, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuoteMarkedTextElement177, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -52437,7 +56941,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -52449,10 +56953,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonSingleQuoteMarkedTextElement181, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -52466,63 +56970,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonSingleQuoteMarkedTextElement183, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonSingleQuoteMarkedTextElement185, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonSingleQuoteMarkedTextElement187, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonSingleQuoteMarkedTextElement189, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonSingleQuoteMarkedTextElement191, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonSingleQuoteMarkedTextElement193, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -52530,15 +57034,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -52549,39 +57053,39 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2136, col: 7, offset: 72204}, + pos: position{line: 2196, col: 7, offset: 73967}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 2137, col: 7, offset: 72222}, + pos: position{line: 2197, col: 7, offset: 73985}, name: "QuotedString", }, &ruleRefExpr{ - pos: position{line: 2138, col: 7, offset: 72241}, + pos: position{line: 2198, col: 7, offset: 74004}, name: "QuotedTextInSingleQuoteMarkedText", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonSingleQuoteMarkedTextElement202, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonSingleQuoteMarkedTextElement206, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -52591,7 +57095,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -52600,31 +57104,31 @@ var g = &grammar{ }, }, &charClassMatcher{ - pos: position{line: 2155, col: 5, offset: 72708}, + pos: position{line: 2215, col: 5, offset: 74471}, val: "[^\\r\\n #]", chars: []rune{'\r', '\n', ' ', '#'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 2156, col: 7, offset: 72813}, + pos: position{line: 2216, col: 7, offset: 74576}, run: (*parser).callonSingleQuoteMarkedTextElement211, expr: &seqExpr{ - pos: position{line: 2156, col: 7, offset: 72813}, + pos: position{line: 2216, col: 7, offset: 74576}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2156, col: 7, offset: 72813}, + pos: position{line: 2216, col: 7, offset: 74576}, val: "#", ignoreCase: false, want: "\"#\"", }, &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonSingleQuoteMarkedTextElement214, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -52641,52 +57145,52 @@ var g = &grammar{ }, { name: "QuotedTextInSingleQuoteMarkedText", - pos: position{line: 2142, col: 1, offset: 72346}, + pos: position{line: 2202, col: 1, offset: 74109}, expr: &actionExpr{ - pos: position{line: 2143, col: 5, offset: 72387}, + pos: position{line: 2203, col: 5, offset: 74150}, run: (*parser).callonQuotedTextInSingleQuoteMarkedText1, expr: &seqExpr{ - pos: position{line: 2143, col: 5, offset: 72387}, + pos: position{line: 2203, col: 5, offset: 74150}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2143, col: 5, offset: 72387}, + pos: position{line: 2203, col: 5, offset: 74150}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 2143, col: 16, offset: 72398}, + pos: position{line: 2203, col: 16, offset: 74161}, expr: &ruleRefExpr{ - pos: position{line: 2143, col: 17, offset: 72399}, + pos: position{line: 2203, col: 17, offset: 74162}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 2144, col: 5, offset: 72425}, + pos: position{line: 2204, col: 5, offset: 74188}, label: "text", expr: &choiceExpr{ - pos: position{line: 2145, col: 9, offset: 72440}, + pos: position{line: 2205, col: 9, offset: 74203}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2145, col: 9, offset: 72440}, + pos: position{line: 2205, col: 9, offset: 74203}, name: "DoubleQuoteMarkedText", }, &ruleRefExpr{ - pos: position{line: 2146, col: 11, offset: 72472}, + pos: position{line: 2206, col: 11, offset: 74235}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 2147, col: 11, offset: 72491}, + pos: position{line: 2207, col: 11, offset: 74254}, name: "ItalicText", }, &ruleRefExpr{ - pos: position{line: 2148, col: 11, offset: 72512}, + pos: position{line: 2208, col: 11, offset: 74275}, name: "MonospaceText", }, &ruleRefExpr{ - pos: position{line: 2149, col: 11, offset: 72536}, + pos: position{line: 2209, col: 11, offset: 74299}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 2150, col: 11, offset: 72560}, + pos: position{line: 2210, col: 11, offset: 74323}, name: "SuperscriptText", }, }, @@ -52698,35 +57202,35 @@ var g = &grammar{ }, { name: "EscapedMarkedText", - pos: position{line: 2160, col: 1, offset: 72988}, + pos: position{line: 2220, col: 1, offset: 74751}, expr: &choiceExpr{ - pos: position{line: 2161, col: 5, offset: 73013}, + pos: position{line: 2221, col: 5, offset: 74776}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2161, col: 5, offset: 73013}, + pos: position{line: 2221, col: 5, offset: 74776}, run: (*parser).callonEscapedMarkedText2, expr: &seqExpr{ - pos: position{line: 2161, col: 5, offset: 73013}, + pos: position{line: 2221, col: 5, offset: 74776}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2161, col: 5, offset: 73013}, + pos: position{line: 2221, col: 5, offset: 74776}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, run: (*parser).callonEscapedMarkedText5, expr: &seqExpr{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1663, col: 25, offset: 55543}, + pos: position{line: 1723, col: 25, offset: 57306}, val: "\\\\", ignoreCase: false, want: "\"\\\\\\\\\"", }, &zeroOrMoreExpr{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, expr: &litMatcher{ - pos: position{line: 1663, col: 30, offset: 55548}, + pos: position{line: 1723, col: 30, offset: 57311}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -52737,21 +57241,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2161, col: 40, offset: 73048}, + pos: position{line: 2221, col: 40, offset: 74811}, val: "##", ignoreCase: false, want: "\"##\"", }, &labeledExpr{ - pos: position{line: 2161, col: 45, offset: 73053}, + pos: position{line: 2221, col: 45, offset: 74816}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2161, col: 55, offset: 73063}, + pos: position{line: 2221, col: 55, offset: 74826}, name: "DoubleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2161, col: 86, offset: 73094}, + pos: position{line: 2221, col: 86, offset: 74857}, val: "##", ignoreCase: false, want: "\"##\"", @@ -52760,21 +57264,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2163, col: 9, offset: 73251}, + pos: position{line: 2223, col: 9, offset: 75014}, run: (*parser).callonEscapedMarkedText14, expr: &seqExpr{ - pos: position{line: 2163, col: 9, offset: 73251}, + pos: position{line: 2223, col: 9, offset: 75014}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2163, col: 9, offset: 73251}, + pos: position{line: 2223, col: 9, offset: 75014}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedMarkedText17, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -52783,21 +57287,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2163, col: 44, offset: 73286}, + pos: position{line: 2223, col: 44, offset: 75049}, val: "##", ignoreCase: false, want: "\"##\"", }, &labeledExpr{ - pos: position{line: 2163, col: 49, offset: 73291}, + pos: position{line: 2223, col: 49, offset: 75054}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2163, col: 59, offset: 73301}, + pos: position{line: 2223, col: 59, offset: 75064}, name: "SingleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2163, col: 90, offset: 73332}, + pos: position{line: 2223, col: 90, offset: 75095}, val: "#", ignoreCase: false, want: "\"#\"", @@ -52806,21 +57310,21 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2166, col: 9, offset: 73532}, + pos: position{line: 2226, col: 9, offset: 75295}, run: (*parser).callonEscapedMarkedText24, expr: &seqExpr{ - pos: position{line: 2166, col: 9, offset: 73532}, + pos: position{line: 2226, col: 9, offset: 75295}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2166, col: 9, offset: 73532}, + pos: position{line: 2226, col: 9, offset: 75295}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedMarkedText27, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -52829,21 +57333,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2166, col: 44, offset: 73567}, + pos: position{line: 2226, col: 44, offset: 75330}, val: "#", ignoreCase: false, want: "\"#\"", }, &labeledExpr{ - pos: position{line: 2166, col: 48, offset: 73571}, + pos: position{line: 2226, col: 48, offset: 75334}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2166, col: 58, offset: 73581}, + pos: position{line: 2226, col: 58, offset: 75344}, name: "SingleQuoteMarkedTextElements", }, }, &litMatcher{ - pos: position{line: 2166, col: 89, offset: 73612}, + pos: position{line: 2226, col: 89, offset: 75375}, val: "#", ignoreCase: false, want: "\"#\"", @@ -52856,29 +57360,29 @@ var g = &grammar{ }, { name: "SubscriptText", - pos: position{line: 2173, col: 1, offset: 73924}, + pos: position{line: 2233, col: 1, offset: 75687}, expr: &actionExpr{ - pos: position{line: 2174, col: 5, offset: 73946}, + pos: position{line: 2234, col: 5, offset: 75709}, run: (*parser).callonSubscriptText1, expr: &seqExpr{ - pos: position{line: 2174, col: 5, offset: 73946}, + pos: position{line: 2234, col: 5, offset: 75709}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2180, col: 27, offset: 74161}, + pos: position{line: 2240, col: 27, offset: 75924}, val: "~", ignoreCase: false, want: "\"~\"", }, &labeledExpr{ - pos: position{line: 2175, col: 5, offset: 73973}, + pos: position{line: 2235, col: 5, offset: 75736}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2175, col: 14, offset: 73982}, + pos: position{line: 2235, col: 14, offset: 75745}, name: "SubscriptTextElement", }, }, &litMatcher{ - pos: position{line: 2180, col: 27, offset: 74161}, + pos: position{line: 2240, col: 27, offset: 75924}, val: "~", ignoreCase: false, want: "\"~\"", @@ -52889,21 +57393,21 @@ var g = &grammar{ }, { name: "SubscriptTextElement", - pos: position{line: 2182, col: 1, offset: 74166}, + pos: position{line: 2242, col: 1, offset: 75929}, expr: &choiceExpr{ - pos: position{line: 2182, col: 25, offset: 74190}, + pos: position{line: 2242, col: 25, offset: 75953}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2182, col: 25, offset: 74190}, + pos: position{line: 2242, col: 25, offset: 75953}, name: "QuotedText", }, &actionExpr{ - pos: position{line: 2184, col: 21, offset: 74242}, + pos: position{line: 2244, col: 21, offset: 76005}, run: (*parser).callonSubscriptTextElement3, expr: &oneOrMoreExpr{ - pos: position{line: 2184, col: 21, offset: 74242}, + pos: position{line: 2244, col: 21, offset: 76005}, expr: &charClassMatcher{ - pos: position{line: 2184, col: 21, offset: 74242}, + pos: position{line: 2244, col: 21, offset: 76005}, val: "[^\\r\\n ~]", chars: []rune{'\r', '\n', ' ', '~'}, ignoreCase: false, @@ -52916,23 +57420,23 @@ var g = &grammar{ }, { name: "EscapedSubscriptText", - pos: position{line: 2188, col: 1, offset: 74327}, + pos: position{line: 2248, col: 1, offset: 76090}, expr: &actionExpr{ - pos: position{line: 2189, col: 5, offset: 74356}, + pos: position{line: 2249, col: 5, offset: 76119}, run: (*parser).callonEscapedSubscriptText1, expr: &seqExpr{ - pos: position{line: 2189, col: 5, offset: 74356}, + pos: position{line: 2249, col: 5, offset: 76119}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2189, col: 5, offset: 74356}, + pos: position{line: 2249, col: 5, offset: 76119}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedSubscriptText4, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -52941,21 +57445,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2180, col: 27, offset: 74161}, + pos: position{line: 2240, col: 27, offset: 75924}, val: "~", ignoreCase: false, want: "\"~\"", }, &labeledExpr{ - pos: position{line: 2191, col: 5, offset: 74424}, + pos: position{line: 2251, col: 5, offset: 76187}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2191, col: 14, offset: 74433}, + pos: position{line: 2251, col: 14, offset: 76196}, name: "SubscriptTextElement", }, }, &litMatcher{ - pos: position{line: 2180, col: 27, offset: 74161}, + pos: position{line: 2240, col: 27, offset: 75924}, val: "~", ignoreCase: false, want: "\"~\"", @@ -52966,29 +57470,29 @@ var g = &grammar{ }, { name: "SuperscriptText", - pos: position{line: 2199, col: 1, offset: 74696}, + pos: position{line: 2259, col: 1, offset: 76459}, expr: &actionExpr{ - pos: position{line: 2200, col: 5, offset: 74720}, + pos: position{line: 2260, col: 5, offset: 76483}, run: (*parser).callonSuperscriptText1, expr: &seqExpr{ - pos: position{line: 2200, col: 5, offset: 74720}, + pos: position{line: 2260, col: 5, offset: 76483}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2206, col: 29, offset: 74947}, + pos: position{line: 2266, col: 29, offset: 76710}, val: "^", ignoreCase: false, want: "\"^\"", }, &labeledExpr{ - pos: position{line: 2201, col: 5, offset: 74750}, + pos: position{line: 2261, col: 5, offset: 76513}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2201, col: 14, offset: 74759}, + pos: position{line: 2261, col: 14, offset: 76522}, name: "SuperscriptTextElement", }, }, &litMatcher{ - pos: position{line: 2206, col: 29, offset: 74947}, + pos: position{line: 2266, col: 29, offset: 76710}, val: "^", ignoreCase: false, want: "\"^\"", @@ -52999,21 +57503,21 @@ var g = &grammar{ }, { name: "SuperscriptTextElement", - pos: position{line: 2208, col: 1, offset: 74952}, + pos: position{line: 2268, col: 1, offset: 76715}, expr: &choiceExpr{ - pos: position{line: 2208, col: 27, offset: 74978}, + pos: position{line: 2268, col: 27, offset: 76741}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2208, col: 27, offset: 74978}, + pos: position{line: 2268, col: 27, offset: 76741}, name: "QuotedText", }, &actionExpr{ - pos: position{line: 2210, col: 23, offset: 75034}, + pos: position{line: 2270, col: 23, offset: 76797}, run: (*parser).callonSuperscriptTextElement3, expr: &oneOrMoreExpr{ - pos: position{line: 2210, col: 23, offset: 75034}, + pos: position{line: 2270, col: 23, offset: 76797}, expr: &charClassMatcher{ - pos: position{line: 2210, col: 23, offset: 75034}, + pos: position{line: 2270, col: 23, offset: 76797}, val: "[^\\r\\n ^]", chars: []rune{'\r', '\n', ' ', '^'}, ignoreCase: false, @@ -53026,23 +57530,23 @@ var g = &grammar{ }, { name: "EscapedSuperscriptText", - pos: position{line: 2214, col: 1, offset: 75119}, + pos: position{line: 2274, col: 1, offset: 76882}, expr: &actionExpr{ - pos: position{line: 2215, col: 5, offset: 75150}, + pos: position{line: 2275, col: 5, offset: 76913}, run: (*parser).callonEscapedSuperscriptText1, expr: &seqExpr{ - pos: position{line: 2215, col: 5, offset: 75150}, + pos: position{line: 2275, col: 5, offset: 76913}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2215, col: 5, offset: 75150}, + pos: position{line: 2275, col: 5, offset: 76913}, label: "backslashes", expr: &actionExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, run: (*parser).callonEscapedSuperscriptText4, expr: &oneOrMoreExpr{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, expr: &litMatcher{ - pos: position{line: 1659, col: 25, offset: 55470}, + pos: position{line: 1719, col: 25, offset: 57233}, val: "\\", ignoreCase: false, want: "\"\\\\\"", @@ -53051,21 +57555,21 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2206, col: 29, offset: 74947}, + pos: position{line: 2266, col: 29, offset: 76710}, val: "^", ignoreCase: false, want: "\"^\"", }, &labeledExpr{ - pos: position{line: 2217, col: 5, offset: 75220}, + pos: position{line: 2277, col: 5, offset: 76983}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2217, col: 14, offset: 75229}, + pos: position{line: 2277, col: 14, offset: 76992}, name: "SuperscriptTextElement", }, }, &litMatcher{ - pos: position{line: 2206, col: 29, offset: 74947}, + pos: position{line: 2266, col: 29, offset: 76710}, val: "^", ignoreCase: false, want: "\"^\"", @@ -53076,16 +57580,16 @@ var g = &grammar{ }, { name: "QuotedString", - pos: position{line: 2226, col: 1, offset: 75677}, + pos: position{line: 2286, col: 1, offset: 77440}, expr: &choiceExpr{ - pos: position{line: 2226, col: 17, offset: 75693}, + pos: position{line: 2286, col: 17, offset: 77456}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2226, col: 17, offset: 75693}, + pos: position{line: 2286, col: 17, offset: 77456}, name: "SingleQuotedString", }, &ruleRefExpr{ - pos: position{line: 2226, col: 38, offset: 75714}, + pos: position{line: 2286, col: 38, offset: 77477}, name: "DoubleQuotedString", }, }, @@ -53093,23 +57597,23 @@ var g = &grammar{ }, { name: "SingleQuotedString", - pos: position{line: 2228, col: 1, offset: 75734}, + pos: position{line: 2288, col: 1, offset: 77497}, expr: &actionExpr{ - pos: position{line: 2229, col: 5, offset: 75761}, + pos: position{line: 2289, col: 5, offset: 77524}, run: (*parser).callonSingleQuotedString1, expr: &seqExpr{ - pos: position{line: 2229, col: 5, offset: 75761}, + pos: position{line: 2289, col: 5, offset: 77524}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2241, col: 27, offset: 76136}, + pos: position{line: 2301, col: 27, offset: 77899}, val: "'`", ignoreCase: false, want: "\"'`\"", }, ¬Expr{ - pos: position{line: 2241, col: 32, offset: 76141}, + pos: position{line: 2301, col: 32, offset: 77904}, expr: &charClassMatcher{ - pos: position{line: 2241, col: 33, offset: 76142}, + pos: position{line: 2301, col: 33, offset: 77905}, val: "[ \\t\\r\\n]", chars: []rune{' ', '\t', '\r', '\n'}, ignoreCase: false, @@ -53117,15 +57621,15 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2230, col: 5, offset: 75789}, + pos: position{line: 2290, col: 5, offset: 77552}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2230, col: 14, offset: 75798}, + pos: position{line: 2290, col: 14, offset: 77561}, name: "SingleQuotedStringElements", }, }, &litMatcher{ - pos: position{line: 2243, col: 25, offset: 76177}, + pos: position{line: 2303, col: 25, offset: 77940}, val: "`'", ignoreCase: false, want: "\"`'\"", @@ -53136,17 +57640,17 @@ var g = &grammar{ }, { name: "SingleQuotedStringElements", - pos: position{line: 2235, col: 1, offset: 75942}, + pos: position{line: 2295, col: 1, offset: 77705}, expr: &actionExpr{ - pos: position{line: 2236, col: 5, offset: 75977}, + pos: position{line: 2296, col: 5, offset: 77740}, run: (*parser).callonSingleQuotedStringElements1, expr: &labeledExpr{ - pos: position{line: 2236, col: 5, offset: 75977}, + pos: position{line: 2296, col: 5, offset: 77740}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2236, col: 14, offset: 75986}, + pos: position{line: 2296, col: 14, offset: 77749}, expr: &ruleRefExpr{ - pos: position{line: 2236, col: 15, offset: 75987}, + pos: position{line: 2296, col: 15, offset: 77750}, name: "SingleQuotedStringElement", }, }, @@ -53155,38 +57659,38 @@ var g = &grammar{ }, { name: "SingleQuotedStringElement", - pos: position{line: 2250, col: 1, offset: 76390}, + pos: position{line: 2310, col: 1, offset: 78153}, expr: &actionExpr{ - pos: position{line: 2251, col: 5, offset: 76424}, + pos: position{line: 2311, col: 5, offset: 78187}, run: (*parser).callonSingleQuotedStringElement1, expr: &seqExpr{ - pos: position{line: 2251, col: 5, offset: 76424}, + pos: position{line: 2311, col: 5, offset: 78187}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2251, col: 5, offset: 76424}, + pos: position{line: 2311, col: 5, offset: 78187}, expr: &litMatcher{ - pos: position{line: 2243, col: 25, offset: 76177}, + pos: position{line: 2303, col: 25, offset: 77940}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &labeledExpr{ - pos: position{line: 2252, col: 5, offset: 76450}, + pos: position{line: 2312, col: 5, offset: 78213}, label: "element", expr: &choiceExpr{ - pos: position{line: 2253, col: 9, offset: 76468}, + pos: position{line: 2313, col: 9, offset: 78231}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, run: (*parser).callonSingleQuotedStringElement7, expr: &seqExpr{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, expr: &charClassMatcher{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -53195,15 +57699,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2245, col: 31, offset: 76213}, + pos: position{line: 2305, col: 31, offset: 77976}, expr: &choiceExpr{ - pos: position{line: 2245, col: 33, offset: 76215}, + pos: position{line: 2305, col: 33, offset: 77978}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuotedStringElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -53211,7 +57715,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2243, col: 25, offset: 76177}, + pos: position{line: 2303, col: 25, offset: 77940}, val: "`'", ignoreCase: false, want: "\"`'\"", @@ -53223,13 +57727,13 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2254, col: 11, offset: 76495}, + pos: position{line: 2314, col: 11, offset: 78258}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuotedStringElement17, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -53237,9 +57741,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2254, col: 17, offset: 76501}, + pos: position{line: 2314, col: 17, offset: 78264}, expr: &litMatcher{ - pos: position{line: 2243, col: 25, offset: 76177}, + pos: position{line: 2303, col: 25, offset: 77940}, val: "`'", ignoreCase: false, want: "\"`'\"", @@ -53248,28 +57752,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2255, col: 11, offset: 76533}, + pos: position{line: 2315, col: 11, offset: 78296}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuotedStringElement22, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -53278,27 +57782,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2255, col: 19, offset: 76541}, + pos: position{line: 2315, col: 19, offset: 78304}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuotedStringElement28, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -53310,44 +57814,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuotedStringElement33, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuotedStringElement35, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuotedStringElement38, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuotedStringElement42, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -53356,9 +57860,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -53372,33 +57876,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuotedStringElement49, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuotedStringElement54, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -53406,12 +57910,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuotedStringElement56, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -53428,7 +57932,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -53437,28 +57941,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuotedStringElement60, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuotedStringElement64, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -53467,9 +57971,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -53483,33 +57987,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuotedStringElement71, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuotedStringElement76, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -53517,12 +58021,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuotedStringElement78, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -53539,7 +58043,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -53548,28 +58052,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuotedStringElement82, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuotedStringElement86, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -53578,9 +58082,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -53594,7 +58098,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -53609,49 +58113,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuotedStringElement92, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSingleQuotedStringElement94, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonSingleQuotedStringElement97, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonSingleQuotedStringElement99, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuotedStringElement103, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -53661,12 +58165,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuotedStringElement107, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -53675,27 +58179,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonSingleQuotedStringElement113, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -53703,9 +58207,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -53716,44 +58220,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuotedStringElement118, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSingleQuotedStringElement120, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSingleQuotedStringElement123, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuotedStringElement127, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -53762,9 +58266,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -53778,33 +58282,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuotedStringElement134, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuotedStringElement139, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -53812,12 +58316,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuotedStringElement141, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -53834,7 +58338,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -53843,28 +58347,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSingleQuotedStringElement145, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuotedStringElement149, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -53873,9 +58377,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -53889,33 +58393,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSingleQuotedStringElement156, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSingleQuotedStringElement161, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -53923,12 +58427,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSingleQuotedStringElement163, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -53945,7 +58449,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -53954,28 +58458,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSingleQuotedStringElement167, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSingleQuotedStringElement171, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -53984,9 +58488,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -54000,7 +58504,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -54015,10 +58519,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonSingleQuotedStringElement177, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -54029,7 +58533,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -54038,27 +58542,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonSingleQuotedStringElement180, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSingleQuotedStringElement184, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -54068,7 +58572,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -54080,10 +58584,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonSingleQuotedStringElement188, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -54097,35 +58601,35 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2258, col: 11, offset: 76653}, + pos: position{line: 2318, col: 11, offset: 78416}, name: "InlineMacro", }, &seqExpr{ - pos: position{line: 2259, col: 11, offset: 76675}, + pos: position{line: 2319, col: 11, offset: 78438}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonSingleQuotedStringElement192, expr: &seqExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonSingleQuotedStringElement194, }, &litMatcher{ - pos: position{line: 921, col: 5, offset: 29529}, + pos: position{line: 1076, col: 5, offset: 34461}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 921, col: 9, offset: 29533}, + pos: position{line: 1076, col: 9, offset: 34465}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSingleQuotedStringElement197, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -54134,30 +58638,30 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 921, col: 16, offset: 29540}, + pos: position{line: 1076, col: 16, offset: 34472}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSingleQuotedStringElement201, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -54166,9 +58670,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -54178,9 +58682,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2259, col: 21, offset: 76685}, + pos: position{line: 2319, col: 21, offset: 78448}, expr: &litMatcher{ - pos: position{line: 2243, col: 25, offset: 76177}, + pos: position{line: 2303, col: 25, offset: 77940}, val: "`'", ignoreCase: false, want: "\"`'\"", @@ -54189,63 +58693,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonSingleQuotedStringElement210, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonSingleQuotedStringElement212, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonSingleQuotedStringElement214, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonSingleQuotedStringElement216, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonSingleQuotedStringElement218, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonSingleQuotedStringElement220, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -54253,15 +58757,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -54272,36 +58776,36 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2261, col: 11, offset: 76734}, + pos: position{line: 2321, col: 11, offset: 78497}, name: "QuotedTextInSingleQuotedString", }, &ruleRefExpr{ - pos: position{line: 2262, col: 11, offset: 76775}, + pos: position{line: 2322, col: 11, offset: 78538}, name: "DoubleQuotedString", }, &charClassMatcher{ - pos: position{line: 2280, col: 41, offset: 77293}, + pos: position{line: 2340, col: 41, offset: 79056}, val: "[^\\r\\n\\t `]", chars: []rune{'\r', '\n', '\t', ' ', '`'}, ignoreCase: false, inverted: true, }, &actionExpr{ - pos: position{line: 2280, col: 55, offset: 77307}, + pos: position{line: 2340, col: 55, offset: 79070}, run: (*parser).callonSingleQuotedStringElement229, expr: &seqExpr{ - pos: position{line: 2280, col: 55, offset: 77307}, + pos: position{line: 2340, col: 55, offset: 79070}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2280, col: 55, offset: 77307}, + pos: position{line: 2340, col: 55, offset: 79070}, val: "`", ignoreCase: false, want: "\"`\"", }, ¬Expr{ - pos: position{line: 2280, col: 59, offset: 77311}, + pos: position{line: 2340, col: 59, offset: 79074}, expr: &litMatcher{ - pos: position{line: 2280, col: 60, offset: 77312}, + pos: position{line: 2340, col: 60, offset: 79075}, val: "'", ignoreCase: false, want: "\"'\"", @@ -54319,58 +58823,58 @@ var g = &grammar{ }, { name: "QuotedTextInSingleQuotedString", - pos: position{line: 2269, col: 1, offset: 76919}, + pos: position{line: 2329, col: 1, offset: 78682}, expr: &actionExpr{ - pos: position{line: 2270, col: 5, offset: 76957}, + pos: position{line: 2330, col: 5, offset: 78720}, run: (*parser).callonQuotedTextInSingleQuotedString1, expr: &seqExpr{ - pos: position{line: 2270, col: 5, offset: 76957}, + pos: position{line: 2330, col: 5, offset: 78720}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2270, col: 5, offset: 76957}, + pos: position{line: 2330, col: 5, offset: 78720}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 2270, col: 16, offset: 76968}, + pos: position{line: 2330, col: 16, offset: 78731}, expr: &ruleRefExpr{ - pos: position{line: 2270, col: 17, offset: 76969}, + pos: position{line: 2330, col: 17, offset: 78732}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 2271, col: 5, offset: 76995}, + pos: position{line: 2331, col: 5, offset: 78758}, label: "text", expr: &choiceExpr{ - pos: position{line: 2271, col: 11, offset: 77001}, + pos: position{line: 2331, col: 11, offset: 78764}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2271, col: 11, offset: 77001}, + pos: position{line: 2331, col: 11, offset: 78764}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 2272, col: 11, offset: 77020}, + pos: position{line: 2332, col: 11, offset: 78783}, name: "ItalicText", }, &actionExpr{ - pos: position{line: 2273, col: 12, offset: 77042}, + pos: position{line: 2333, col: 12, offset: 78805}, run: (*parser).callonQuotedTextInSingleQuotedString10, expr: &seqExpr{ - pos: position{line: 2273, col: 12, offset: 77042}, + pos: position{line: 2333, col: 12, offset: 78805}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2273, col: 12, offset: 77042}, + pos: position{line: 2333, col: 12, offset: 78805}, expr: &litMatcher{ - pos: position{line: 2273, col: 13, offset: 77043}, + pos: position{line: 2333, col: 13, offset: 78806}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &labeledExpr{ - pos: position{line: 2273, col: 18, offset: 77048}, + pos: position{line: 2333, col: 18, offset: 78811}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2273, col: 27, offset: 77057}, + pos: position{line: 2333, col: 27, offset: 78820}, name: "MonospaceText", }, }, @@ -54378,15 +58882,15 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2274, col: 11, offset: 77106}, + pos: position{line: 2334, col: 11, offset: 78869}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 2275, col: 11, offset: 77130}, + pos: position{line: 2335, col: 11, offset: 78893}, name: "SuperscriptText", }, &ruleRefExpr{ - pos: position{line: 2276, col: 11, offset: 77156}, + pos: position{line: 2336, col: 11, offset: 78919}, name: "MarkedText", }, }, @@ -54398,23 +58902,23 @@ var g = &grammar{ }, { name: "DoubleQuotedString", - pos: position{line: 2284, col: 1, offset: 77384}, + pos: position{line: 2344, col: 1, offset: 79147}, expr: &actionExpr{ - pos: position{line: 2284, col: 23, offset: 77406}, + pos: position{line: 2344, col: 23, offset: 79169}, run: (*parser).callonDoubleQuotedString1, expr: &seqExpr{ - pos: position{line: 2284, col: 23, offset: 77406}, + pos: position{line: 2344, col: 23, offset: 79169}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2323, col: 27, offset: 78712}, + pos: position{line: 2383, col: 27, offset: 80475}, val: "\"`", ignoreCase: false, want: "\"\\\"`\"", }, ¬Expr{ - pos: position{line: 2323, col: 33, offset: 78718}, + pos: position{line: 2383, col: 33, offset: 80481}, expr: &charClassMatcher{ - pos: position{line: 2323, col: 34, offset: 78719}, + pos: position{line: 2383, col: 34, offset: 80482}, val: "[ \\t\\r\\n]", chars: []rune{' ', '\t', '\r', '\n'}, ignoreCase: false, @@ -54422,15 +58926,15 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2284, col: 46, offset: 77429}, + pos: position{line: 2344, col: 46, offset: 79192}, label: "elements", expr: &ruleRefExpr{ - pos: position{line: 2284, col: 55, offset: 77438}, + pos: position{line: 2344, col: 55, offset: 79201}, name: "DoubleQuotedStringElements", }, }, &litMatcher{ - pos: position{line: 2325, col: 25, offset: 78754}, + pos: position{line: 2385, col: 25, offset: 80517}, val: "`\"", ignoreCase: false, want: "\"`\\\"\"", @@ -54441,17 +58945,17 @@ var g = &grammar{ }, { name: "DoubleQuotedStringElements", - pos: position{line: 2288, col: 1, offset: 77577}, + pos: position{line: 2348, col: 1, offset: 79340}, expr: &actionExpr{ - pos: position{line: 2288, col: 31, offset: 77607}, + pos: position{line: 2348, col: 31, offset: 79370}, run: (*parser).callonDoubleQuotedStringElements1, expr: &labeledExpr{ - pos: position{line: 2288, col: 31, offset: 77607}, + pos: position{line: 2348, col: 31, offset: 79370}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2288, col: 41, offset: 77617}, + pos: position{line: 2348, col: 41, offset: 79380}, expr: &ruleRefExpr{ - pos: position{line: 2288, col: 41, offset: 77617}, + pos: position{line: 2348, col: 41, offset: 79380}, name: "DoubleQuotedStringElement", }, }, @@ -54460,38 +58964,38 @@ var g = &grammar{ }, { name: "DoubleQuotedStringElement", - pos: position{line: 2294, col: 1, offset: 77822}, + pos: position{line: 2354, col: 1, offset: 79585}, expr: &actionExpr{ - pos: position{line: 2295, col: 5, offset: 77856}, + pos: position{line: 2355, col: 5, offset: 79619}, run: (*parser).callonDoubleQuotedStringElement1, expr: &seqExpr{ - pos: position{line: 2295, col: 5, offset: 77856}, + pos: position{line: 2355, col: 5, offset: 79619}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2295, col: 5, offset: 77856}, + pos: position{line: 2355, col: 5, offset: 79619}, expr: &litMatcher{ - pos: position{line: 2325, col: 25, offset: 78754}, + pos: position{line: 2385, col: 25, offset: 80517}, val: "`\"", ignoreCase: false, want: "\"`\\\"\"", }, }, &labeledExpr{ - pos: position{line: 2296, col: 5, offset: 77882}, + pos: position{line: 2356, col: 5, offset: 79645}, label: "element", expr: &choiceExpr{ - pos: position{line: 2297, col: 9, offset: 77900}, + pos: position{line: 2357, col: 9, offset: 79663}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, run: (*parser).callonDoubleQuotedStringElement7, expr: &seqExpr{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, expr: &charClassMatcher{ - pos: position{line: 2245, col: 21, offset: 76203}, + pos: position{line: 2305, col: 21, offset: 77966}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -54500,15 +59004,15 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2245, col: 31, offset: 76213}, + pos: position{line: 2305, col: 31, offset: 77976}, expr: &choiceExpr{ - pos: position{line: 2245, col: 33, offset: 76215}, + pos: position{line: 2305, col: 33, offset: 77978}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuotedStringElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -54516,7 +59020,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2243, col: 25, offset: 76177}, + pos: position{line: 2303, col: 25, offset: 77940}, val: "`'", ignoreCase: false, want: "\"`'\"", @@ -54528,13 +59032,13 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2298, col: 11, offset: 77927}, + pos: position{line: 2358, col: 11, offset: 79690}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuotedStringElement17, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -54542,9 +59046,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2298, col: 17, offset: 77933}, + pos: position{line: 2358, col: 17, offset: 79696}, expr: &litMatcher{ - pos: position{line: 2325, col: 25, offset: 78754}, + pos: position{line: 2385, col: 25, offset: 80517}, val: "`\"", ignoreCase: false, want: "\"`\\\"\"", @@ -54553,28 +59057,28 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2299, col: 11, offset: 77965}, + pos: position{line: 2359, col: 11, offset: 79728}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuotedStringElement22, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -54583,27 +59087,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2299, col: 19, offset: 77973}, + pos: position{line: 2359, col: 19, offset: 79736}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuotedStringElement28, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -54615,31 +59119,31 @@ var g = &grammar{ }, }, &seqExpr{ - pos: position{line: 2300, col: 11, offset: 78026}, + pos: position{line: 2360, col: 11, offset: 79789}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonDoubleQuotedStringElement34, expr: &seqExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonDoubleQuotedStringElement36, }, &litMatcher{ - pos: position{line: 921, col: 5, offset: 29529}, + pos: position{line: 1076, col: 5, offset: 34461}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 921, col: 9, offset: 29533}, + pos: position{line: 1076, col: 9, offset: 34465}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuotedStringElement39, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -54648,30 +59152,30 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 921, col: 16, offset: 29540}, + pos: position{line: 1076, col: 16, offset: 34472}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonDoubleQuotedStringElement43, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -54680,9 +59184,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -54692,9 +59196,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2300, col: 21, offset: 78036}, + pos: position{line: 2360, col: 21, offset: 79799}, expr: &litMatcher{ - pos: position{line: 2243, col: 25, offset: 76177}, + pos: position{line: 2303, col: 25, offset: 77940}, val: "`'", ignoreCase: false, want: "\"`'\"", @@ -54703,44 +59207,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuotedStringElement52, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuotedStringElement54, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuotedStringElement57, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuotedStringElement61, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -54749,9 +59253,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -54765,33 +59269,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuotedStringElement68, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuotedStringElement73, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -54799,12 +59303,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuotedStringElement75, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -54821,7 +59325,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -54830,28 +59334,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuotedStringElement79, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuotedStringElement83, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -54860,9 +59364,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -54876,33 +59380,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuotedStringElement90, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuotedStringElement95, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -54910,12 +59414,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuotedStringElement97, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -54932,7 +59436,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -54941,28 +59445,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuotedStringElement101, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuotedStringElement105, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -54971,9 +59475,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -54987,7 +59491,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -55002,49 +59506,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuotedStringElement111, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonDoubleQuotedStringElement113, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonDoubleQuotedStringElement116, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonDoubleQuotedStringElement118, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuotedStringElement122, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -55054,12 +59558,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonDoubleQuotedStringElement126, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -55068,27 +59572,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonDoubleQuotedStringElement132, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -55096,9 +59600,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -55109,44 +59613,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuotedStringElement137, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonDoubleQuotedStringElement139, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonDoubleQuotedStringElement142, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuotedStringElement146, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -55155,9 +59659,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -55171,33 +59675,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuotedStringElement153, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuotedStringElement158, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -55205,12 +59709,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuotedStringElement160, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -55227,7 +59731,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -55236,28 +59740,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonDoubleQuotedStringElement164, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuotedStringElement168, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -55266,9 +59770,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -55282,33 +59786,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonDoubleQuotedStringElement175, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonDoubleQuotedStringElement180, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -55316,12 +59820,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonDoubleQuotedStringElement182, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -55338,7 +59842,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -55347,28 +59851,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonDoubleQuotedStringElement186, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonDoubleQuotedStringElement190, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -55377,9 +59881,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -55393,7 +59897,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -55408,10 +59912,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonDoubleQuotedStringElement196, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -55422,7 +59926,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -55431,27 +59935,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonDoubleQuotedStringElement199, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonDoubleQuotedStringElement203, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -55461,7 +59965,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -55473,10 +59977,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonDoubleQuotedStringElement207, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -55490,43 +59994,43 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2303, col: 11, offset: 78128}, + pos: position{line: 2363, col: 11, offset: 79891}, name: "InlineMacro", }, &ruleRefExpr{ - pos: position{line: 2304, col: 11, offset: 78150}, + pos: position{line: 2364, col: 11, offset: 79913}, name: "QuotedTextInDoubleQuotedString", }, &ruleRefExpr{ - pos: position{line: 2305, col: 11, offset: 78191}, + pos: position{line: 2365, col: 11, offset: 79954}, name: "SingleQuotedString", }, &actionExpr{ - pos: position{line: 2327, col: 41, offset: 78801}, + pos: position{line: 2387, col: 41, offset: 80564}, run: (*parser).callonDoubleQuotedStringElement212, expr: &choiceExpr{ - pos: position{line: 2327, col: 42, offset: 78802}, + pos: position{line: 2387, col: 42, offset: 80565}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2327, col: 42, offset: 78802}, + pos: position{line: 2387, col: 42, offset: 80565}, val: "[^\\r\\n\\t `]", chars: []rune{'\r', '\n', '\t', ' ', '`'}, ignoreCase: false, inverted: true, }, &seqExpr{ - pos: position{line: 2327, col: 56, offset: 78816}, + pos: position{line: 2387, col: 56, offset: 80579}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 2327, col: 56, offset: 78816}, + pos: position{line: 2387, col: 56, offset: 80579}, val: "`", ignoreCase: false, want: "\"`\"", }, ¬Expr{ - pos: position{line: 2327, col: 60, offset: 78820}, + pos: position{line: 2387, col: 60, offset: 80583}, expr: &litMatcher{ - pos: position{line: 2327, col: 61, offset: 78821}, + pos: position{line: 2387, col: 61, offset: 80584}, val: "\"", ignoreCase: false, want: "\"\\\"\"", @@ -55546,58 +60050,58 @@ var g = &grammar{ }, { name: "QuotedTextInDoubleQuotedString", - pos: position{line: 2311, col: 1, offset: 78342}, + pos: position{line: 2371, col: 1, offset: 80105}, expr: &actionExpr{ - pos: position{line: 2312, col: 5, offset: 78380}, + pos: position{line: 2372, col: 5, offset: 80143}, run: (*parser).callonQuotedTextInDoubleQuotedString1, expr: &seqExpr{ - pos: position{line: 2312, col: 5, offset: 78380}, + pos: position{line: 2372, col: 5, offset: 80143}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2312, col: 5, offset: 78380}, + pos: position{line: 2372, col: 5, offset: 80143}, label: "attributes", expr: &zeroOrOneExpr{ - pos: position{line: 2312, col: 16, offset: 78391}, + pos: position{line: 2372, col: 16, offset: 80154}, expr: &ruleRefExpr{ - pos: position{line: 2312, col: 17, offset: 78392}, + pos: position{line: 2372, col: 17, offset: 80155}, name: "LongHandAttributes", }, }, }, &labeledExpr{ - pos: position{line: 2313, col: 5, offset: 78418}, + pos: position{line: 2373, col: 5, offset: 80181}, label: "text", expr: &choiceExpr{ - pos: position{line: 2314, col: 9, offset: 78433}, + pos: position{line: 2374, col: 9, offset: 80196}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2314, col: 9, offset: 78433}, + pos: position{line: 2374, col: 9, offset: 80196}, name: "BoldText", }, &ruleRefExpr{ - pos: position{line: 2315, col: 11, offset: 78452}, + pos: position{line: 2375, col: 11, offset: 80215}, name: "ItalicText", }, &actionExpr{ - pos: position{line: 2316, col: 12, offset: 78474}, + pos: position{line: 2376, col: 12, offset: 80237}, run: (*parser).callonQuotedTextInDoubleQuotedString10, expr: &seqExpr{ - pos: position{line: 2316, col: 12, offset: 78474}, + pos: position{line: 2376, col: 12, offset: 80237}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2316, col: 12, offset: 78474}, + pos: position{line: 2376, col: 12, offset: 80237}, expr: &litMatcher{ - pos: position{line: 2316, col: 13, offset: 78475}, + pos: position{line: 2376, col: 13, offset: 80238}, val: "`\"", ignoreCase: false, want: "\"`\\\"\"", }, }, &labeledExpr{ - pos: position{line: 2316, col: 19, offset: 78481}, + pos: position{line: 2376, col: 19, offset: 80244}, label: "element", expr: &ruleRefExpr{ - pos: position{line: 2316, col: 28, offset: 78490}, + pos: position{line: 2376, col: 28, offset: 80253}, name: "MonospaceText", }, }, @@ -55605,15 +60109,15 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2317, col: 11, offset: 78539}, + pos: position{line: 2377, col: 11, offset: 80302}, name: "SubscriptText", }, &ruleRefExpr{ - pos: position{line: 2318, col: 11, offset: 78563}, + pos: position{line: 2378, col: 11, offset: 80326}, name: "SuperscriptText", }, &ruleRefExpr{ - pos: position{line: 2319, col: 11, offset: 78589}, + pos: position{line: 2379, col: 11, offset: 80352}, name: "MarkedText", }, }, @@ -55625,28 +60129,28 @@ var g = &grammar{ }, { name: "AttributesGroup", - pos: position{line: 2362, col: 1, offset: 80059}, + pos: position{line: 2422, col: 1, offset: 81813}, expr: &actionExpr{ - pos: position{line: 2362, col: 20, offset: 80078}, + pos: position{line: 2422, col: 20, offset: 81832}, run: (*parser).callonAttributesGroup1, expr: &seqExpr{ - pos: position{line: 2362, col: 20, offset: 80078}, + pos: position{line: 2422, col: 20, offset: 81832}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2362, col: 20, offset: 80078}, + pos: position{line: 2422, col: 20, offset: 81832}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2362, col: 29, offset: 80087}, + pos: position{line: 2422, col: 29, offset: 81841}, expr: &choiceExpr{ - pos: position{line: 2363, col: 5, offset: 80093}, + pos: position{line: 2423, col: 5, offset: 81847}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, run: (*parser).callonAttributesGroup6, expr: &oneOrMoreExpr{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, expr: &charClassMatcher{ - pos: position{line: 2790, col: 14, offset: 92796}, + pos: position{line: 2850, col: 14, offset: 94550}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -55656,10 +60160,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonAttributesGroup9, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -55667,49 +60171,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonAttributesGroup11, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonAttributesGroup13, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonAttributesGroup16, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonAttributesGroup18, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonAttributesGroup22, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -55719,12 +60223,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonAttributesGroup26, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -55733,27 +60237,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonAttributesGroup32, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -55761,9 +60265,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -55774,44 +60278,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonAttributesGroup37, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonAttributesGroup39, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonAttributesGroup42, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonAttributesGroup46, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -55820,9 +60324,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -55836,33 +60340,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonAttributesGroup53, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonAttributesGroup58, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -55870,12 +60374,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonAttributesGroup60, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -55892,7 +60396,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -55901,28 +60405,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonAttributesGroup64, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonAttributesGroup68, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -55931,9 +60435,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -55947,33 +60451,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonAttributesGroup75, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonAttributesGroup80, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -55981,12 +60485,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonAttributesGroup82, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -56003,7 +60507,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56012,28 +60516,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonAttributesGroup86, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonAttributesGroup90, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -56042,9 +60546,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -56058,7 +60562,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56073,10 +60577,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonAttributesGroup96, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -56087,7 +60591,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -56096,27 +60600,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonAttributesGroup99, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonAttributesGroup103, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -56126,7 +60630,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -56138,10 +60642,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonAttributesGroup107, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -56155,52 +60659,52 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2366, col: 7, offset: 80144}, + pos: position{line: 2426, col: 7, offset: 81898}, name: "Quote", }, &ruleRefExpr{ - pos: position{line: 2367, col: 7, offset: 80156}, + pos: position{line: 2427, col: 7, offset: 81910}, name: "InlinePassthrough", }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonAttributesGroup111, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonAttributesGroup113, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonAttributesGroup116, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonAttributesGroup120, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -56209,9 +60713,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -56225,33 +60729,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonAttributesGroup127, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonAttributesGroup132, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -56259,12 +60763,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonAttributesGroup134, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -56281,7 +60785,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56290,28 +60794,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonAttributesGroup138, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonAttributesGroup142, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -56320,9 +60824,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -56336,33 +60840,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonAttributesGroup149, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonAttributesGroup154, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -56370,12 +60874,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonAttributesGroup156, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -56392,7 +60896,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56401,28 +60905,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonAttributesGroup160, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonAttributesGroup164, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -56431,9 +60935,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -56447,7 +60951,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56462,27 +60966,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonAttributesGroup170, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonAttributesGroup174, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -56492,7 +60996,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -56501,10 +61005,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonAttributesGroup178, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -56512,9 +61016,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -56523,31 +61027,31 @@ var g = &grammar{ }, { name: "ElementAttributesGroup", - pos: position{line: 2375, col: 1, offset: 80435}, + pos: position{line: 2435, col: 1, offset: 82189}, expr: &actionExpr{ - pos: position{line: 2375, col: 27, offset: 80461}, + pos: position{line: 2435, col: 27, offset: 82215}, run: (*parser).callonElementAttributesGroup1, expr: &seqExpr{ - pos: position{line: 2375, col: 27, offset: 80461}, + pos: position{line: 2435, col: 27, offset: 82215}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2375, col: 27, offset: 80461}, + pos: position{line: 2435, col: 27, offset: 82215}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2375, col: 36, offset: 80470}, + pos: position{line: 2435, col: 36, offset: 82224}, expr: &choiceExpr{ - pos: position{line: 2376, col: 5, offset: 80476}, + pos: position{line: 2436, col: 5, offset: 82230}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonElementAttributesGroup6, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -56557,13 +61061,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonElementAttributesGroup11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -56571,37 +61075,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonElementAttributesGroup16, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -56610,9 +61114,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -56624,10 +61128,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonElementAttributesGroup23, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -56635,44 +61139,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonElementAttributesGroup25, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonElementAttributesGroup27, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonElementAttributesGroup30, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonElementAttributesGroup34, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -56681,9 +61185,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -56697,33 +61201,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonElementAttributesGroup41, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonElementAttributesGroup46, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -56731,12 +61235,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonElementAttributesGroup48, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -56753,7 +61257,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56762,28 +61266,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonElementAttributesGroup52, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonElementAttributesGroup56, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -56792,9 +61296,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -56808,33 +61312,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonElementAttributesGroup63, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonElementAttributesGroup68, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -56842,12 +61346,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonElementAttributesGroup70, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -56864,7 +61368,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56873,28 +61377,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonElementAttributesGroup74, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonElementAttributesGroup78, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -56903,9 +61407,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -56919,7 +61423,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -56934,53 +61438,53 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2379, col: 7, offset: 80533}, + pos: position{line: 2439, col: 7, offset: 82287}, name: "Quote", }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonElementAttributesGroup85, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonElementAttributesGroup87, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonElementAttributesGroup90, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonElementAttributesGroup92, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonElementAttributesGroup96, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -56990,12 +61494,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonElementAttributesGroup100, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -57004,27 +61508,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonElementAttributesGroup106, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -57032,9 +61536,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -57045,44 +61549,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonElementAttributesGroup111, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonElementAttributesGroup113, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonElementAttributesGroup116, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonElementAttributesGroup120, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -57091,9 +61595,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -57107,33 +61611,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonElementAttributesGroup127, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonElementAttributesGroup132, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -57141,12 +61645,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonElementAttributesGroup134, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -57163,7 +61667,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -57172,28 +61676,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonElementAttributesGroup138, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonElementAttributesGroup142, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -57202,9 +61706,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -57218,33 +61722,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonElementAttributesGroup149, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonElementAttributesGroup154, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -57252,12 +61756,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonElementAttributesGroup156, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -57274,7 +61778,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -57283,28 +61787,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonElementAttributesGroup160, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonElementAttributesGroup164, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -57313,9 +61817,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -57329,7 +61833,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -57344,10 +61848,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonElementAttributesGroup170, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -57358,7 +61862,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -57367,27 +61871,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonElementAttributesGroup173, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonElementAttributesGroup177, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -57397,7 +61901,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -57409,10 +61913,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonElementAttributesGroup181, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -57426,27 +61930,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonElementAttributesGroup183, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonElementAttributesGroup187, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -57456,7 +61960,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -57465,10 +61969,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonElementAttributesGroup191, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -57476,9 +61980,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -57487,28 +61991,28 @@ var g = &grammar{ }, { name: "HeaderGroup", - pos: position{line: 2387, col: 1, offset: 80798}, + pos: position{line: 2447, col: 1, offset: 82552}, expr: &actionExpr{ - pos: position{line: 2388, col: 5, offset: 80818}, + pos: position{line: 2448, col: 5, offset: 82572}, run: (*parser).callonHeaderGroup1, expr: &seqExpr{ - pos: position{line: 2388, col: 5, offset: 80818}, + pos: position{line: 2448, col: 5, offset: 82572}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2388, col: 5, offset: 80818}, + pos: position{line: 2448, col: 5, offset: 82572}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2388, col: 14, offset: 80827}, + pos: position{line: 2448, col: 14, offset: 82581}, expr: &ruleRefExpr{ - pos: position{line: 2388, col: 15, offset: 80828}, + pos: position{line: 2448, col: 15, offset: 82582}, name: "HeaderGroupElement", }, }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -57517,38 +62021,38 @@ var g = &grammar{ }, { name: "HeaderGroupElement", - pos: position{line: 2392, col: 1, offset: 80912}, + pos: position{line: 2452, col: 1, offset: 82666}, expr: &actionExpr{ - pos: position{line: 2393, col: 5, offset: 80938}, + pos: position{line: 2453, col: 5, offset: 82692}, run: (*parser).callonHeaderGroupElement1, expr: &seqExpr{ - pos: position{line: 2393, col: 5, offset: 80938}, + pos: position{line: 2453, col: 5, offset: 82692}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2393, col: 5, offset: 80938}, + pos: position{line: 2453, col: 5, offset: 82692}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &labeledExpr{ - pos: position{line: 2394, col: 5, offset: 80947}, + pos: position{line: 2454, col: 5, offset: 82701}, label: "element", expr: &choiceExpr{ - pos: position{line: 2395, col: 9, offset: 80965}, + pos: position{line: 2455, col: 9, offset: 82719}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonHeaderGroupElement8, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -57558,13 +62062,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonHeaderGroupElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -57572,37 +62076,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonHeaderGroupElement18, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -57611,9 +62115,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -57625,10 +62129,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonHeaderGroupElement25, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -57636,53 +62140,53 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2397, col: 11, offset: 81002}, + pos: position{line: 2457, col: 11, offset: 82756}, name: "InlinePassthrough", }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonHeaderGroupElement28, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonHeaderGroupElement30, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonHeaderGroupElement33, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonHeaderGroupElement35, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonHeaderGroupElement39, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -57692,12 +62196,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonHeaderGroupElement43, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -57706,27 +62210,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonHeaderGroupElement49, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -57734,9 +62238,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -57747,44 +62251,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonHeaderGroupElement54, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonHeaderGroupElement56, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonHeaderGroupElement59, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement63, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -57793,9 +62297,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -57809,33 +62313,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonHeaderGroupElement70, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonHeaderGroupElement75, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -57843,12 +62347,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonHeaderGroupElement77, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -57865,7 +62369,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -57874,28 +62378,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonHeaderGroupElement81, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement85, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -57904,9 +62408,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -57920,33 +62424,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonHeaderGroupElement92, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonHeaderGroupElement97, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -57954,12 +62458,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonHeaderGroupElement99, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -57976,7 +62480,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -57985,28 +62489,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonHeaderGroupElement103, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement107, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -58015,9 +62519,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -58031,7 +62535,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -58046,10 +62550,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonHeaderGroupElement113, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -58060,7 +62564,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -58069,27 +62573,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonHeaderGroupElement116, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonHeaderGroupElement120, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -58099,7 +62603,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -58111,10 +62615,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonHeaderGroupElement124, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -58128,56 +62632,56 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2399, col: 11, offset: 81057}, + pos: position{line: 2459, col: 11, offset: 82811}, name: "Quote", }, &ruleRefExpr{ - pos: position{line: 2400, col: 11, offset: 81073}, + pos: position{line: 2460, col: 11, offset: 82827}, name: "Link", }, &ruleRefExpr{ - pos: position{line: 2401, col: 11, offset: 81088}, + pos: position{line: 2461, col: 11, offset: 82842}, name: "InlineIcon", }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonHeaderGroupElement129, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonHeaderGroupElement131, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonHeaderGroupElement134, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement138, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -58186,9 +62690,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -58202,33 +62706,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonHeaderGroupElement145, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonHeaderGroupElement150, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -58236,12 +62740,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonHeaderGroupElement152, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -58258,7 +62762,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -58267,28 +62771,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonHeaderGroupElement156, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement160, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -58297,9 +62801,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -58313,33 +62817,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonHeaderGroupElement167, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonHeaderGroupElement172, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -58347,12 +62851,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonHeaderGroupElement174, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -58369,7 +62873,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -58378,28 +62882,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonHeaderGroupElement178, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement182, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -58408,9 +62912,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -58424,7 +62928,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -58439,27 +62943,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonHeaderGroupElement188, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonHeaderGroupElement192, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -58469,7 +62973,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -58478,79 +62982,79 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2561, col: 5, offset: 85890}, + pos: position{line: 2621, col: 5, offset: 87644}, run: (*parser).callonHeaderGroupElement196, expr: &seqExpr{ - pos: position{line: 2561, col: 5, offset: 85890}, + pos: position{line: 2621, col: 5, offset: 87644}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2561, col: 5, offset: 85890}, + pos: position{line: 2621, col: 5, offset: 87644}, run: (*parser).callonHeaderGroupElement198, }, &labeledExpr{ - pos: position{line: 2564, col: 5, offset: 85956}, + pos: position{line: 2624, col: 5, offset: 87710}, label: "element", expr: &choiceExpr{ - pos: position{line: 2603, col: 11, offset: 87258}, + pos: position{line: 2663, col: 11, offset: 89012}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonHeaderGroupElement201, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonHeaderGroupElement203, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonHeaderGroupElement205, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonHeaderGroupElement207, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonHeaderGroupElement209, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonHeaderGroupElement211, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -58558,15 +63062,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -58583,38 +63087,38 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 186, col: 4, offset: 5578}, + pos: position{line: 328, col: 4, offset: 10263}, run: (*parser).callonHeaderGroupElement217, expr: &seqExpr{ - pos: position{line: 186, col: 4, offset: 5578}, + pos: position{line: 328, col: 4, offset: 10263}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 186, col: 4, offset: 5578}, + pos: position{line: 328, col: 4, offset: 10263}, val: "[[", ignoreCase: false, want: "\"[[\"", }, &labeledExpr{ - pos: position{line: 187, col: 5, offset: 5588}, + pos: position{line: 329, col: 5, offset: 10273}, label: "id", expr: &actionExpr{ - pos: position{line: 188, col: 9, offset: 5601}, + pos: position{line: 330, col: 9, offset: 10286}, run: (*parser).callonHeaderGroupElement221, expr: &labeledExpr{ - pos: position{line: 188, col: 9, offset: 5601}, + pos: position{line: 330, col: 9, offset: 10286}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 188, col: 18, offset: 5610}, + pos: position{line: 330, col: 18, offset: 10295}, expr: &choiceExpr{ - pos: position{line: 189, col: 13, offset: 5624}, + pos: position{line: 331, col: 13, offset: 10309}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 189, col: 14, offset: 5625}, + pos: position{line: 331, col: 14, offset: 10310}, run: (*parser).callonHeaderGroupElement225, expr: &oneOrMoreExpr{ - pos: position{line: 189, col: 14, offset: 5625}, + pos: position{line: 331, col: 14, offset: 10310}, expr: &charClassMatcher{ - pos: position{line: 189, col: 14, offset: 5625}, + pos: position{line: 331, col: 14, offset: 10310}, val: "[^=\\r\\n�{]]", chars: []rune{'=', '\r', '\n', '�', '{', ']'}, ignoreCase: false, @@ -58623,27 +63127,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonHeaderGroupElement228, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonHeaderGroupElement232, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -58653,7 +63157,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -58662,44 +63166,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonHeaderGroupElement236, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonHeaderGroupElement238, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonHeaderGroupElement241, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement245, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -58708,9 +63212,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -58724,33 +63228,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonHeaderGroupElement252, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonHeaderGroupElement257, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -58758,12 +63262,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonHeaderGroupElement259, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -58780,7 +63284,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -58789,28 +63293,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonHeaderGroupElement263, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement267, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -58819,9 +63323,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -58835,33 +63339,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonHeaderGroupElement274, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonHeaderGroupElement279, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -58869,12 +63373,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonHeaderGroupElement281, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -58891,7 +63395,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -58900,28 +63404,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonHeaderGroupElement285, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonHeaderGroupElement289, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -58930,9 +63434,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -58946,7 +63450,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -58961,10 +63465,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 194, col: 16, offset: 5861}, + pos: position{line: 336, col: 16, offset: 10546}, run: (*parser).callonHeaderGroupElement295, expr: &litMatcher{ - pos: position{line: 194, col: 16, offset: 5861}, + pos: position{line: 336, col: 16, offset: 10546}, val: "{", ignoreCase: false, want: "\"{\"", @@ -58977,7 +63481,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 200, col: 5, offset: 6047}, + pos: position{line: 342, col: 5, offset: 10732}, val: "]]", ignoreCase: false, want: "\"]]\"", @@ -58986,14 +63490,14 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2406, col: 11, offset: 81306}, + pos: position{line: 2466, col: 11, offset: 83060}, name: "InlineFootnote", }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonHeaderGroupElement299, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -59005,31 +63509,31 @@ var g = &grammar{ }, { name: "MacrosGroup", - pos: position{line: 2412, col: 1, offset: 81425}, + pos: position{line: 2472, col: 1, offset: 83179}, expr: &actionExpr{ - pos: position{line: 2412, col: 16, offset: 81440}, + pos: position{line: 2472, col: 16, offset: 83194}, run: (*parser).callonMacrosGroup1, expr: &seqExpr{ - pos: position{line: 2412, col: 16, offset: 81440}, + pos: position{line: 2472, col: 16, offset: 83194}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2412, col: 16, offset: 81440}, + pos: position{line: 2472, col: 16, offset: 83194}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2412, col: 25, offset: 81449}, + pos: position{line: 2472, col: 25, offset: 83203}, expr: &choiceExpr{ - pos: position{line: 2413, col: 5, offset: 81455}, + pos: position{line: 2473, col: 5, offset: 83209}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonMacrosGroup6, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -59039,13 +63543,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonMacrosGroup11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -59053,37 +63557,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonMacrosGroup16, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -59092,9 +63596,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59106,31 +63610,31 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2414, col: 7, offset: 81472}, + pos: position{line: 2474, col: 7, offset: 83226}, name: "InlineMacro", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonMacrosGroup24, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonMacrosGroup28, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -59140,7 +63644,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -59149,10 +63653,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonMacrosGroup32, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -59160,9 +63664,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59171,51 +63675,51 @@ var g = &grammar{ }, { name: "NoneGroup", - pos: position{line: 2422, col: 1, offset: 81780}, + pos: position{line: 2482, col: 1, offset: 83534}, expr: &actionExpr{ - pos: position{line: 2422, col: 14, offset: 81793}, + pos: position{line: 2482, col: 14, offset: 83547}, run: (*parser).callonNoneGroup1, expr: &seqExpr{ - pos: position{line: 2422, col: 14, offset: 81793}, + pos: position{line: 2482, col: 14, offset: 83547}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2422, col: 14, offset: 81793}, + pos: position{line: 2482, col: 14, offset: 83547}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2422, col: 23, offset: 81802}, + pos: position{line: 2482, col: 23, offset: 83556}, expr: &actionExpr{ - pos: position{line: 2427, col: 5, offset: 81910}, + pos: position{line: 2487, col: 5, offset: 83664}, run: (*parser).callonNoneGroup5, expr: &seqExpr{ - pos: position{line: 2427, col: 5, offset: 81910}, + pos: position{line: 2487, col: 5, offset: 83664}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2427, col: 5, offset: 81910}, + pos: position{line: 2487, col: 5, offset: 83664}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &labeledExpr{ - pos: position{line: 2428, col: 5, offset: 81919}, + pos: position{line: 2488, col: 5, offset: 83673}, label: "element", expr: &oneOrMoreExpr{ - pos: position{line: 2428, col: 13, offset: 81927}, + pos: position{line: 2488, col: 13, offset: 83681}, expr: &choiceExpr{ - pos: position{line: 2429, col: 9, offset: 81937}, + pos: position{line: 2489, col: 9, offset: 83691}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonNoneGroup13, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -59225,13 +63729,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonNoneGroup18, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -59239,37 +63743,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonNoneGroup23, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -59278,9 +63782,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59292,27 +63796,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonNoneGroup30, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonNoneGroup34, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -59322,7 +63826,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -59331,10 +63835,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonNoneGroup38, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -59342,9 +63846,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59353,9 +63857,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59364,28 +63868,28 @@ var g = &grammar{ }, { name: "NormalGroup", - pos: position{line: 2437, col: 1, offset: 82335}, + pos: position{line: 2497, col: 1, offset: 84089}, expr: &actionExpr{ - pos: position{line: 2438, col: 5, offset: 82355}, + pos: position{line: 2498, col: 5, offset: 84109}, run: (*parser).callonNormalGroup1, expr: &seqExpr{ - pos: position{line: 2438, col: 5, offset: 82355}, + pos: position{line: 2498, col: 5, offset: 84109}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2438, col: 5, offset: 82355}, + pos: position{line: 2498, col: 5, offset: 84109}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2438, col: 14, offset: 82364}, + pos: position{line: 2498, col: 14, offset: 84118}, expr: &ruleRefExpr{ - pos: position{line: 2438, col: 15, offset: 82365}, + pos: position{line: 2498, col: 15, offset: 84119}, name: "NormalGroupElement", }, }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59394,38 +63898,38 @@ var g = &grammar{ }, { name: "NormalGroupElement", - pos: position{line: 2443, col: 1, offset: 82486}, + pos: position{line: 2503, col: 1, offset: 84240}, expr: &actionExpr{ - pos: position{line: 2444, col: 5, offset: 82513}, + pos: position{line: 2504, col: 5, offset: 84267}, run: (*parser).callonNormalGroupElement1, expr: &seqExpr{ - pos: position{line: 2444, col: 5, offset: 82513}, + pos: position{line: 2504, col: 5, offset: 84267}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2444, col: 5, offset: 82513}, + pos: position{line: 2504, col: 5, offset: 84267}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &labeledExpr{ - pos: position{line: 2445, col: 5, offset: 82522}, + pos: position{line: 2505, col: 5, offset: 84276}, label: "element", expr: &choiceExpr{ - pos: position{line: 2446, col: 9, offset: 82540}, + pos: position{line: 2506, col: 9, offset: 84294}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonNormalGroupElement8, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -59435,13 +63939,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonNormalGroupElement13, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -59449,37 +63953,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonNormalGroupElement18, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -59488,9 +63992,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59502,10 +64006,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonNormalGroupElement25, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -59513,25 +64017,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonNormalGroupElement27, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -59540,27 +64044,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonNormalGroupElement32, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonNormalGroupElement36, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -59570,7 +64074,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -59579,28 +64083,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonNormalGroupElement40, expr: &seqExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonNormalGroupElement42, }, &litMatcher{ - pos: position{line: 921, col: 5, offset: 29529}, + pos: position{line: 1076, col: 5, offset: 34461}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 921, col: 9, offset: 29533}, + pos: position{line: 1076, col: 9, offset: 34465}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonNormalGroupElement45, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -59609,30 +64113,30 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 921, col: 16, offset: 29540}, + pos: position{line: 1076, col: 16, offset: 34472}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonNormalGroupElement49, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -59641,9 +64145,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59653,28 +64157,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2811, col: 16, offset: 93546}, + pos: position{line: 2871, col: 16, offset: 95300}, run: (*parser).callonNormalGroupElement56, expr: &seqExpr{ - pos: position{line: 2811, col: 16, offset: 93546}, + pos: position{line: 2871, col: 16, offset: 95300}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2811, col: 17, offset: 93547}, + pos: position{line: 2871, col: 17, offset: 95301}, val: "[.,;!?]", chars: []rune{'.', ',', ';', '!', '?'}, ignoreCase: false, inverted: false, }, &andExpr{ - pos: position{line: 2811, col: 46, offset: 93576}, + pos: position{line: 2871, col: 46, offset: 95330}, expr: &choiceExpr{ - pos: position{line: 2811, col: 48, offset: 93578}, + pos: position{line: 2871, col: 48, offset: 95332}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonNormalGroupElement61, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -59682,25 +64186,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonNormalGroupElement63, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -59709,9 +64213,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -59721,61 +64225,61 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2452, col: 11, offset: 82755}, + pos: position{line: 2512, col: 11, offset: 84509}, name: "Quote", }, &ruleRefExpr{ - pos: position{line: 2453, col: 11, offset: 82771}, + pos: position{line: 2513, col: 11, offset: 84525}, name: "InlinePassthrough", }, &ruleRefExpr{ - pos: position{line: 2454, col: 11, offset: 82799}, + pos: position{line: 2514, col: 11, offset: 84553}, name: "InlineMacro", }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonNormalGroupElement73, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonNormalGroupElement75, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonNormalGroupElement78, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonNormalGroupElement80, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonNormalGroupElement84, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -59785,12 +64289,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonNormalGroupElement88, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -59799,27 +64303,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonNormalGroupElement94, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -59827,9 +64331,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -59840,44 +64344,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonNormalGroupElement99, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonNormalGroupElement101, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonNormalGroupElement104, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonNormalGroupElement108, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -59886,9 +64390,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -59902,33 +64406,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonNormalGroupElement115, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonNormalGroupElement120, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -59936,12 +64440,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonNormalGroupElement122, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -59958,7 +64462,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -59967,28 +64471,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonNormalGroupElement126, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonNormalGroupElement130, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -59997,9 +64501,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -60013,33 +64517,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonNormalGroupElement137, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonNormalGroupElement142, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -60047,12 +64551,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonNormalGroupElement144, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -60069,7 +64573,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -60078,28 +64582,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonNormalGroupElement148, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonNormalGroupElement152, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -60108,9 +64612,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -60124,7 +64628,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -60139,10 +64643,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonNormalGroupElement158, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -60153,7 +64657,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -60162,27 +64666,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonNormalGroupElement161, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonNormalGroupElement165, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -60192,7 +64696,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -60204,10 +64708,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonNormalGroupElement169, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -60221,44 +64725,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonNormalGroupElement171, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonNormalGroupElement173, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonNormalGroupElement176, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonNormalGroupElement180, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -60267,9 +64771,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -60283,33 +64787,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonNormalGroupElement187, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonNormalGroupElement192, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -60317,12 +64821,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonNormalGroupElement194, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -60339,7 +64843,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -60348,28 +64852,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonNormalGroupElement198, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonNormalGroupElement202, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -60378,9 +64882,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -60394,33 +64898,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonNormalGroupElement209, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonNormalGroupElement214, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -60428,12 +64932,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonNormalGroupElement216, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -60450,7 +64954,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -60459,28 +64963,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonNormalGroupElement220, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonNormalGroupElement224, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -60489,9 +64993,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -60505,7 +65009,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -60520,63 +65024,63 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonNormalGroupElement230, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonNormalGroupElement232, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonNormalGroupElement234, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonNormalGroupElement236, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonNormalGroupElement238, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonNormalGroupElement240, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -60584,15 +65088,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -60603,10 +65107,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonNormalGroupElement246, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -60618,49 +65122,49 @@ var g = &grammar{ }, { name: "PostReplacementsGroup", - pos: position{line: 2462, col: 1, offset: 83057}, + pos: position{line: 2522, col: 1, offset: 84811}, expr: &actionExpr{ - pos: position{line: 2463, col: 5, offset: 83088}, + pos: position{line: 2523, col: 5, offset: 84842}, run: (*parser).callonPostReplacementsGroup1, expr: &seqExpr{ - pos: position{line: 2463, col: 5, offset: 83088}, + pos: position{line: 2523, col: 5, offset: 84842}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2463, col: 5, offset: 83088}, + pos: position{line: 2523, col: 5, offset: 84842}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2463, col: 14, offset: 83097}, + pos: position{line: 2523, col: 14, offset: 84851}, expr: &actionExpr{ - pos: position{line: 2469, col: 5, offset: 83265}, + pos: position{line: 2529, col: 5, offset: 85019}, run: (*parser).callonPostReplacementsGroup5, expr: &seqExpr{ - pos: position{line: 2469, col: 5, offset: 83265}, + pos: position{line: 2529, col: 5, offset: 85019}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2469, col: 5, offset: 83265}, + pos: position{line: 2529, col: 5, offset: 85019}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &labeledExpr{ - pos: position{line: 2470, col: 5, offset: 83274}, + pos: position{line: 2530, col: 5, offset: 85028}, label: "element", expr: &choiceExpr{ - pos: position{line: 2471, col: 9, offset: 83292}, + pos: position{line: 2531, col: 9, offset: 85046}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonPostReplacementsGroup12, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -60670,13 +65174,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonPostReplacementsGroup17, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -60684,37 +65188,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonPostReplacementsGroup22, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -60723,9 +65227,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -60737,10 +65241,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonPostReplacementsGroup29, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -60748,28 +65252,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonPostReplacementsGroup31, expr: &seqExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 918, col: 5, offset: 29472}, + pos: position{line: 1073, col: 5, offset: 34404}, run: (*parser).callonPostReplacementsGroup33, }, &litMatcher{ - pos: position{line: 921, col: 5, offset: 29529}, + pos: position{line: 1076, col: 5, offset: 34461}, val: "+", ignoreCase: false, want: "\"+\"", }, &zeroOrMoreExpr{ - pos: position{line: 921, col: 9, offset: 29533}, + pos: position{line: 1076, col: 9, offset: 34465}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonPostReplacementsGroup36, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -60778,30 +65282,30 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 921, col: 16, offset: 29540}, + pos: position{line: 1076, col: 16, offset: 34472}, expr: &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonPostReplacementsGroup40, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -60810,9 +65314,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -60822,25 +65326,25 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonPostReplacementsGroup47, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -60849,27 +65353,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonPostReplacementsGroup52, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonPostReplacementsGroup56, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -60879,7 +65383,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -60888,10 +65392,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonPostReplacementsGroup60, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -60903,9 +65407,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -60914,31 +65418,31 @@ var g = &grammar{ }, { name: "QuotesGroup", - pos: position{line: 2482, col: 1, offset: 83618}, + pos: position{line: 2542, col: 1, offset: 85372}, expr: &actionExpr{ - pos: position{line: 2482, col: 16, offset: 83633}, + pos: position{line: 2542, col: 16, offset: 85387}, run: (*parser).callonQuotesGroup1, expr: &seqExpr{ - pos: position{line: 2482, col: 16, offset: 83633}, + pos: position{line: 2542, col: 16, offset: 85387}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2482, col: 16, offset: 83633}, + pos: position{line: 2542, col: 16, offset: 85387}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2482, col: 25, offset: 83642}, + pos: position{line: 2542, col: 25, offset: 85396}, expr: &choiceExpr{ - pos: position{line: 2483, col: 5, offset: 83648}, + pos: position{line: 2543, col: 5, offset: 85402}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonQuotesGroup6, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -60948,13 +65452,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonQuotesGroup11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -60962,37 +65466,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonQuotesGroup16, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -61001,9 +65505,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -61015,31 +65519,31 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2484, col: 7, offset: 83665}, + pos: position{line: 2544, col: 7, offset: 85419}, name: "Quote", }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonQuotesGroup24, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonQuotesGroup28, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -61049,7 +65553,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -61058,10 +65562,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonQuotesGroup32, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -61069,9 +65573,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -61080,31 +65584,31 @@ var g = &grammar{ }, { name: "ReplacementsGroup", - pos: position{line: 2491, col: 1, offset: 83909}, + pos: position{line: 2551, col: 1, offset: 85663}, expr: &actionExpr{ - pos: position{line: 2491, col: 22, offset: 83930}, + pos: position{line: 2551, col: 22, offset: 85684}, run: (*parser).callonReplacementsGroup1, expr: &seqExpr{ - pos: position{line: 2491, col: 22, offset: 83930}, + pos: position{line: 2551, col: 22, offset: 85684}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2491, col: 22, offset: 83930}, + pos: position{line: 2551, col: 22, offset: 85684}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2491, col: 31, offset: 83939}, + pos: position{line: 2551, col: 31, offset: 85693}, expr: &choiceExpr{ - pos: position{line: 2492, col: 5, offset: 83945}, + pos: position{line: 2552, col: 5, offset: 85699}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonReplacementsGroup6, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -61114,13 +65618,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonReplacementsGroup11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -61128,37 +65632,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonReplacementsGroup16, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -61167,9 +65671,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -61181,79 +65685,79 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2561, col: 5, offset: 85890}, + pos: position{line: 2621, col: 5, offset: 87644}, run: (*parser).callonReplacementsGroup23, expr: &seqExpr{ - pos: position{line: 2561, col: 5, offset: 85890}, + pos: position{line: 2621, col: 5, offset: 87644}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2561, col: 5, offset: 85890}, + pos: position{line: 2621, col: 5, offset: 87644}, run: (*parser).callonReplacementsGroup25, }, &labeledExpr{ - pos: position{line: 2564, col: 5, offset: 85956}, + pos: position{line: 2624, col: 5, offset: 87710}, label: "element", expr: &choiceExpr{ - pos: position{line: 2603, col: 11, offset: 87258}, + pos: position{line: 2663, col: 11, offset: 89012}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, run: (*parser).callonReplacementsGroup28, expr: &litMatcher{ - pos: position{line: 2605, col: 15, offset: 87352}, + pos: position{line: 2665, col: 15, offset: 89106}, val: "`'", ignoreCase: false, want: "\"`'\"", }, }, &actionExpr{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, run: (*parser).callonReplacementsGroup30, expr: &litMatcher{ - pos: position{line: 2611, col: 14, offset: 87467}, + pos: position{line: 2671, col: 14, offset: 89221}, val: "(C)", ignoreCase: false, want: "\"(C)\"", }, }, &actionExpr{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, run: (*parser).callonReplacementsGroup32, expr: &litMatcher{ - pos: position{line: 2615, col: 14, offset: 87543}, + pos: position{line: 2675, col: 14, offset: 89297}, val: "(TM)", ignoreCase: false, want: "\"(TM)\"", }, }, &actionExpr{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, run: (*parser).callonReplacementsGroup34, expr: &litMatcher{ - pos: position{line: 2619, col: 15, offset: 87621}, + pos: position{line: 2679, col: 15, offset: 89375}, val: "(R)", ignoreCase: false, want: "\"(R)\"", }, }, &actionExpr{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, run: (*parser).callonReplacementsGroup36, expr: &litMatcher{ - pos: position{line: 2623, col: 13, offset: 87696}, + pos: position{line: 2683, col: 13, offset: 89450}, val: "...", ignoreCase: false, want: "\"...\"", }, }, &actionExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, run: (*parser).callonReplacementsGroup38, expr: &seqExpr{ - pos: position{line: 2631, col: 22, offset: 88002}, + pos: position{line: 2691, col: 22, offset: 89756}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -61261,15 +65765,15 @@ var g = &grammar{ inverted: false, }, &litMatcher{ - pos: position{line: 2631, col: 31, offset: 88011}, + pos: position{line: 2691, col: 31, offset: 89765}, val: "'", ignoreCase: false, want: "\"'\"", }, &andExpr{ - pos: position{line: 2631, col: 35, offset: 88015}, + pos: position{line: 2691, col: 35, offset: 89769}, expr: &charClassMatcher{ - pos: position{line: 2631, col: 36, offset: 88016}, + pos: position{line: 2691, col: 36, offset: 89770}, val: "[\\pL]", classes: []*unicode.RangeTable{rangeTable("L")}, ignoreCase: false, @@ -61286,27 +65790,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonReplacementsGroup44, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonReplacementsGroup48, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -61316,7 +65820,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -61325,10 +65829,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonReplacementsGroup52, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -61336,9 +65840,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -61347,31 +65851,31 @@ var g = &grammar{ }, { name: "SpecialCharactersGroup", - pos: position{line: 2500, col: 1, offset: 84237}, + pos: position{line: 2560, col: 1, offset: 85991}, expr: &actionExpr{ - pos: position{line: 2500, col: 27, offset: 84263}, + pos: position{line: 2560, col: 27, offset: 86017}, run: (*parser).callonSpecialCharactersGroup1, expr: &seqExpr{ - pos: position{line: 2500, col: 27, offset: 84263}, + pos: position{line: 2560, col: 27, offset: 86017}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2500, col: 27, offset: 84263}, + pos: position{line: 2560, col: 27, offset: 86017}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2500, col: 36, offset: 84272}, + pos: position{line: 2560, col: 36, offset: 86026}, expr: &choiceExpr{ - pos: position{line: 2501, col: 5, offset: 84278}, + pos: position{line: 2561, col: 5, offset: 86032}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonSpecialCharactersGroup6, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -61381,13 +65885,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSpecialCharactersGroup11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -61395,37 +65899,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonSpecialCharactersGroup16, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -61434,9 +65938,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -61448,49 +65952,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSpecialCharactersGroup23, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonSpecialCharactersGroup25, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonSpecialCharactersGroup28, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonSpecialCharactersGroup30, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSpecialCharactersGroup34, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -61500,12 +66004,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonSpecialCharactersGroup38, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -61514,27 +66018,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonSpecialCharactersGroup44, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -61542,9 +66046,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -61555,44 +66059,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSpecialCharactersGroup49, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonSpecialCharactersGroup51, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonSpecialCharactersGroup54, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSpecialCharactersGroup58, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -61601,9 +66105,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -61617,33 +66121,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSpecialCharactersGroup65, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSpecialCharactersGroup70, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -61651,12 +66155,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSpecialCharactersGroup72, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -61673,7 +66177,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -61682,28 +66186,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonSpecialCharactersGroup76, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSpecialCharactersGroup80, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -61712,9 +66216,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -61728,33 +66232,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonSpecialCharactersGroup87, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonSpecialCharactersGroup92, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -61762,12 +66266,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonSpecialCharactersGroup94, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -61784,7 +66288,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -61793,28 +66297,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonSpecialCharactersGroup98, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonSpecialCharactersGroup102, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -61823,9 +66327,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -61839,7 +66343,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -61854,10 +66358,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonSpecialCharactersGroup108, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -61868,7 +66372,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -61877,27 +66381,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonSpecialCharactersGroup111, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonSpecialCharactersGroup115, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -61907,7 +66411,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -61919,10 +66423,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonSpecialCharactersGroup119, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -61936,27 +66440,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonSpecialCharactersGroup121, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonSpecialCharactersGroup125, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -61966,7 +66470,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -61975,10 +66479,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonSpecialCharactersGroup129, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -61986,9 +66490,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -61997,31 +66501,31 @@ var g = &grammar{ }, { name: "VerbatimGroup", - pos: position{line: 2508, col: 1, offset: 84504}, + pos: position{line: 2568, col: 1, offset: 86258}, expr: &actionExpr{ - pos: position{line: 2508, col: 18, offset: 84521}, + pos: position{line: 2568, col: 18, offset: 86275}, run: (*parser).callonVerbatimGroup1, expr: &seqExpr{ - pos: position{line: 2508, col: 18, offset: 84521}, + pos: position{line: 2568, col: 18, offset: 86275}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2508, col: 18, offset: 84521}, + pos: position{line: 2568, col: 18, offset: 86275}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2508, col: 27, offset: 84530}, + pos: position{line: 2568, col: 27, offset: 86284}, expr: &choiceExpr{ - pos: position{line: 2509, col: 5, offset: 84536}, + pos: position{line: 2569, col: 5, offset: 86290}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, run: (*parser).callonVerbatimGroup6, expr: &seqExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, exprs: []interface{}{ &oneOrMoreExpr{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, expr: &charClassMatcher{ - pos: position{line: 2805, col: 5, offset: 93395}, + pos: position{line: 2865, col: 5, offset: 95149}, val: "[,;!?0-9\\pL]", chars: []rune{',', ';', '!', '?'}, ranges: []rune{'0', '9'}, @@ -62031,13 +66535,13 @@ var g = &grammar{ }, }, &choiceExpr{ - pos: position{line: 2806, col: 6, offset: 93415}, + pos: position{line: 2866, col: 6, offset: 95169}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonVerbatimGroup11, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62045,37 +66549,37 @@ var g = &grammar{ }, }, &andExpr{ - pos: position{line: 2806, col: 14, offset: 93423}, + pos: position{line: 2866, col: 14, offset: 95177}, expr: &choiceExpr{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2806, col: 16, offset: 93425}, + pos: position{line: 2866, col: 16, offset: 95179}, val: "[.�]", chars: []rune{'.', '�'}, ignoreCase: false, inverted: false, }, &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonVerbatimGroup16, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -62084,9 +66588,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -62098,53 +66602,53 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2510, col: 7, offset: 84553}, + pos: position{line: 2570, col: 7, offset: 86307}, name: "Callout", }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonVerbatimGroup24, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonVerbatimGroup26, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonVerbatimGroup29, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonVerbatimGroup31, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonVerbatimGroup35, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -62154,12 +66658,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonVerbatimGroup39, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62168,27 +66672,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonVerbatimGroup45, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -62196,9 +66700,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -62209,44 +66713,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonVerbatimGroup50, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonVerbatimGroup52, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonVerbatimGroup55, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonVerbatimGroup59, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -62255,9 +66759,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -62271,33 +66775,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonVerbatimGroup66, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonVerbatimGroup71, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -62305,12 +66809,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonVerbatimGroup73, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -62327,7 +66831,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -62336,28 +66840,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonVerbatimGroup77, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonVerbatimGroup81, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -62366,9 +66870,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -62382,33 +66886,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonVerbatimGroup88, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonVerbatimGroup93, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -62416,12 +66920,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonVerbatimGroup95, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -62438,7 +66942,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -62447,28 +66951,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonVerbatimGroup99, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonVerbatimGroup103, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -62477,9 +66981,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -62493,7 +66997,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -62508,10 +67012,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonVerbatimGroup109, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -62522,7 +67026,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -62531,27 +67035,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonVerbatimGroup112, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonVerbatimGroup116, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -62561,7 +67065,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -62573,10 +67077,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonVerbatimGroup120, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -62590,27 +67094,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonVerbatimGroup122, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonVerbatimGroup126, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -62620,7 +67124,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -62629,10 +67133,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2817, col: 12, offset: 93757}, + pos: position{line: 2877, col: 12, offset: 95511}, run: (*parser).callonVerbatimGroup130, expr: &anyMatcher{ - line: 2817, col: 12, offset: 93757, + line: 2877, col: 12, offset: 95511, }, }, }, @@ -62640,9 +67144,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -62651,73 +67155,73 @@ var g = &grammar{ }, { name: "InlineMacro", - pos: position{line: 2517, col: 1, offset: 84822}, + pos: position{line: 2577, col: 1, offset: 86576}, expr: &actionExpr{ - pos: position{line: 2519, col: 5, offset: 84904}, + pos: position{line: 2579, col: 5, offset: 86658}, run: (*parser).callonInlineMacro1, expr: &seqExpr{ - pos: position{line: 2519, col: 5, offset: 84904}, + pos: position{line: 2579, col: 5, offset: 86658}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2519, col: 5, offset: 84904}, + pos: position{line: 2579, col: 5, offset: 86658}, run: (*parser).callonInlineMacro3, }, &labeledExpr{ - pos: position{line: 2522, col: 5, offset: 84964}, + pos: position{line: 2582, col: 5, offset: 86718}, label: "element", expr: &choiceExpr{ - pos: position{line: 2523, col: 9, offset: 84982}, + pos: position{line: 2583, col: 9, offset: 86736}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2523, col: 9, offset: 84982}, + pos: position{line: 2583, col: 9, offset: 86736}, name: "InlineIcon", }, &ruleRefExpr{ - pos: position{line: 2524, col: 11, offset: 85003}, + pos: position{line: 2584, col: 11, offset: 86757}, name: "InlineImage", }, &ruleRefExpr{ - pos: position{line: 2525, col: 11, offset: 85026}, + pos: position{line: 2585, col: 11, offset: 86780}, name: "Link", }, &ruleRefExpr{ - pos: position{line: 2526, col: 11, offset: 85042}, + pos: position{line: 2586, col: 11, offset: 86796}, name: "InlinePassthrough", }, &ruleRefExpr{ - pos: position{line: 2527, col: 11, offset: 85071}, + pos: position{line: 2587, col: 11, offset: 86825}, name: "InlineFootnote", }, &ruleRefExpr{ - pos: position{line: 2528, col: 11, offset: 85097}, + pos: position{line: 2588, col: 11, offset: 86851}, name: "CrossReference", }, &ruleRefExpr{ - pos: position{line: 2529, col: 11, offset: 85123}, + pos: position{line: 2589, col: 11, offset: 86877}, name: "InlineUserMacro", }, &actionExpr{ - pos: position{line: 1093, col: 20, offset: 34982}, + pos: position{line: 1154, col: 20, offset: 36769}, run: (*parser).callonInlineMacro13, expr: &seqExpr{ - pos: position{line: 1093, col: 20, offset: 34982}, + pos: position{line: 1154, col: 20, offset: 36769}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1093, col: 20, offset: 34982}, + pos: position{line: 1154, col: 20, offset: 36769}, val: "[[", ignoreCase: false, want: "\"[[\"", }, &labeledExpr{ - pos: position{line: 1093, col: 25, offset: 34987}, + pos: position{line: 1154, col: 25, offset: 36774}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonInlineMacro17, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -62727,18 +67231,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1093, col: 33, offset: 34995}, + pos: position{line: 1154, col: 33, offset: 36782}, val: "]]", ignoreCase: false, want: "\"]]\"", }, &zeroOrMoreExpr{ - pos: position{line: 1093, col: 38, offset: 35000}, + pos: position{line: 1154, col: 38, offset: 36787}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro22, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62750,30 +67254,30 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1110, col: 23, offset: 35691}, + pos: position{line: 1171, col: 23, offset: 37478}, run: (*parser).callonInlineMacro24, expr: &seqExpr{ - pos: position{line: 1110, col: 23, offset: 35691}, + pos: position{line: 1171, col: 23, offset: 37478}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1110, col: 23, offset: 35691}, + pos: position{line: 1171, col: 23, offset: 37478}, val: "(((", ignoreCase: false, want: "\"(((\"", }, &labeledExpr{ - pos: position{line: 1110, col: 29, offset: 35697}, + pos: position{line: 1171, col: 29, offset: 37484}, label: "term1", expr: &actionExpr{ - pos: position{line: 1117, col: 30, offset: 36028}, + pos: position{line: 1178, col: 30, offset: 37815}, run: (*parser).callonInlineMacro28, expr: &oneOrMoreExpr{ - pos: position{line: 1117, col: 30, offset: 36028}, + pos: position{line: 1178, col: 30, offset: 37815}, expr: &choiceExpr{ - pos: position{line: 1117, col: 31, offset: 36029}, + pos: position{line: 1178, col: 31, offset: 37816}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -62781,10 +67285,10 @@ var g = &grammar{ inverted: false, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro32, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62797,23 +67301,23 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1111, col: 5, offset: 35736}, + pos: position{line: 1172, col: 5, offset: 37523}, label: "term2", expr: &zeroOrOneExpr{ - pos: position{line: 1111, col: 11, offset: 35742}, + pos: position{line: 1172, col: 11, offset: 37529}, expr: &actionExpr{ - pos: position{line: 1111, col: 12, offset: 35743}, + pos: position{line: 1172, col: 12, offset: 37530}, run: (*parser).callonInlineMacro36, expr: &seqExpr{ - pos: position{line: 1111, col: 12, offset: 35743}, + pos: position{line: 1172, col: 12, offset: 37530}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1111, col: 12, offset: 35743}, + pos: position{line: 1172, col: 12, offset: 37530}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro39, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62822,18 +67326,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1111, col: 19, offset: 35750}, + pos: position{line: 1172, col: 19, offset: 37537}, val: ",", ignoreCase: false, want: "\",\"", }, &zeroOrMoreExpr{ - pos: position{line: 1111, col: 23, offset: 35754}, + pos: position{line: 1172, col: 23, offset: 37541}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro43, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62842,18 +67346,18 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1111, col: 30, offset: 35761}, + pos: position{line: 1172, col: 30, offset: 37548}, label: "content", expr: &actionExpr{ - pos: position{line: 1117, col: 30, offset: 36028}, + pos: position{line: 1178, col: 30, offset: 37815}, run: (*parser).callonInlineMacro46, expr: &oneOrMoreExpr{ - pos: position{line: 1117, col: 30, offset: 36028}, + pos: position{line: 1178, col: 30, offset: 37815}, expr: &choiceExpr{ - pos: position{line: 1117, col: 31, offset: 36029}, + pos: position{line: 1178, col: 31, offset: 37816}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -62861,10 +67365,10 @@ var g = &grammar{ inverted: false, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro50, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62882,23 +67386,23 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1112, col: 5, offset: 35828}, + pos: position{line: 1173, col: 5, offset: 37615}, label: "term3", expr: &zeroOrOneExpr{ - pos: position{line: 1112, col: 11, offset: 35834}, + pos: position{line: 1173, col: 11, offset: 37621}, expr: &actionExpr{ - pos: position{line: 1112, col: 12, offset: 35835}, + pos: position{line: 1173, col: 12, offset: 37622}, run: (*parser).callonInlineMacro54, expr: &seqExpr{ - pos: position{line: 1112, col: 12, offset: 35835}, + pos: position{line: 1173, col: 12, offset: 37622}, exprs: []interface{}{ &zeroOrMoreExpr{ - pos: position{line: 1112, col: 12, offset: 35835}, + pos: position{line: 1173, col: 12, offset: 37622}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro57, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62907,18 +67411,18 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1112, col: 19, offset: 35842}, + pos: position{line: 1173, col: 19, offset: 37629}, val: ",", ignoreCase: false, want: "\",\"", }, &zeroOrMoreExpr{ - pos: position{line: 1112, col: 23, offset: 35846}, + pos: position{line: 1173, col: 23, offset: 37633}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro61, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62927,18 +67431,18 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 1112, col: 30, offset: 35853}, + pos: position{line: 1173, col: 30, offset: 37640}, label: "content", expr: &actionExpr{ - pos: position{line: 1117, col: 30, offset: 36028}, + pos: position{line: 1178, col: 30, offset: 37815}, run: (*parser).callonInlineMacro64, expr: &oneOrMoreExpr{ - pos: position{line: 1117, col: 30, offset: 36028}, + pos: position{line: 1178, col: 30, offset: 37815}, expr: &choiceExpr{ - pos: position{line: 1117, col: 31, offset: 36029}, + pos: position{line: 1178, col: 31, offset: 37816}, alternatives: []interface{}{ &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -62946,10 +67450,10 @@ var g = &grammar{ inverted: false, }, &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlineMacro68, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -62967,7 +67471,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1113, col: 5, offset: 35920}, + pos: position{line: 1174, col: 5, offset: 37707}, val: ")))", ignoreCase: false, want: "\")))\"", @@ -62976,11 +67480,11 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2532, col: 11, offset: 85205}, + pos: position{line: 2592, col: 11, offset: 86959}, name: "IndexTerm", }, &ruleRefExpr{ - pos: position{line: 2533, col: 11, offset: 85225}, + pos: position{line: 2593, col: 11, offset: 86979}, name: "InlineUserMacro", }, }, @@ -62992,80 +67496,80 @@ var g = &grammar{ }, { name: "InlinePassthrough", - pos: position{line: 2537, col: 1, offset: 85287}, + pos: position{line: 2597, col: 1, offset: 87041}, expr: &actionExpr{ - pos: position{line: 2539, col: 5, offset: 85375}, + pos: position{line: 2599, col: 5, offset: 87129}, run: (*parser).callonInlinePassthrough1, expr: &seqExpr{ - pos: position{line: 2539, col: 5, offset: 85375}, + pos: position{line: 2599, col: 5, offset: 87129}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2539, col: 5, offset: 85375}, + pos: position{line: 2599, col: 5, offset: 87129}, run: (*parser).callonInlinePassthrough3, }, &labeledExpr{ - pos: position{line: 2542, col: 5, offset: 85447}, + pos: position{line: 2602, col: 5, offset: 87201}, label: "element", expr: &choiceExpr{ - pos: position{line: 2543, col: 9, offset: 85465}, + pos: position{line: 2603, col: 9, offset: 87219}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1179, col: 26, offset: 39210}, + pos: position{line: 1240, col: 26, offset: 40997}, run: (*parser).callonInlinePassthrough6, expr: &seqExpr{ - pos: position{line: 1179, col: 26, offset: 39210}, + pos: position{line: 1240, col: 26, offset: 40997}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1177, col: 32, offset: 39178}, + pos: position{line: 1238, col: 32, offset: 40965}, val: "+++", ignoreCase: false, want: "\"+++\"", }, &labeledExpr{ - pos: position{line: 1179, col: 54, offset: 39238}, + pos: position{line: 1240, col: 54, offset: 41025}, label: "content", expr: &choiceExpr{ - pos: position{line: 1183, col: 33, offset: 39451}, + pos: position{line: 1244, col: 33, offset: 41238}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1183, col: 34, offset: 39452}, + pos: position{line: 1244, col: 34, offset: 41239}, run: (*parser).callonInlinePassthrough11, expr: &zeroOrMoreExpr{ - pos: position{line: 1183, col: 34, offset: 39452}, + pos: position{line: 1244, col: 34, offset: 41239}, expr: &seqExpr{ - pos: position{line: 1183, col: 35, offset: 39453}, + pos: position{line: 1244, col: 35, offset: 41240}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1183, col: 35, offset: 39453}, + pos: position{line: 1244, col: 35, offset: 41240}, expr: &litMatcher{ - pos: position{line: 1177, col: 32, offset: 39178}, + pos: position{line: 1238, col: 32, offset: 40965}, val: "+++", ignoreCase: false, want: "\"+++\"", }, }, &anyMatcher{ - line: 1183, col: 64, offset: 39482, + line: 1244, col: 64, offset: 41269, }, }, }, }, }, &actionExpr{ - pos: position{line: 1185, col: 11, offset: 39655}, + pos: position{line: 1246, col: 11, offset: 41442}, run: (*parser).callonInlinePassthrough17, expr: &zeroOrOneExpr{ - pos: position{line: 1185, col: 11, offset: 39655}, + pos: position{line: 1246, col: 11, offset: 41442}, expr: &seqExpr{ - pos: position{line: 1185, col: 12, offset: 39656}, + pos: position{line: 1246, col: 12, offset: 41443}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1185, col: 12, offset: 39656}, + pos: position{line: 1246, col: 12, offset: 41443}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlinePassthrough21, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -63074,27 +67578,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1185, col: 19, offset: 39663}, + pos: position{line: 1246, col: 19, offset: 41450}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonInlinePassthrough24, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -63104,16 +67608,16 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1185, col: 28, offset: 39672}, + pos: position{line: 1246, col: 28, offset: 41459}, expr: &litMatcher{ - pos: position{line: 1177, col: 32, offset: 39178}, + pos: position{line: 1238, col: 32, offset: 40965}, val: "+++", ignoreCase: false, want: "\"+++\"", }, }, &anyMatcher{ - line: 1185, col: 57, offset: 39701, + line: 1246, col: 57, offset: 41488, }, }, }, @@ -63123,15 +67627,15 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1177, col: 32, offset: 39178}, + pos: position{line: 1238, col: 32, offset: 40965}, val: "+++", ignoreCase: false, want: "\"+++\"", }, ¬Expr{ - pos: position{line: 1179, col: 121, offset: 39305}, + pos: position{line: 1240, col: 121, offset: 41092}, expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -63143,45 +67647,45 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1167, col: 26, offset: 38493}, + pos: position{line: 1228, col: 26, offset: 40280}, run: (*parser).callonInlinePassthrough35, expr: &seqExpr{ - pos: position{line: 1167, col: 26, offset: 38493}, + pos: position{line: 1228, col: 26, offset: 40280}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 1165, col: 32, offset: 38463}, + pos: position{line: 1226, col: 32, offset: 40250}, val: "+", ignoreCase: false, want: "\"+\"", }, &labeledExpr{ - pos: position{line: 1167, col: 54, offset: 38521}, + pos: position{line: 1228, col: 54, offset: 40308}, label: "content", expr: &choiceExpr{ - pos: position{line: 1171, col: 33, offset: 38734}, + pos: position{line: 1232, col: 33, offset: 40521}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 1171, col: 34, offset: 38735}, + pos: position{line: 1232, col: 34, offset: 40522}, run: (*parser).callonInlinePassthrough40, expr: &seqExpr{ - pos: position{line: 1171, col: 34, offset: 38735}, + pos: position{line: 1232, col: 34, offset: 40522}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1171, col: 35, offset: 38736}, + pos: position{line: 1232, col: 35, offset: 40523}, expr: &litMatcher{ - pos: position{line: 1165, col: 32, offset: 38463}, + pos: position{line: 1226, col: 32, offset: 40250}, val: "+", ignoreCase: false, want: "\"+\"", }, }, ¬Expr{ - pos: position{line: 1171, col: 64, offset: 38765}, + pos: position{line: 1232, col: 64, offset: 40552}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlinePassthrough45, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -63190,27 +67694,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1171, col: 71, offset: 38772}, + pos: position{line: 1232, col: 71, offset: 40559}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonInlinePassthrough48, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -63220,25 +67724,25 @@ var g = &grammar{ }, }, &anyMatcher{ - line: 1171, col: 80, offset: 38781, + line: 1232, col: 80, offset: 40568, }, &zeroOrMoreExpr{ - pos: position{line: 1171, col: 83, offset: 38784}, + pos: position{line: 1232, col: 83, offset: 40571}, expr: &seqExpr{ - pos: position{line: 1171, col: 84, offset: 38785}, + pos: position{line: 1232, col: 84, offset: 40572}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1171, col: 84, offset: 38785}, + pos: position{line: 1232, col: 84, offset: 40572}, expr: &seqExpr{ - pos: position{line: 1171, col: 86, offset: 38787}, + pos: position{line: 1232, col: 86, offset: 40574}, exprs: []interface{}{ &actionExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, run: (*parser).callonInlinePassthrough58, expr: &oneOrMoreExpr{ - pos: position{line: 2864, col: 11, offset: 95051}, + pos: position{line: 2923, col: 11, offset: 96777}, expr: &charClassMatcher{ - pos: position{line: 2864, col: 12, offset: 95052}, + pos: position{line: 2923, col: 12, offset: 96778}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -63247,7 +67751,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1165, col: 32, offset: 38463}, + pos: position{line: 1226, col: 32, offset: 40250}, val: "+", ignoreCase: false, want: "\"+\"", @@ -63256,36 +67760,36 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1171, col: 122, offset: 38823}, + pos: position{line: 1232, col: 122, offset: 40610}, expr: &litMatcher{ - pos: position{line: 1165, col: 32, offset: 38463}, + pos: position{line: 1226, col: 32, offset: 40250}, val: "+", ignoreCase: false, want: "\"+\"", }, }, ¬Expr{ - pos: position{line: 1171, col: 151, offset: 38852}, + pos: position{line: 1232, col: 151, offset: 40639}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonInlinePassthrough65, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -63295,7 +67799,7 @@ var g = &grammar{ }, }, &anyMatcher{ - line: 1171, col: 160, offset: 38861, + line: 1232, col: 160, offset: 40648, }, }, }, @@ -63304,18 +67808,18 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 1173, col: 11, offset: 39011}, + pos: position{line: 1234, col: 11, offset: 40798}, run: (*parser).callonInlinePassthrough71, expr: &seqExpr{ - pos: position{line: 1173, col: 12, offset: 39012}, + pos: position{line: 1234, col: 12, offset: 40799}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 1173, col: 12, offset: 39012}, + pos: position{line: 1234, col: 12, offset: 40799}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonInlinePassthrough74, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -63324,27 +67828,27 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1173, col: 19, offset: 39019}, + pos: position{line: 1234, col: 19, offset: 40806}, expr: &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonInlinePassthrough77, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -63354,16 +67858,16 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 1173, col: 28, offset: 39028}, + pos: position{line: 1234, col: 28, offset: 40815}, expr: &litMatcher{ - pos: position{line: 1165, col: 32, offset: 38463}, + pos: position{line: 1226, col: 32, offset: 40250}, val: "+", ignoreCase: false, want: "\"+\"", }, }, &anyMatcher{ - line: 1173, col: 57, offset: 39057, + line: 1234, col: 57, offset: 40844, }, }, }, @@ -63372,15 +67876,15 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 1165, col: 32, offset: 38463}, + pos: position{line: 1226, col: 32, offset: 40250}, val: "+", ignoreCase: false, want: "\"+\"", }, ¬Expr{ - pos: position{line: 1167, col: 121, offset: 38588}, + pos: position{line: 1228, col: 121, offset: 40375}, expr: &charClassMatcher{ - pos: position{line: 2786, col: 13, offset: 92722}, + pos: position{line: 2846, col: 13, offset: 94476}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -63392,7 +67896,7 @@ var g = &grammar{ }, }, &ruleRefExpr{ - pos: position{line: 2543, col: 57, offset: 85513}, + pos: position{line: 2603, col: 57, offset: 87267}, name: "PassthroughMacro", }, }, @@ -63404,29 +67908,29 @@ var g = &grammar{ }, { name: "Quote", - pos: position{line: 2548, col: 1, offset: 85573}, + pos: position{line: 2608, col: 1, offset: 87327}, expr: &actionExpr{ - pos: position{line: 2550, col: 5, offset: 85649}, + pos: position{line: 2610, col: 5, offset: 87403}, run: (*parser).callonQuote1, expr: &seqExpr{ - pos: position{line: 2550, col: 5, offset: 85649}, + pos: position{line: 2610, col: 5, offset: 87403}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2550, col: 5, offset: 85649}, + pos: position{line: 2610, col: 5, offset: 87403}, run: (*parser).callonQuote3, }, &labeledExpr{ - pos: position{line: 2553, col: 5, offset: 85709}, + pos: position{line: 2613, col: 5, offset: 87463}, label: "element", expr: &choiceExpr{ - pos: position{line: 2554, col: 9, offset: 85727}, + pos: position{line: 2614, col: 9, offset: 87481}, alternatives: []interface{}{ &ruleRefExpr{ - pos: position{line: 2554, col: 9, offset: 85727}, + pos: position{line: 2614, col: 9, offset: 87481}, name: "QuotedText", }, &ruleRefExpr{ - pos: position{line: 2555, col: 11, offset: 85749}, + pos: position{line: 2615, col: 11, offset: 87503}, name: "QuotedString", }, }, @@ -63438,69 +67942,69 @@ var g = &grammar{ }, { name: "TableColumnsAttribute", - pos: position{line: 2701, col: 1, offset: 89758}, + pos: position{line: 2761, col: 1, offset: 91512}, expr: &actionExpr{ - pos: position{line: 2701, col: 26, offset: 89783}, + pos: position{line: 2761, col: 26, offset: 91537}, run: (*parser).callonTableColumnsAttribute1, expr: &seqExpr{ - pos: position{line: 2701, col: 26, offset: 89783}, + pos: position{line: 2761, col: 26, offset: 91537}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2701, col: 26, offset: 89783}, + pos: position{line: 2761, col: 26, offset: 91537}, label: "cols", expr: &zeroOrMoreExpr{ - pos: position{line: 2701, col: 31, offset: 89788}, + pos: position{line: 2761, col: 31, offset: 91542}, expr: &actionExpr{ - pos: position{line: 2706, col: 5, offset: 89851}, + pos: position{line: 2766, col: 5, offset: 91605}, run: (*parser).callonTableColumnsAttribute5, expr: &seqExpr{ - pos: position{line: 2706, col: 5, offset: 89851}, + pos: position{line: 2766, col: 5, offset: 91605}, exprs: []interface{}{ ¬Expr{ - pos: position{line: 2706, col: 5, offset: 89851}, + pos: position{line: 2766, col: 5, offset: 91605}, expr: ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, &labeledExpr{ - pos: position{line: 2709, col: 5, offset: 89975}, + pos: position{line: 2769, col: 5, offset: 91729}, label: "multiplier", expr: &zeroOrOneExpr{ - pos: position{line: 2709, col: 16, offset: 89986}, + pos: position{line: 2769, col: 16, offset: 91740}, expr: &actionExpr{ - pos: position{line: 2709, col: 17, offset: 89987}, + pos: position{line: 2769, col: 17, offset: 91741}, run: (*parser).callonTableColumnsAttribute12, expr: &seqExpr{ - pos: position{line: 2709, col: 17, offset: 89987}, + pos: position{line: 2769, col: 17, offset: 91741}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2709, col: 17, offset: 89987}, + pos: position{line: 2769, col: 17, offset: 91741}, label: "n", expr: &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, + pos: position{line: 2915, col: 11, offset: 96634}, run: (*parser).callonTableColumnsAttribute15, expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, + pos: position{line: 2915, col: 12, offset: 96635}, exprs: []interface{}{ &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, + pos: position{line: 2915, col: 12, offset: 96635}, expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, + pos: position{line: 2915, col: 12, offset: 96635}, val: "-", ignoreCase: false, want: "\"-\"", }, }, &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, + pos: position{line: 2915, col: 17, offset: 96640}, expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, + pos: position{line: 2911, col: 10, offset: 96574}, run: (*parser).callonTableColumnsAttribute20, expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, + pos: position{line: 2911, col: 10, offset: 96574}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -63513,7 +68017,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 2709, col: 26, offset: 89996}, + pos: position{line: 2769, col: 26, offset: 91750}, val: "*", ignoreCase: false, want: "\"*\"", @@ -63524,38 +68028,38 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2710, col: 5, offset: 90024}, + pos: position{line: 2770, col: 5, offset: 91778}, label: "halign", expr: &zeroOrOneExpr{ - pos: position{line: 2710, col: 12, offset: 90031}, + pos: position{line: 2770, col: 12, offset: 91785}, expr: &choiceExpr{ - pos: position{line: 2711, col: 9, offset: 90041}, + pos: position{line: 2771, col: 9, offset: 91795}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2711, col: 9, offset: 90041}, + pos: position{line: 2771, col: 9, offset: 91795}, run: (*parser).callonTableColumnsAttribute26, expr: &litMatcher{ - pos: position{line: 2711, col: 9, offset: 90041}, + pos: position{line: 2771, col: 9, offset: 91795}, val: "<", ignoreCase: false, want: "\"<\"", }, }, &actionExpr{ - pos: position{line: 2712, col: 11, offset: 90088}, + pos: position{line: 2772, col: 11, offset: 91842}, run: (*parser).callonTableColumnsAttribute28, expr: &litMatcher{ - pos: position{line: 2712, col: 11, offset: 90088}, + pos: position{line: 2772, col: 11, offset: 91842}, val: ">", ignoreCase: false, want: "\">\"", }, }, &actionExpr{ - pos: position{line: 2713, col: 11, offset: 90136}, + pos: position{line: 2773, col: 11, offset: 91890}, run: (*parser).callonTableColumnsAttribute30, expr: &litMatcher{ - pos: position{line: 2713, col: 11, offset: 90136}, + pos: position{line: 2773, col: 11, offset: 91890}, val: "^", ignoreCase: false, want: "\"^\"", @@ -63566,38 +68070,38 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2715, col: 5, offset: 90186}, + pos: position{line: 2775, col: 5, offset: 91940}, label: "valign", expr: &zeroOrOneExpr{ - pos: position{line: 2715, col: 12, offset: 90193}, + pos: position{line: 2775, col: 12, offset: 91947}, expr: &choiceExpr{ - pos: position{line: 2716, col: 9, offset: 90203}, + pos: position{line: 2776, col: 9, offset: 91957}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2716, col: 9, offset: 90203}, + pos: position{line: 2776, col: 9, offset: 91957}, run: (*parser).callonTableColumnsAttribute35, expr: &litMatcher{ - pos: position{line: 2716, col: 9, offset: 90203}, + pos: position{line: 2776, col: 9, offset: 91957}, val: ".<", ignoreCase: false, want: "\".<\"", }, }, &actionExpr{ - pos: position{line: 2717, col: 11, offset: 90250}, + pos: position{line: 2777, col: 11, offset: 92004}, run: (*parser).callonTableColumnsAttribute37, expr: &litMatcher{ - pos: position{line: 2717, col: 11, offset: 90250}, + pos: position{line: 2777, col: 11, offset: 92004}, val: ".>", ignoreCase: false, want: "\".>\"", }, }, &actionExpr{ - pos: position{line: 2718, col: 11, offset: 90300}, + pos: position{line: 2778, col: 11, offset: 92054}, run: (*parser).callonTableColumnsAttribute39, expr: &litMatcher{ - pos: position{line: 2718, col: 11, offset: 90300}, + pos: position{line: 2778, col: 11, offset: 92054}, val: ".^", ignoreCase: false, want: "\".^\"", @@ -63608,35 +68112,35 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2720, col: 5, offset: 90351}, + pos: position{line: 2780, col: 5, offset: 92105}, label: "weight", expr: &zeroOrOneExpr{ - pos: position{line: 2720, col: 12, offset: 90358}, + pos: position{line: 2780, col: 12, offset: 92112}, expr: &choiceExpr{ - pos: position{line: 2720, col: 13, offset: 90359}, + pos: position{line: 2780, col: 13, offset: 92113}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2856, col: 11, offset: 94908}, + pos: position{line: 2915, col: 11, offset: 96634}, run: (*parser).callonTableColumnsAttribute44, expr: &seqExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, + pos: position{line: 2915, col: 12, offset: 96635}, exprs: []interface{}{ &zeroOrOneExpr{ - pos: position{line: 2856, col: 12, offset: 94909}, + pos: position{line: 2915, col: 12, offset: 96635}, expr: &litMatcher{ - pos: position{line: 2856, col: 12, offset: 94909}, + pos: position{line: 2915, col: 12, offset: 96635}, val: "-", ignoreCase: false, want: "\"-\"", }, }, &oneOrMoreExpr{ - pos: position{line: 2856, col: 17, offset: 94914}, + pos: position{line: 2915, col: 17, offset: 96640}, expr: &actionExpr{ - pos: position{line: 2852, col: 10, offset: 94848}, + pos: position{line: 2911, col: 10, offset: 96574}, run: (*parser).callonTableColumnsAttribute49, expr: &charClassMatcher{ - pos: position{line: 2852, col: 10, offset: 94848}, + pos: position{line: 2911, col: 10, offset: 96574}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -63648,10 +68152,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2720, col: 23, offset: 90369}, + pos: position{line: 2780, col: 23, offset: 92123}, run: (*parser).callonTableColumnsAttribute51, expr: &litMatcher{ - pos: position{line: 2720, col: 23, offset: 90369}, + pos: position{line: 2780, col: 23, offset: 92123}, val: "~", ignoreCase: false, want: "\"~\"", @@ -63662,15 +68166,15 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2721, col: 5, offset: 90411}, + pos: position{line: 2781, col: 5, offset: 92165}, label: "style", expr: &zeroOrOneExpr{ - pos: position{line: 2721, col: 11, offset: 90417}, + pos: position{line: 2781, col: 11, offset: 92171}, expr: &actionExpr{ - pos: position{line: 2721, col: 12, offset: 90418}, + pos: position{line: 2781, col: 12, offset: 92172}, run: (*parser).callonTableColumnsAttribute55, expr: &charClassMatcher{ - pos: position{line: 2721, col: 12, offset: 90418}, + pos: position{line: 2781, col: 12, offset: 92172}, val: "[adehlms]", chars: []rune{'a', 'd', 'e', 'h', 'l', 'm', 's'}, ignoreCase: false, @@ -63680,12 +68184,12 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2723, col: 5, offset: 90548}, + pos: position{line: 2783, col: 5, offset: 92302}, label: "comma", expr: &zeroOrOneExpr{ - pos: position{line: 2723, col: 11, offset: 90554}, + pos: position{line: 2783, col: 11, offset: 92308}, expr: &litMatcher{ - pos: position{line: 2723, col: 12, offset: 90555}, + pos: position{line: 2783, col: 12, offset: 92309}, val: ",", ignoreCase: false, want: "\",\"", @@ -63693,7 +68197,7 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 2724, col: 5, offset: 90565}, + pos: position{line: 2784, col: 5, offset: 92319}, run: (*parser).callonTableColumnsAttribute60, }, }, @@ -63702,9 +68206,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -63713,23 +68217,23 @@ var g = &grammar{ }, { name: "UserMacroBlock", - pos: position{line: 2751, col: 1, offset: 91574}, + pos: position{line: 2811, col: 1, offset: 93328}, expr: &actionExpr{ - pos: position{line: 2752, col: 5, offset: 91597}, + pos: position{line: 2812, col: 5, offset: 93351}, run: (*parser).callonUserMacroBlock1, expr: &seqExpr{ - pos: position{line: 2752, col: 5, offset: 91597}, + pos: position{line: 2812, col: 5, offset: 93351}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2752, col: 5, offset: 91597}, + pos: position{line: 2812, col: 5, offset: 93351}, label: "name", expr: &actionExpr{ - pos: position{line: 2775, col: 18, offset: 92386}, + pos: position{line: 2835, col: 18, offset: 94140}, run: (*parser).callonUserMacroBlock4, expr: &oneOrMoreExpr{ - pos: position{line: 2775, col: 19, offset: 92387}, + pos: position{line: 2835, col: 19, offset: 94141}, expr: &charClassMatcher{ - pos: position{line: 2775, col: 19, offset: 92387}, + pos: position{line: 2835, col: 19, offset: 94141}, val: "[_-0-9\\pL]", chars: []rune{'_', '-'}, ranges: []rune{'0', '9'}, @@ -63741,25 +68245,25 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 2753, col: 5, offset: 91623}, + pos: position{line: 2813, col: 5, offset: 93377}, run: (*parser).callonUserMacroBlock7, }, &litMatcher{ - pos: position{line: 2757, col: 5, offset: 91763}, + pos: position{line: 2817, col: 5, offset: 93517}, val: "::", ignoreCase: false, want: "\"::\"", }, &labeledExpr{ - pos: position{line: 2758, col: 5, offset: 91773}, + pos: position{line: 2818, col: 5, offset: 93527}, label: "value", expr: &actionExpr{ - pos: position{line: 2779, col: 19, offset: 92462}, + pos: position{line: 2839, col: 19, offset: 94216}, run: (*parser).callonUserMacroBlock10, expr: &zeroOrMoreExpr{ - pos: position{line: 2779, col: 19, offset: 92462}, + pos: position{line: 2839, col: 19, offset: 94216}, expr: &charClassMatcher{ - pos: position{line: 2779, col: 19, offset: 92462}, + pos: position{line: 2839, col: 19, offset: 94216}, val: "[^:[ \\r\\n]", chars: []rune{':', '[', ' ', '\r', '\n'}, ignoreCase: false, @@ -63769,36 +68273,36 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2759, col: 5, offset: 91801}, + pos: position{line: 2819, col: 5, offset: 93555}, label: "inlineAttributes", expr: &ruleRefExpr{ - pos: position{line: 2759, col: 23, offset: 91819}, + pos: position{line: 2819, col: 23, offset: 93573}, name: "InlineAttributes", }, }, &choiceExpr{ - pos: position{line: 2876, col: 8, offset: 95305}, + pos: position{line: 2935, col: 8, offset: 97034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2869, col: 12, offset: 95165}, + pos: position{line: 2928, col: 12, offset: 96894}, run: (*parser).callonUserMacroBlock16, expr: &choiceExpr{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, alternatives: []interface{}{ &litMatcher{ - pos: position{line: 2869, col: 13, offset: 95166}, + pos: position{line: 2928, col: 13, offset: 96895}, val: "\n", ignoreCase: false, want: "\"\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 20, offset: 95173}, + pos: position{line: 2928, col: 20, offset: 96902}, val: "\r\n", ignoreCase: false, want: "\"\\r\\n\"", }, &litMatcher{ - pos: position{line: 2869, col: 29, offset: 95182}, + pos: position{line: 2928, col: 29, offset: 96911}, val: "\r", ignoreCase: false, want: "\"\\r\"", @@ -63807,9 +68311,9 @@ var g = &grammar{ }, }, ¬Expr{ - pos: position{line: 2873, col: 8, offset: 95255}, + pos: position{line: 2932, col: 8, offset: 96984}, expr: &anyMatcher{ - line: 2873, col: 9, offset: 95256, + line: 2932, col: 9, offset: 96985, }, }, }, @@ -63820,23 +68324,23 @@ var g = &grammar{ }, { name: "InlineUserMacro", - pos: position{line: 2763, col: 1, offset: 91973}, + pos: position{line: 2823, col: 1, offset: 93727}, expr: &actionExpr{ - pos: position{line: 2764, col: 5, offset: 91997}, + pos: position{line: 2824, col: 5, offset: 93751}, run: (*parser).callonInlineUserMacro1, expr: &seqExpr{ - pos: position{line: 2764, col: 5, offset: 91997}, + pos: position{line: 2824, col: 5, offset: 93751}, exprs: []interface{}{ &labeledExpr{ - pos: position{line: 2764, col: 5, offset: 91997}, + pos: position{line: 2824, col: 5, offset: 93751}, label: "name", expr: &actionExpr{ - pos: position{line: 2775, col: 18, offset: 92386}, + pos: position{line: 2835, col: 18, offset: 94140}, run: (*parser).callonInlineUserMacro4, expr: &oneOrMoreExpr{ - pos: position{line: 2775, col: 19, offset: 92387}, + pos: position{line: 2835, col: 19, offset: 94141}, expr: &charClassMatcher{ - pos: position{line: 2775, col: 19, offset: 92387}, + pos: position{line: 2835, col: 19, offset: 94141}, val: "[_-0-9\\pL]", chars: []rune{'_', '-'}, ranges: []rune{'0', '9'}, @@ -63848,25 +68352,25 @@ var g = &grammar{ }, }, &andCodeExpr{ - pos: position{line: 2765, col: 5, offset: 92023}, + pos: position{line: 2825, col: 5, offset: 93777}, run: (*parser).callonInlineUserMacro7, }, &litMatcher{ - pos: position{line: 2769, col: 5, offset: 92163}, + pos: position{line: 2829, col: 5, offset: 93917}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 2770, col: 5, offset: 92172}, + pos: position{line: 2830, col: 5, offset: 93926}, label: "value", expr: &actionExpr{ - pos: position{line: 2779, col: 19, offset: 92462}, + pos: position{line: 2839, col: 19, offset: 94216}, run: (*parser).callonInlineUserMacro10, expr: &zeroOrMoreExpr{ - pos: position{line: 2779, col: 19, offset: 92462}, + pos: position{line: 2839, col: 19, offset: 94216}, expr: &charClassMatcher{ - pos: position{line: 2779, col: 19, offset: 92462}, + pos: position{line: 2839, col: 19, offset: 94216}, val: "[^:[ \\r\\n]", chars: []rune{':', '[', ' ', '\r', '\n'}, ignoreCase: false, @@ -63876,10 +68380,10 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 2771, col: 5, offset: 92200}, + pos: position{line: 2831, col: 5, offset: 93954}, label: "inlineAttributes", expr: &ruleRefExpr{ - pos: position{line: 2771, col: 23, offset: 92218}, + pos: position{line: 2831, col: 23, offset: 93972}, name: "InlineAttributes", }, }, @@ -63889,36 +68393,36 @@ var g = &grammar{ }, { name: "FileLocation", - pos: position{line: 2821, col: 1, offset: 93824}, + pos: position{line: 2881, col: 1, offset: 95578}, expr: &actionExpr{ - pos: position{line: 2821, col: 17, offset: 93840}, + pos: position{line: 2881, col: 17, offset: 95594}, run: (*parser).callonFileLocation1, expr: &labeledExpr{ - pos: position{line: 2821, col: 17, offset: 93840}, + pos: position{line: 2881, col: 17, offset: 95594}, label: "path", expr: &oneOrMoreExpr{ - pos: position{line: 2821, col: 22, offset: 93845}, + pos: position{line: 2881, col: 22, offset: 95599}, expr: &choiceExpr{ - pos: position{line: 2821, col: 23, offset: 93846}, + pos: position{line: 2881, col: 23, offset: 95600}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, run: (*parser).callonFileLocation5, expr: &labeledExpr{ - pos: position{line: 2833, col: 13, offset: 94250}, + pos: position{line: 2893, col: 13, offset: 96004}, label: "elements", expr: &oneOrMoreExpr{ - pos: position{line: 2833, col: 22, offset: 94259}, + pos: position{line: 2893, col: 22, offset: 96013}, expr: &choiceExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, run: (*parser).callonFileLocation9, expr: &oneOrMoreExpr{ - pos: position{line: 2834, col: 5, offset: 94265}, + pos: position{line: 2894, col: 5, offset: 96019}, expr: &charClassMatcher{ - pos: position{line: 2834, col: 6, offset: 94266}, + pos: position{line: 2894, col: 6, offset: 96020}, val: "[^\\r\\n[]�&<>{ ]", chars: []rune{'\r', '\n', '[', ']', '�', '&', '<', '>', '{', ' '}, ignoreCase: false, @@ -63927,44 +68431,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonFileLocation12, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonFileLocation14, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonFileLocation17, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonFileLocation21, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -63973,9 +68477,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -63989,33 +68493,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonFileLocation28, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonFileLocation33, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -64023,12 +68527,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonFileLocation35, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -64045,7 +68549,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -64054,28 +68558,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonFileLocation39, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonFileLocation43, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -64084,9 +68588,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -64100,33 +68604,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonFileLocation50, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonFileLocation55, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -64134,12 +68638,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonFileLocation57, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -64156,7 +68660,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -64165,28 +68669,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonFileLocation61, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonFileLocation65, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -64195,9 +68699,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -64211,7 +68715,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -64226,49 +68730,49 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonFileLocation71, expr: &seqExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 2572, col: 5, offset: 86111}, + pos: position{line: 2632, col: 5, offset: 87865}, run: (*parser).callonFileLocation73, }, &labeledExpr{ - pos: position{line: 2575, col: 5, offset: 86182}, + pos: position{line: 2635, col: 5, offset: 87936}, label: "element", expr: &choiceExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 2577, col: 9, offset: 86280}, + pos: position{line: 2637, col: 9, offset: 88034}, run: (*parser).callonFileLocation76, expr: &choiceExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, run: (*parser).callonFileLocation78, expr: &seqExpr{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 458, col: 27, offset: 15225}, + pos: position{line: 599, col: 27, offset: 19824}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 458, col: 32, offset: 15230}, + pos: position{line: 599, col: 32, offset: 19829}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonFileLocation82, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -64278,12 +68782,12 @@ var g = &grammar{ }, }, &zeroOrMoreExpr{ - pos: position{line: 458, col: 40, offset: 15238}, + pos: position{line: 599, col: 40, offset: 19837}, expr: &actionExpr{ - pos: position{line: 2860, col: 10, offset: 94984}, + pos: position{line: 2919, col: 10, offset: 96710}, run: (*parser).callonFileLocation86, expr: &charClassMatcher{ - pos: position{line: 2860, col: 11, offset: 94985}, + pos: position{line: 2919, col: 11, offset: 96711}, val: "[ \\t]", chars: []rune{' ', '\t'}, ignoreCase: false, @@ -64292,27 +68796,27 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 47, offset: 15245}, + pos: position{line: 599, col: 47, offset: 19844}, val: ",", ignoreCase: false, want: "\",\"", }, &labeledExpr{ - pos: position{line: 458, col: 51, offset: 15249}, + pos: position{line: 599, col: 51, offset: 19848}, label: "label", expr: &oneOrMoreExpr{ - pos: position{line: 468, col: 24, offset: 15662}, + pos: position{line: 609, col: 24, offset: 20261}, expr: &choiceExpr{ - pos: position{line: 469, col: 5, offset: 15668}, + pos: position{line: 610, col: 5, offset: 20267}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, run: (*parser).callonFileLocation92, expr: &seqExpr{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 469, col: 6, offset: 15669}, + pos: position{line: 610, col: 6, offset: 20268}, val: "[0-9\\pL]", ranges: []rune{'0', '9'}, classes: []*unicode.RangeTable{rangeTable("L")}, @@ -64320,9 +68824,9 @@ var g = &grammar{ inverted: false, }, &oneOrMoreExpr{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, expr: &charClassMatcher{ - pos: position{line: 469, col: 14, offset: 15677}, + pos: position{line: 610, col: 14, offset: 20276}, val: "[^\\r\\n{<>]", chars: []rune{'\r', '\n', '{', '<', '>'}, ignoreCase: false, @@ -64333,44 +68837,44 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonFileLocation97, expr: &seqExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, exprs: []interface{}{ &andCodeExpr{ - pos: position{line: 416, col: 5, offset: 13671}, + pos: position{line: 557, col: 5, offset: 18336}, run: (*parser).callonFileLocation99, }, &labeledExpr{ - pos: position{line: 419, col: 5, offset: 13735}, + pos: position{line: 560, col: 5, offset: 18400}, label: "element", expr: &choiceExpr{ - pos: position{line: 419, col: 14, offset: 13744}, + pos: position{line: 560, col: 14, offset: 18409}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, run: (*parser).callonFileLocation102, expr: &seqExpr{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 430, col: 25, offset: 14206}, + pos: position{line: 571, col: 25, offset: 18773}, val: "{counter:", ignoreCase: false, want: "\"{counter:\"", }, &labeledExpr{ - pos: position{line: 430, col: 37, offset: 14218}, + pos: position{line: 571, col: 37, offset: 18785}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonFileLocation106, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -64379,9 +68883,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -64395,33 +68899,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 430, col: 56, offset: 14237}, + pos: position{line: 571, col: 56, offset: 18804}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 430, col: 62, offset: 14243}, + pos: position{line: 571, col: 62, offset: 18810}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonFileLocation113, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonFileLocation118, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -64429,12 +68933,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonFileLocation120, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -64451,7 +68955,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 430, col: 78, offset: 14259}, + pos: position{line: 571, col: 78, offset: 18826}, val: "}", ignoreCase: false, want: "\"}\"", @@ -64460,28 +68964,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, run: (*parser).callonFileLocation124, expr: &seqExpr{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 434, col: 25, offset: 14361}, + pos: position{line: 575, col: 25, offset: 18944}, val: "{counter2:", ignoreCase: false, want: "\"{counter2:\"", }, &labeledExpr{ - pos: position{line: 434, col: 38, offset: 14374}, + pos: position{line: 575, col: 38, offset: 18957}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonFileLocation128, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -64490,9 +68994,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -64506,33 +69010,33 @@ var g = &grammar{ }, }, &labeledExpr{ - pos: position{line: 434, col: 57, offset: 14393}, + pos: position{line: 575, col: 57, offset: 18976}, label: "start", expr: &zeroOrOneExpr{ - pos: position{line: 434, col: 63, offset: 14399}, + pos: position{line: 575, col: 63, offset: 18982}, expr: &actionExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, run: (*parser).callonFileLocation135, expr: &seqExpr{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 438, col: 17, offset: 14506}, + pos: position{line: 579, col: 17, offset: 19105}, val: ":", ignoreCase: false, want: "\":\"", }, &labeledExpr{ - pos: position{line: 438, col: 21, offset: 14510}, + pos: position{line: 579, col: 21, offset: 19109}, label: "start", expr: &choiceExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, alternatives: []interface{}{ &actionExpr{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, run: (*parser).callonFileLocation140, expr: &charClassMatcher{ - pos: position{line: 438, col: 28, offset: 14517}, + pos: position{line: 579, col: 28, offset: 19116}, val: "[A-Za-z]", ranges: []rune{'A', 'Z', 'a', 'z'}, ignoreCase: false, @@ -64540,12 +69044,12 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, run: (*parser).callonFileLocation142, expr: &oneOrMoreExpr{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, expr: &charClassMatcher{ - pos: position{line: 440, col: 9, offset: 14571}, + pos: position{line: 581, col: 9, offset: 19170}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -64562,7 +69066,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 434, col: 79, offset: 14415}, + pos: position{line: 575, col: 79, offset: 18998}, val: "}", ignoreCase: false, want: "\"}\"", @@ -64571,28 +69075,28 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, run: (*parser).callonFileLocation146, expr: &seqExpr{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 423, col: 31, offset: 13861}, + pos: position{line: 564, col: 31, offset: 18526}, val: "{", ignoreCase: false, want: "\"{\"", }, &labeledExpr{ - pos: position{line: 423, col: 35, offset: 13865}, + pos: position{line: 564, col: 35, offset: 18530}, label: "name", expr: &actionExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, run: (*parser).callonFileLocation150, expr: &seqExpr{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, exprs: []interface{}{ &charClassMatcher{ - pos: position{line: 120, col: 18, offset: 3643}, + pos: position{line: 262, col: 18, offset: 8296}, val: "[_0-9\\pL]", chars: []rune{'_'}, ranges: []rune{'0', '9'}, @@ -64601,9 +69105,9 @@ var g = &grammar{ inverted: false, }, &zeroOrMoreExpr{ - pos: position{line: 120, col: 28, offset: 3653}, + pos: position{line: 262, col: 28, offset: 8306}, expr: &charClassMatcher{ - pos: position{line: 120, col: 29, offset: 3654}, + pos: position{line: 262, col: 29, offset: 8307}, val: "[-0-9\\pL]", chars: []rune{'-'}, ranges: []rune{'0', '9'}, @@ -64617,7 +69121,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 423, col: 54, offset: 13884}, + pos: position{line: 564, col: 54, offset: 18549}, val: "}", ignoreCase: false, want: "\"}\"", @@ -64632,10 +69136,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, run: (*parser).callonFileLocation156, expr: &litMatcher{ - pos: position{line: 473, col: 8, offset: 15901}, + pos: position{line: 614, col: 8, offset: 20500}, val: "{", ignoreCase: false, want: "\"{\"", @@ -64646,7 +69150,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 458, col: 79, offset: 15277}, + pos: position{line: 599, col: 79, offset: 19876}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -64655,27 +69159,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, run: (*parser).callonFileLocation159, expr: &seqExpr{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 460, col: 9, offset: 15350}, + pos: position{line: 601, col: 9, offset: 19949}, val: "<<", ignoreCase: false, want: "\"<<\"", }, &labeledExpr{ - pos: position{line: 460, col: 14, offset: 15355}, + pos: position{line: 601, col: 14, offset: 19954}, label: "id", expr: &actionExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, run: (*parser).callonFileLocation163, expr: &oneOrMoreExpr{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, expr: &charClassMatcher{ - pos: position{line: 2848, col: 7, offset: 94706}, + pos: position{line: 2907, col: 7, offset: 96432}, val: "[^[]<>,]", chars: []rune{'[', ']', '<', '>', ','}, ignoreCase: false, @@ -64685,7 +69189,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 460, col: 22, offset: 15363}, + pos: position{line: 601, col: 22, offset: 19962}, val: ">>", ignoreCase: false, want: "\">>\"", @@ -64697,10 +69201,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2580, col: 11, offset: 86384}, + pos: position{line: 2640, col: 11, offset: 88138}, run: (*parser).callonFileLocation167, expr: &charClassMatcher{ - pos: position{line: 2580, col: 12, offset: 86385}, + pos: position{line: 2640, col: 12, offset: 88139}, val: "[<>&]", chars: []rune{'<', '>', '&'}, ignoreCase: false, @@ -64714,10 +69218,10 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, run: (*parser).callonFileLocation169, expr: &litMatcher{ - pos: position{line: 2840, col: 7, offset: 94490}, + pos: position{line: 2899, col: 7, offset: 96216}, val: "{", ignoreCase: false, want: "\"{\"", @@ -64729,27 +69233,27 @@ var g = &grammar{ }, }, &actionExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, run: (*parser).callonFileLocation171, expr: &seqExpr{ - pos: position{line: 910, col: 23, offset: 29026}, + pos: position{line: 1065, col: 23, offset: 33958}, exprs: []interface{}{ &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", }, &labeledExpr{ - pos: position{line: 910, col: 51, offset: 29054}, + pos: position{line: 1065, col: 51, offset: 33986}, label: "ref", expr: &actionExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, run: (*parser).callonFileLocation175, expr: &oneOrMoreExpr{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, expr: &charClassMatcher{ - pos: position{line: 910, col: 56, offset: 29059}, + pos: position{line: 1065, col: 56, offset: 33991}, val: "[0-9]", ranges: []rune{'0', '9'}, ignoreCase: false, @@ -64759,7 +69263,7 @@ var g = &grammar{ }, }, &litMatcher{ - pos: position{line: 908, col: 32, offset: 28994}, + pos: position{line: 1063, col: 32, offset: 33926}, val: "�", ignoreCase: false, want: "\"�\"", @@ -64776,14612 +69280,17628 @@ var g = &grammar{ }, } -func (c *current) onDocumentFragment19() (interface{}, error) { +func (c *current) onDocumentRawLine9() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine9() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine9() +} + +func (c *current) onDocumentRawLine19() (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine19() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine19() +} + +func (c *current) onDocumentRawLine28() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine28() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine28() +} + +func (c *current) onDocumentRawLine37() (interface{}, error) { + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonDocumentRawLine37() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine37() +} + +func (c *current) onDocumentRawLine42() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + +} + +func (p *parser) callonDocumentRawLine42() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine42() +} + +func (c *current) onDocumentRawLine49() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine49() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine49() +} + +func (c *current) onDocumentRawLine61() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine61() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine61() +} + +func (c *current) onDocumentRawLine63() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonDocumentRawLine63() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine63() +} + +func (c *current) onDocumentRawLine56(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonDocumentRawLine56() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine56(stack["start"]) +} + +func (c *current) onDocumentRawLine45(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +} + +func (p *parser) callonDocumentRawLine45() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine45(stack["name"], stack["start"]) +} + +func (c *current) onDocumentRawLine71() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine71() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine71() +} + +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) onDocumentRawLine85() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonDocumentRawLine85() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine85() +} + +func (c *current) onDocumentRawLine78(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonDocumentRawLine78() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine78(stack["start"]) +} + +func (c *current) onDocumentRawLine67(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +} + +func (p *parser) callonDocumentRawLine67() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine67(stack["name"], stack["start"]) +} + +func (c *current) onDocumentRawLine93() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine93() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine93() +} + +func (c *current) onDocumentRawLine89(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) +} + +func (p *parser) callonDocumentRawLine89() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine89(stack["name"]) +} + +func (c *current) onDocumentRawLine40(element interface{}) (interface{}, error) { + return element, nil + +} + +func (p *parser) callonDocumentRawLine40() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine40(stack["element"]) +} + +func (c *current) onDocumentRawLine99() (interface{}, error) { + // standalone '{' + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonDocumentRawLine99() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine99() +} + +func (c *current) onDocumentRawLine24(element interface{}) (interface{}, error) { + + return element, nil + +} + +func (p *parser) callonDocumentRawLine24() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine24(stack["element"]) +} + +func (c *current) onDocumentRawLine17(elements interface{}) (interface{}, error) { + return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil + +} + +func (p *parser) callonDocumentRawLine17() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine17(stack["elements"]) +} + +func (c *current) onDocumentRawLine102() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine102() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine102() +} + +func (c *current) onDocumentRawLine5(name, value interface{}) (interface{}, error) { + return types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace), string(c.text)) + +} + +func (p *parser) callonDocumentRawLine5() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine5(stack["name"], stack["value"]) +} + +func (c *current) onDocumentRawLine113() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine113() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine113() +} + +func (c *current) onDocumentRawLine120() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine120() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine120() +} + +func (c *current) onDocumentRawLine123() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine123() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine123() +} + +func (c *current) onDocumentRawLine109(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) +} + +func (p *parser) callonDocumentRawLine109() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine109(stack["name"]) +} + +func (c *current) onDocumentRawLine134() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine134() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine134() +} + +func (c *current) onDocumentRawLine141() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine141() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine141() +} + +func (c *current) onDocumentRawLine144() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine144() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine144() +} + +func (c *current) onDocumentRawLine130(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) +} + +func (p *parser) callonDocumentRawLine130() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine130(stack["name"]) +} + +func (c *current) onDocumentRawLine162() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine162() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine162() +} + +func (c *current) onDocumentRawLine165() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine165() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine165() +} + +func (c *current) onDocumentRawLine158() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonDocumentRawLine158() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine158() +} + +func (c *current) onDocumentRawLine176() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine176() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine176() +} + +func (c *current) onDocumentRawLine179() (interface{}, error) { + // TODO: just use "\n" + 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) onDocumentRawLine172() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) +} + +func (p *parser) callonDocumentRawLine172() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine172() +} + +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) onDocumentRawLine193() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine193() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine193() +} + +func (c *current) onDocumentRawLine186() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) +} + +func (p *parser) callonDocumentRawLine186() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine186() +} + +func (c *current) onDocumentRawLine204() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine204() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine204() +} + +func (c *current) onDocumentRawLine207() (interface{}, error) { + // TODO: just use "\n" + 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) onDocumentRawLine200() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) +} + +func (p *parser) callonDocumentRawLine200() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine200() +} + +func (c *current) onDocumentRawLine218() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine218() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine218() +} + +func (c *current) onDocumentRawLine221() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine221() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine221() +} + +func (c *current) onDocumentRawLine214() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) +} + +func (p *parser) callonDocumentRawLine214() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine214() +} + +func (c *current) onDocumentRawLine232() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine232() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine232() +} + +func (c *current) onDocumentRawLine235() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine235() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine235() +} + +func (c *current) onDocumentRawLine228() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) +} + +func (p *parser) callonDocumentRawLine228() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine228() +} + +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) onDocumentRawLine249() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine249() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine249() +} + +func (c *current) onDocumentRawLine242() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) +} + +func (p *parser) callonDocumentRawLine242() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine242() +} + +func (c *current) onDocumentRawLine260() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine260() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine260() +} + +func (c *current) onDocumentRawLine263() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentRawLine263() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine263() +} + +func (c *current) onDocumentRawLine256() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) +} + +func (p *parser) callonDocumentRawLine256() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine256() +} + +func (c *current) onDocumentRawLine152(delimiter interface{}) (interface{}, error) { + return delimiter, nil + +} + +func (p *parser) callonDocumentRawLine152() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine152(stack["delimiter"]) +} + +func (c *current) onDocumentRawLine272() (bool, error) { + // should only be enabled when reading files to include, not the main (root) file + return c.isSectionEnabled(), nil + +} + +func (p *parser) callonDocumentRawLine272() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine272() +} + +func (c *current) onDocumentRawLine273() (bool, error) { + + return !c.isWithinDelimitedBlock(), nil + +} + +func (p *parser) callonDocumentRawLine273() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine273() +} + +func (c *current) onDocumentRawLine275() (interface{}, error) { + + // `=` is level 0, `==` is level 1, etc. + return (len(c.text) - 1), nil + +} + +func (p *parser) callonDocumentRawLine275() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine275() +} + +func (c *current) onDocumentRawLine278(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) callonDocumentRawLine278() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine278(stack["level"]) +} + +func (c *current) onDocumentRawLine279(level interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + +} + +func (p *parser) callonDocumentRawLine279() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine279(stack["level"]) +} + +func (c *current) onDocumentRawLine270(level interface{}) (interface{}, error) { + return types.NewRawSection(level.(int), string(c.text)) // just retain the raw content + +} + +func (p *parser) callonDocumentRawLine270() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentRawLine270(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) onFileInclusion3() (bool, error) { + // skip if disabled + return c.isRuleEnabled(FileInclusion) + +} + +func (p *parser) callonFileInclusion3() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion3() +} + +func (c *current) onFileInclusion4() error { + // force/enable attribute substitution // TODO: why? + // log.Debug("entering FileInclusion rule") + return c.setCurrentSubstitution("attributes") + +} + +func (p *parser) callonFileInclusion4() error { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion4() +} + +func (c *current) onFileInclusion18() (interface{}, error) { + // not supported for now: EOL, space, "{", "[", "]" + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonFileInclusion18() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion18() +} + +func (c *current) onFileInclusion23() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + +} + +func (p *parser) callonFileInclusion23() (bool, 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) onFileInclusion42() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion42() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion42() +} + +func (c *current) onFileInclusion44() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonFileInclusion44() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion44() +} + +func (c *current) onFileInclusion37(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonFileInclusion37() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion37(stack["start"]) +} + +func (c *current) onFileInclusion26(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +} + +func (p *parser) callonFileInclusion26() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion26(stack["name"], stack["start"]) +} + +func (c *current) onFileInclusion52() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion52() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion52() +} + +func (c *current) onFileInclusion64() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion64() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion64() +} + +func (c *current) onFileInclusion66() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonFileInclusion66() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion66() +} + +func (c *current) onFileInclusion59(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonFileInclusion59() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion59(stack["start"]) +} + +func (c *current) onFileInclusion48(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +} + +func (p *parser) callonFileInclusion48() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion48(stack["name"], stack["start"]) +} + +func (c *current) onFileInclusion74() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion74() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion74() +} + +func (c *current) onFileInclusion70(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) +} + +func (p *parser) callonFileInclusion70() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion70(stack["name"]) +} + +func (c *current) onFileInclusion21(element interface{}) (interface{}, error) { + return element, nil + +} + +func (p *parser) callonFileInclusion21() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion21(stack["element"]) +} + +func (c *current) onFileInclusion82() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) + +} + +func (p *parser) callonFileInclusion82() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion82() +} + +func (c *current) onFileInclusion91() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion91() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion91() +} + +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) onFileInclusion101() (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) callonFileInclusion101() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion101() +} + +func (c *current) onFileInclusion108() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + +} + +func (p *parser) callonFileInclusion108() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion108() +} + +func (c *current) onFileInclusion115() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion115() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion115() +} + +func (c *current) onFileInclusion127() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion127() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion127() +} + +func (c *current) onFileInclusion129() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonFileInclusion129() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion129() +} + +func (c *current) onFileInclusion122(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonFileInclusion122() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion122(stack["start"]) +} + +func (c *current) onFileInclusion111(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +} + +func (p *parser) callonFileInclusion111() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion111(stack["name"], stack["start"]) +} + +func (c *current) onFileInclusion137() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion137() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion137() +} + +func (c *current) onFileInclusion149() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion149() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion149() +} + +func (c *current) onFileInclusion151() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonFileInclusion151() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion151() +} + +func (c *current) onFileInclusion144(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonFileInclusion144() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion144(stack["start"]) +} + +func (c *current) onFileInclusion133(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +} + +func (p *parser) callonFileInclusion133() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion133(stack["name"], stack["start"]) +} + +func (c *current) onFileInclusion159() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion159() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion159() +} + +func (c *current) onFileInclusion155(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) +} + +func (p *parser) callonFileInclusion155() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion155(stack["name"]) +} + +func (c *current) onFileInclusion106(element interface{}) (interface{}, error) { + return element, nil + +} + +func (p *parser) callonFileInclusion106() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion106(stack["element"]) +} + +func (c *current) onFileInclusion165() (interface{}, error) { + + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonFileInclusion165() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion165() +} + +func (c *current) onFileInclusion87(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) + +} + +func (p *parser) callonFileInclusion87() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion87(stack["id"], stack["label"]) +} + +func (c *current) onFileInclusion172() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion172() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion172() +} + +func (c *current) onFileInclusion168(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) + +} + +func (p *parser) callonFileInclusion168() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion168(stack["id"]) +} + +func (c *current) onFileInclusion85() (interface{}, error) { + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonFileInclusion85() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion85() +} + +func (c *current) onFileInclusion176() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) + +} + +func (p *parser) callonFileInclusion176() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion176() +} + +func (c *current) onFileInclusion80(element interface{}) (interface{}, error) { + return element, nil + +} + +func (p *parser) callonFileInclusion80() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion80(stack["element"]) +} + +func (c *current) onFileInclusion178() (interface{}, error) { + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonFileInclusion178() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion178() +} + +func (c *current) onFileInclusion14(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) + +} + +func (p *parser) callonFileInclusion14() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion14(stack["elements"]) +} + +func (c *current) onFileInclusion184() (interface{}, error) { + return string(c.text), nil +} + +func (p *parser) callonFileInclusion184() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion184() +} + +func (c *current) onFileInclusion180(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) +} + +func (p *parser) callonFileInclusion180() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion180(stack["ref"]) +} + +func (c *current) onFileInclusion10(path interface{}) (interface{}, error) { + return types.NewLocation("", path.([]interface{})) + +} + +func (p *parser) callonFileInclusion10() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion10(stack["path"]) +} + +func (c *current) onFileInclusion6(path, inlineAttributes interface{}) (interface{}, error) { + + return types.NewFileInclusion(path.(*types.Location), inlineAttributes.(types.Attributes), string(c.text)) + +} + +func (p *parser) callonFileInclusion6() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion6(stack["path"], stack["inlineAttributes"]) +} + +func (c *current) onFileInclusion191() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonFileInclusion191() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion191() +} + +func (c *current) onFileInclusion194() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonFileInclusion194() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onFileInclusion194() +} + +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) onLineRanges17() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges17() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges17() +} + +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) onLineRanges26() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges26() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges26() +} + +func (c *current) onLineRanges21() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges21() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges21() +} + +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) onLineRanges35() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges35() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges35() +} + +func (c *current) onLineRanges30() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges30() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges30() +} + +func (c *current) onLineRanges28(singleline interface{}) (interface{}, error) { + // eg: lines=12 + return types.NewLineRange(singleline.(int), singleline.(int)) + +} + +func (p *parser) callonLineRanges28() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges28(stack["singleline"]) +} + +func (c *current) onLineRanges52() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges52() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges52() +} + +func (c *current) onLineRanges47() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges47() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges47() +} + +func (c *current) onLineRanges61() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges61() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges61() +} + +func (c *current) onLineRanges56() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges56() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges56() +} + +func (c *current) onLineRanges44(start, end interface{}) (interface{}, error) { + // eg: lines=12..14 + return types.NewLineRange(start.(int), end.(int)) + +} + +func (p *parser) callonLineRanges44() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges44(stack["start"], stack["end"]) +} + +func (c *current) onLineRanges70() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges70() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges70() +} + +func (c *current) onLineRanges65() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges65() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges65() +} + +func (c *current) onLineRanges63(singleline interface{}) (interface{}, error) { + // eg: lines=12 + return types.NewLineRange(singleline.(int), singleline.(int)) + +} + +func (p *parser) callonLineRanges63() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges63(stack["singleline"]) +} + +func (c *current) onLineRanges39(other interface{}) (interface{}, error) { + return other, nil + +} + +func (p *parser) callonLineRanges39() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges39(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) onLineRanges80() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges80() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges80() +} + +func (c *current) onLineRanges75() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges75() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges75() +} + +func (c *current) onLineRanges89() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges89() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges89() +} + +func (c *current) onLineRanges84() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges84() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges84() +} + +func (c *current) onLineRanges72(start, end interface{}) (interface{}, error) { + // eg: lines=12..14 + return types.NewLineRange(start.(int), end.(int)) + +} + +func (p *parser) callonLineRanges72() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges72(stack["start"], stack["end"]) +} + +func (c *current) onLineRanges98() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonLineRanges98() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges98() +} + +func (c *current) onLineRanges93() (interface{}, error) { + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonLineRanges93() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges93() +} + +func (c *current) onLineRanges91(singleline interface{}) (interface{}, error) { + // eg: lines=12 + return types.NewLineRange(singleline.(int), singleline.(int)) + +} + +func (p *parser) callonLineRanges91() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLineRanges91(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) onDocumentFragment19() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment19() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment19() +} + +func (c *current) onDocumentFragment29() (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment29() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment29() +} + +func (c *current) onDocumentFragment38() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment38() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment38() +} + +func (c *current) onDocumentFragment47() (interface{}, error) { + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonDocumentFragment47() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment47() +} + +func (c *current) onDocumentFragment52() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + +} + +func (p *parser) callonDocumentFragment52() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment52() +} + +func (c *current) onDocumentFragment59() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment59() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment59() +} + +func (c *current) onDocumentFragment71() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment71() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment71() +} + +func (c *current) onDocumentFragment73() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonDocumentFragment73() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment73() +} + +func (c *current) onDocumentFragment66(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonDocumentFragment66() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment66(stack["start"]) +} + +func (c *current) onDocumentFragment55(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +} + +func (p *parser) callonDocumentFragment55() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment55(stack["name"], stack["start"]) +} + +func (c *current) onDocumentFragment81() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment81() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment81() +} + +func (c *current) onDocumentFragment93() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment93() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment93() +} + +func (c *current) onDocumentFragment95() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + +} + +func (p *parser) callonDocumentFragment95() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment95() +} + +func (c *current) onDocumentFragment88(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonDocumentFragment88() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment88(stack["start"]) +} + +func (c *current) onDocumentFragment77(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +} + +func (p *parser) callonDocumentFragment77() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment77(stack["name"], stack["start"]) +} + +func (c *current) onDocumentFragment103() (interface{}, error) { + 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) onDocumentFragment99(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) +} + +func (p *parser) callonDocumentFragment99() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment99(stack["name"]) +} + +func (c *current) onDocumentFragment50(element interface{}) (interface{}, error) { + return element, nil + +} + +func (p *parser) callonDocumentFragment50() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment50(stack["element"]) +} + +func (c *current) onDocumentFragment109() (interface{}, error) { + // standalone '{' + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonDocumentFragment109() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment109() +} + +func (c *current) onDocumentFragment34(element interface{}) (interface{}, error) { + + return element, nil + +} + +func (p *parser) callonDocumentFragment34() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment34(stack["element"]) +} + +func (c *current) onDocumentFragment27(elements interface{}) (interface{}, error) { + return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil + +} + +func (p *parser) callonDocumentFragment27() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment27(stack["elements"]) +} + +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) onDocumentFragment15(name, value interface{}) (interface{}, error) { + return types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace), string(c.text)) + +} + +func (p *parser) callonDocumentFragment15() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment15(stack["name"], stack["value"]) +} + +func (c *current) onDocumentFragment123() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment123() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment123() +} + +func (c *current) onDocumentFragment130() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment130() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment130() +} + +func (c *current) onDocumentFragment133() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment133() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment133() +} + +func (c *current) onDocumentFragment119(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) +} + +func (p *parser) callonDocumentFragment119() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment119(stack["name"]) +} + +func (c *current) onDocumentFragment144() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment19() (interface{}, error) { +func (p *parser) callonDocumentFragment144() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment19() + return p.cur.onDocumentFragment144() } -func (c *current) onDocumentFragment29() (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onDocumentFragment151() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment29() (interface{}, error) { +func (p *parser) callonDocumentFragment151() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment29() + return p.cur.onDocumentFragment151() } -func (c *current) onDocumentFragment38() (interface{}, error) { +func (c *current) onDocumentFragment154() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment38() (interface{}, error) { +func (p *parser) callonDocumentFragment154() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment38() + return p.cur.onDocumentFragment154() } -func (c *current) onDocumentFragment47() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onDocumentFragment140(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) +} +func (p *parser) callonDocumentFragment140() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment140(stack["name"]) } -func (p *parser) callonDocumentFragment47() (interface{}, error) { +func (c *current) onDocumentFragment163() (bool, error) { + return c.isDocumentHeaderAllowed(), nil + +} + +func (p *parser) callonDocumentFragment163() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment47() + return p.cur.onDocumentFragment163() } -func (c *current) onDocumentFragment52() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onDocumentFragment171() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment171() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment171() +} + +func (c *current) onDocumentFragment174() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment174() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment174() +} + +func (c *current) onDocumentFragment165() (interface{}, error) { + return types.NewBlankLine() + +} + +func (p *parser) callonDocumentFragment165() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment165() +} + +func (c *current) onDocumentFragment185() (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment185() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment185() +} + +func (c *current) onDocumentFragment189() (interface{}, error) { + // can't have empty title, that may collide with example block delimiter (`====`) + return []interface{}{ + types.RawLine(c.text), + }, nil +} + +func (p *parser) callonDocumentFragment189() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment189() +} + +func (c *current) onDocumentFragment193() (interface{}, error) { + // TODO: just use "\n" + 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) onDocumentFragment182(title interface{}) (interface{}, error) { + return title, nil + +} + +func (p *parser) callonDocumentFragment182() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment182(stack["title"]) +} + +func (c *current) onDocumentFragment211() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment211() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment211() +} + +func (c *current) onDocumentFragment214() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment214() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment214() +} + +func (c *current) onDocumentFragment205() (interface{}, error) { + return types.NewBlankLine() + +} + +func (p *parser) callonDocumentFragment205() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment205() +} + +func (c *current) onDocumentFragment229() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment229() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment229() +} + +func (c *current) onDocumentFragment233() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment233() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment233() +} + +func (c *current) onDocumentFragment223(content interface{}) (interface{}, error) { + return types.NewSingleLineComment(content.(string)) + +} + +func (p *parser) callonDocumentFragment223() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment223(stack["content"]) +} + +func (c *current) onDocumentFragment242() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Comment), nil + +} + +func (p *parser) callonDocumentFragment242() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment242() +} + +func (c *current) onDocumentFragment247() (interface{}, error) { + 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) onDocumentFragment250() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment250() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment250() +} + +func (c *current) onDocumentFragment243() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonDocumentFragment243() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment243() +} + +func (c *current) onDocumentFragment257() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Comment) + return true, nil + +} + +func (p *parser) callonDocumentFragment257() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment257() +} + +func (c *current) onDocumentFragment268() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment268() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment268() +} + +func (c *current) onDocumentFragment271() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment271() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment271() +} + +func (c *current) onDocumentFragment264() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonDocumentFragment264() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment264() +} + +func (c *current) onDocumentFragment287() (interface{}, error) { + // content is NOT mandatory + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment287() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment287() +} + +func (c *current) onDocumentFragment291() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment291() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment291() +} + +func (c *current) onDocumentFragment281(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) + +} + +func (p *parser) callonDocumentFragment281() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment281(stack["content"]) +} + +func (c *current) onDocumentFragment260(line interface{}) (interface{}, error) { + return line, nil + +} + +func (p *parser) callonDocumentFragment260() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment260(stack["line"]) +} + +func (c *current) onDocumentFragment304() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment304() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment304() +} + +func (c *current) onDocumentFragment307() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment307() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment307() +} + +func (c *current) onDocumentFragment300() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonDocumentFragment300() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment300() +} + +func (c *current) onDocumentFragment240(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Comment, content.([]interface{})) + +} + +func (p *parser) callonDocumentFragment240() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment240(stack["content"]) +} + +func (c *current) onDocumentFragment320() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment320() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment320() +} + +func (c *current) onDocumentFragment337() (interface{}, error) { + // no space allowed + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment337() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment337() +} + +func (c *current) onDocumentFragment341() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment341() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment341() +} + +func (c *current) onDocumentFragment345() (interface{}, error) { + // no space allowed + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment345() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment345() +} + +func (c *current) onDocumentFragment349() (interface{}, error) { + 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) onDocumentFragment353() (interface{}, error) { + // spaces allowed + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment353() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment353() +} + +func (c *current) onDocumentFragment357() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment357() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment357() +} + +func (c *current) onDocumentFragment334(part1, part2, part3 interface{}) (interface{}, error) { + return types.NewDocumentAuthorFullName(part1.(string), part2, part3) + +} + +func (p *parser) callonDocumentFragment334() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment334(stack["part1"], stack["part2"], stack["part3"]) +} + +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) onDocumentFragment361(email interface{}) (interface{}, error) { + return email, nil + +} + +func (p *parser) callonDocumentFragment361() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment361(stack["email"]) +} + +func (c *current) onDocumentFragment373() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment373() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment373() +} + +func (c *current) onDocumentFragment378() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment378() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment378() +} + +func (c *current) onDocumentFragment380(fullName, email interface{}) (bool, error) { + // at least 1 of [fullName, email] must be defined + return fullName != nil || email != nil, nil + +} + +func (p *parser) callonDocumentFragment380() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment380(stack["fullName"], stack["email"]) +} + +func (c *current) onDocumentFragment330(fullName, email interface{}) (interface{}, error) { + return types.NewDocumentAuthor(fullName, email) + +} + +func (p *parser) callonDocumentFragment330() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment330(stack["fullName"], stack["email"]) +} + +func (c *current) onDocumentFragment324(authors interface{}) (interface{}, error) { + return types.NewDocumentAuthors(authors.([]interface{})...) +} + +func (p *parser) callonDocumentFragment324() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment324(stack["authors"]) +} + +func (c *current) onDocumentFragment385() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment385() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment385() +} + +func (c *current) onDocumentFragment395() (interface{}, error) { + // no space allowed + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment395() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment395() +} + +func (c *current) onDocumentFragment399() (interface{}, error) { + 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) onDocumentFragment403() (interface{}, error) { + // no space allowed + return string(c.text), nil + +} + +func (p *parser) callonDocumentFragment403() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment403() +} + +func (c *current) onDocumentFragment407() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment52() (bool, error) { +func (p *parser) callonDocumentFragment407() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment52() + return p.cur.onDocumentFragment407() } -func (c *current) onDocumentFragment59() (interface{}, error) { +func (c *current) onDocumentFragment411() (interface{}, error) { + // spaces allowed return string(c.text), nil } -func (p *parser) callonDocumentFragment59() (interface{}, error) { +func (p *parser) callonDocumentFragment411() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment59() + return p.cur.onDocumentFragment411() } -func (c *current) onDocumentFragment71() (interface{}, error) { +func (c *current) onDocumentFragment415() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment71() (interface{}, error) { +func (p *parser) callonDocumentFragment415() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment71() + return p.cur.onDocumentFragment415() } -func (c *current) onDocumentFragment73() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment392(part1, part2, part3 interface{}) (interface{}, error) { + return types.NewDocumentAuthorFullName(part1.(string), part2, part3) } -func (p *parser) callonDocumentFragment73() (interface{}, error) { +func (p *parser) callonDocumentFragment392() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment73() + return p.cur.onDocumentFragment392(stack["part1"], stack["part2"], stack["part3"]) } -func (c *current) onDocumentFragment66(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment426() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment66() (interface{}, error) { +func (p *parser) callonDocumentFragment426() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment66(stack["start"]) + return p.cur.onDocumentFragment426() } -func (c *current) onDocumentFragment55(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onDocumentFragment419(email interface{}) (interface{}, error) { + return email, nil + } -func (p *parser) callonDocumentFragment55() (interface{}, error) { +func (p *parser) callonDocumentFragment419() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment55(stack["name"], stack["start"]) + return p.cur.onDocumentFragment419(stack["email"]) } -func (c *current) onDocumentFragment81() (interface{}, error) { +func (c *current) onDocumentFragment431() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment81() (interface{}, error) { +func (p *parser) callonDocumentFragment431() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment81() + return p.cur.onDocumentFragment431() } -func (c *current) onDocumentFragment93() (interface{}, error) { +func (c *current) onDocumentFragment436() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment93() (interface{}, error) { +func (p *parser) callonDocumentFragment436() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment93() + return p.cur.onDocumentFragment436() } -func (c *current) onDocumentFragment95() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment438(fullName, email interface{}) (bool, error) { + // at least 1 of [fullName, email] must be defined + return fullName != nil || email != nil, nil } -func (p *parser) callonDocumentFragment95() (interface{}, error) { +func (p *parser) callonDocumentFragment438() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment95() + return p.cur.onDocumentFragment438(stack["fullName"], stack["email"]) } -func (c *current) onDocumentFragment88(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment388(fullName, email interface{}) (interface{}, error) { + return types.NewDocumentAuthor(fullName, email) } -func (p *parser) callonDocumentFragment88() (interface{}, error) { +func (p *parser) callonDocumentFragment388() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment88(stack["start"]) + return p.cur.onDocumentFragment388(stack["fullName"], stack["email"]) } -func (c *current) onDocumentFragment77(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onDocumentFragment381(author interface{}) (interface{}, error) { + return types.NewDocumentAuthors(author) } -func (p *parser) callonDocumentFragment77() (interface{}, error) { +func (p *parser) callonDocumentFragment381() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment77(stack["name"], stack["start"]) + return p.cur.onDocumentFragment381(stack["author"]) } -func (c *current) onDocumentFragment103() (interface{}, error) { +func (c *current) onDocumentFragment440() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil +} +func (p *parser) callonDocumentFragment440() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment440() } -func (p *parser) callonDocumentFragment103() (interface{}, error) { +func (c *current) onDocumentFragment317(authors interface{}) (interface{}, error) { + return authors, nil +} + +func (p *parser) callonDocumentFragment317() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment103() + return p.cur.onDocumentFragment317(stack["authors"]) } -func (c *current) onDocumentFragment99(name interface{}) (interface{}, error) { +func (c *current) onDocumentFragment455() (interface{}, error) { + return string(c.text), nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonDocumentFragment99() (interface{}, error) { +func (p *parser) callonDocumentFragment455() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment99(stack["name"]) + return p.cur.onDocumentFragment455() } -func (c *current) onDocumentFragment50(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onDocumentFragment459() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment50() (interface{}, error) { +func (p *parser) callonDocumentFragment459() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment50(stack["element"]) + return p.cur.onDocumentFragment459() } -func (c *current) onDocumentFragment109() (interface{}, error) { - // standalone '{' - return types.NewStringElement(string(c.text)) +func (c *current) onDocumentFragment449(content interface{}) (interface{}, error) { + return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonDocumentFragment109() (interface{}, error) { +func (p *parser) callonDocumentFragment449() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment109() + return p.cur.onDocumentFragment449(stack["content"]) } -func (c *current) onDocumentFragment34(element interface{}) (interface{}, error) { - - return element, nil +func (c *current) onDocumentFragment468() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Comment), nil } -func (p *parser) callonDocumentFragment34() (interface{}, error) { +func (p *parser) callonDocumentFragment468() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment34(stack["element"]) + return p.cur.onDocumentFragment468() } -func (c *current) onDocumentFragment27(elements interface{}) (interface{}, error) { - return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil +func (c *current) onDocumentFragment473() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment27() (interface{}, error) { +func (p *parser) callonDocumentFragment473() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment27(stack["elements"]) + return p.cur.onDocumentFragment473() } -func (c *current) onDocumentFragment112() (interface{}, error) { +func (c *current) onDocumentFragment476() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment112() (interface{}, error) { +func (p *parser) callonDocumentFragment476() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment112() + return p.cur.onDocumentFragment476() } -func (c *current) onDocumentFragment15(name, value interface{}) (interface{}, error) { - d := types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace)) - return d, nil - +func (c *current) onDocumentFragment469() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonDocumentFragment15() (interface{}, error) { +func (p *parser) callonDocumentFragment469() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment15(stack["name"], stack["value"]) + return p.cur.onDocumentFragment469() } -func (c *current) onDocumentFragment123() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment483() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Comment) + return true, nil } -func (p *parser) callonDocumentFragment123() (interface{}, error) { +func (p *parser) callonDocumentFragment483() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment123() + return p.cur.onDocumentFragment483() } -func (c *current) onDocumentFragment130() (interface{}, error) { +func (c *current) onDocumentFragment494() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment130() (interface{}, error) { +func (p *parser) callonDocumentFragment494() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment130() + return p.cur.onDocumentFragment494() } -func (c *current) onDocumentFragment133() (interface{}, error) { +func (c *current) onDocumentFragment497() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment133() (interface{}, error) { +func (p *parser) callonDocumentFragment497() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment133() + return p.cur.onDocumentFragment497() } -func (c *current) onDocumentFragment119(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string)) +func (c *current) onDocumentFragment490() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonDocumentFragment119() (interface{}, error) { +func (p *parser) callonDocumentFragment490() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment119(stack["name"]) + return p.cur.onDocumentFragment490() } -func (c *current) onDocumentFragment144() (interface{}, error) { +func (c *current) onDocumentFragment513() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonDocumentFragment144() (interface{}, error) { +func (p *parser) callonDocumentFragment513() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment144() + return p.cur.onDocumentFragment513() } -func (c *current) onDocumentFragment151() (interface{}, error) { +func (c *current) onDocumentFragment517() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment151() (interface{}, error) { +func (p *parser) callonDocumentFragment517() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment151() + return p.cur.onDocumentFragment517() } -func (c *current) onDocumentFragment154() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment507(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) + } -func (p *parser) callonDocumentFragment154() (interface{}, error) { +func (p *parser) callonDocumentFragment507() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment154() + return p.cur.onDocumentFragment507(stack["content"]) } -func (c *current) onDocumentFragment140(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string)) +func (c *current) onDocumentFragment486(line interface{}) (interface{}, error) { + return line, nil + } -func (p *parser) callonDocumentFragment140() (interface{}, error) { +func (p *parser) callonDocumentFragment486() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment140(stack["name"]) + return p.cur.onDocumentFragment486(stack["line"]) } -func (c *current) onDocumentFragment163() (bool, error) { - return c.isDocumentHeaderAllowed(), nil +func (c *current) onDocumentFragment530() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment163() (bool, error) { +func (p *parser) callonDocumentFragment530() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment163() + return p.cur.onDocumentFragment530() } -func (c *current) onDocumentFragment171() (interface{}, error) { +func (c *current) onDocumentFragment533() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment171() (interface{}, error) { +func (p *parser) callonDocumentFragment533() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment171() + return p.cur.onDocumentFragment533() } -func (c *current) onDocumentFragment174() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment526() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonDocumentFragment174() (interface{}, error) { +func (p *parser) callonDocumentFragment526() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment174() + return p.cur.onDocumentFragment526() } -func (c *current) onDocumentFragment165() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onDocumentFragment466(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Comment, content.([]interface{})) } -func (p *parser) callonDocumentFragment165() (interface{}, error) { +func (p *parser) callonDocumentFragment466() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment165() + return p.cur.onDocumentFragment466(stack["content"]) } -func (c *current) onDocumentFragment185() (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onDocumentFragment547() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment185() (interface{}, error) { +func (p *parser) callonDocumentFragment547() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment185() + return p.cur.onDocumentFragment547() } -func (c *current) onDocumentFragment189() (interface{}, error) { - // can't have empty title, that may collide with example block delimiter (`====`) - return []interface{}{ - types.RawLine(c.text), - }, nil +func (c *current) onDocumentFragment560() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonDocumentFragment189() (interface{}, error) { +func (p *parser) callonDocumentFragment560() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment189() + return p.cur.onDocumentFragment560() } -func (c *current) onDocumentFragment193() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentFragment557() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment193() (interface{}, error) { +func (p *parser) callonDocumentFragment557() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment193() + return p.cur.onDocumentFragment557() } -func (c *current) onDocumentFragment182(title interface{}) (interface{}, error) { - return title, nil +func (c *current) onDocumentFragment568() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment182() (interface{}, error) { +func (p *parser) callonDocumentFragment568() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment182(stack["title"]) + return p.cur.onDocumentFragment568() } -func (c *current) onDocumentFragment211() (interface{}, error) { +func (c *current) onDocumentFragment573() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment211() (interface{}, error) { +func (p *parser) callonDocumentFragment573() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment211() + return p.cur.onDocumentFragment573() } -func (c *current) onDocumentFragment214() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentFragment564() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment214() (interface{}, error) { +func (p *parser) callonDocumentFragment564() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment214() + return p.cur.onDocumentFragment564() } -func (c *current) onDocumentFragment205() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onDocumentFragment581() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment205() (interface{}, error) { +func (p *parser) callonDocumentFragment581() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment205() + return p.cur.onDocumentFragment581() } -func (c *current) onDocumentFragment229() (interface{}, error) { +func (c *current) onDocumentFragment588() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonDocumentFragment229() (interface{}, error) { +func (p *parser) callonDocumentFragment588() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment229() + return p.cur.onDocumentFragment588() } -func (c *current) onDocumentFragment233() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment553(revnumber, revdate, revremark interface{}) (interface{}, error) { + return types.NewDocumentRevision(revnumber, revdate, revremark) + } -func (p *parser) callonDocumentFragment233() (interface{}, error) { +func (p *parser) callonDocumentFragment553() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment233() + return p.cur.onDocumentFragment553(stack["revnumber"], stack["revdate"], stack["revremark"]) } -func (c *current) onDocumentFragment223(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - +func (c *current) onDocumentFragment594() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment223() (interface{}, error) { +func (p *parser) callonDocumentFragment594() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment223(stack["content"]) + return p.cur.onDocumentFragment594() } -func (c *current) onDocumentFragment242() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Comment), nil - +func (c *current) onDocumentFragment601() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment242() (bool, error) { +func (p *parser) callonDocumentFragment601() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment242() + return p.cur.onDocumentFragment601() } -func (c *current) onDocumentFragment245() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment591(revdate, revremark interface{}) (interface{}, error) { + return types.NewDocumentRevision(nil, revdate, revremark) } -func (p *parser) callonDocumentFragment245() (interface{}, error) { +func (p *parser) callonDocumentFragment591() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment245() + return p.cur.onDocumentFragment591(stack["revdate"], stack["revremark"]) } -func (c *current) onDocumentFragment248() (interface{}, error) { +func (c *current) onDocumentFragment605() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment248() (interface{}, error) { +func (p *parser) callonDocumentFragment605() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment248() + return p.cur.onDocumentFragment605() } -func (c *current) onDocumentFragment255() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Comment) - return true, nil - +func (c *current) onDocumentFragment544(revision interface{}) (interface{}, error) { + return revision, nil } -func (p *parser) callonDocumentFragment255() (bool, error) { +func (p *parser) callonDocumentFragment544() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment255() + return p.cur.onDocumentFragment544(stack["revision"]) } -func (c *current) onDocumentFragment265() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment202(authors, revision interface{}) (interface{}, error) { + return types.NewDocumentInformation(authors.(types.DocumentAuthors), revision) } -func (p *parser) callonDocumentFragment265() (interface{}, error) { +func (p *parser) callonDocumentFragment202() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment265() + return p.cur.onDocumentFragment202(stack["authors"], stack["revision"]) } -func (c *current) onDocumentFragment268() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentFragment619() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDocumentFragment268() (interface{}, error) { +func (p *parser) callonDocumentFragment619() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment268() + return p.cur.onDocumentFragment619() } -func (c *current) onDocumentFragment284() (interface{}, error) { - // content is NOT mandatory +func (c *current) onDocumentFragment629() (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonDocumentFragment284() (interface{}, error) { +func (p *parser) callonDocumentFragment629() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment284() + return p.cur.onDocumentFragment629() } -func (c *current) onDocumentFragment288() (interface{}, error) { +func (c *current) onDocumentFragment638() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment288() (interface{}, error) { +func (p *parser) callonDocumentFragment638() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment288() + return p.cur.onDocumentFragment638() } -func (c *current) onDocumentFragment278(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) +func (c *current) onDocumentFragment647() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonDocumentFragment278() (interface{}, error) { +func (p *parser) callonDocumentFragment647() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment278(stack["content"]) + return p.cur.onDocumentFragment647() } -func (c *current) onDocumentFragment258(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onDocumentFragment652() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonDocumentFragment258() (interface{}, error) { +func (p *parser) callonDocumentFragment652() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment258(stack["line"]) + return p.cur.onDocumentFragment652() } -func (c *current) onDocumentFragment300() (interface{}, error) { +func (c *current) onDocumentFragment659() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment300() (interface{}, error) { +func (p *parser) callonDocumentFragment659() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment300() + return p.cur.onDocumentFragment659() } -func (c *current) onDocumentFragment303() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentFragment671() (interface{}, error) { return string(c.text), nil -} - -func (p *parser) callonDocumentFragment303() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment303() -} - -func (c *current) onDocumentFragment240(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Comment, content.([]interface{})) } -func (p *parser) callonDocumentFragment240() (interface{}, error) { +func (p *parser) callonDocumentFragment671() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment240(stack["content"]) + return p.cur.onDocumentFragment671() } -func (c *current) onDocumentFragment316() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment673() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonDocumentFragment316() (interface{}, error) { +func (p *parser) callonDocumentFragment673() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment316() + return p.cur.onDocumentFragment673() } -func (c *current) onDocumentFragment333() (interface{}, error) { - // no space allowed - return string(c.text), nil +func (c *current) onDocumentFragment666(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonDocumentFragment333() (interface{}, error) { +func (p *parser) callonDocumentFragment666() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment333() + return p.cur.onDocumentFragment666(stack["start"]) } -func (c *current) onDocumentFragment337() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment655(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonDocumentFragment337() (interface{}, error) { +func (p *parser) callonDocumentFragment655() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment337() + return p.cur.onDocumentFragment655(stack["name"], stack["start"]) } -func (c *current) onDocumentFragment341() (interface{}, error) { - // no space allowed +func (c *current) onDocumentFragment681() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment341() (interface{}, error) { +func (p *parser) callonDocumentFragment681() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment341() + return p.cur.onDocumentFragment681() } -func (c *current) onDocumentFragment345() (interface{}, error) { +func (c *current) onDocumentFragment693() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment345() (interface{}, error) { +func (p *parser) callonDocumentFragment693() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment345() + return p.cur.onDocumentFragment693() } -func (c *current) onDocumentFragment349() (interface{}, error) { - // spaces allowed - return string(c.text), nil +func (c *current) onDocumentFragment695() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonDocumentFragment349() (interface{}, error) { +func (p *parser) callonDocumentFragment695() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment349() + return p.cur.onDocumentFragment695() } -func (c *current) onDocumentFragment353() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment688(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonDocumentFragment353() (interface{}, error) { +func (p *parser) callonDocumentFragment688() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment353() + return p.cur.onDocumentFragment688(stack["start"]) } -func (c *current) onDocumentFragment330(part1, part2, part3 interface{}) (interface{}, error) { - return types.NewDocumentAuthorFullName(part1.(string), part2, part3) - +func (c *current) onDocumentFragment677(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonDocumentFragment330() (interface{}, error) { +func (p *parser) callonDocumentFragment677() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment330(stack["part1"], stack["part2"], stack["part3"]) + return p.cur.onDocumentFragment677(stack["name"], stack["start"]) } -func (c *current) onDocumentFragment364() (interface{}, error) { +func (c *current) onDocumentFragment703() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment364() (interface{}, error) { +func (p *parser) callonDocumentFragment703() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment364() + return p.cur.onDocumentFragment703() } -func (c *current) onDocumentFragment357(email interface{}) (interface{}, error) { - return email, nil +func (c *current) onDocumentFragment699(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonDocumentFragment357() (interface{}, error) { +func (p *parser) callonDocumentFragment699() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment357(stack["email"]) + return p.cur.onDocumentFragment699(stack["name"]) } -func (c *current) onDocumentFragment369() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment650(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonDocumentFragment369() (interface{}, error) { +func (p *parser) callonDocumentFragment650() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment369() + return p.cur.onDocumentFragment650(stack["element"]) } -func (c *current) onDocumentFragment374() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment709() (interface{}, error) { + // standalone '{' + return types.NewStringElement(string(c.text)) } -func (p *parser) callonDocumentFragment374() (interface{}, error) { +func (p *parser) callonDocumentFragment709() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment374() + return p.cur.onDocumentFragment709() } -func (c *current) onDocumentFragment376(fullName, email interface{}) (bool, error) { - // at least 1 of [fullName, email] must be defined - return fullName != nil || email != nil, nil +func (c *current) onDocumentFragment634(element interface{}) (interface{}, error) { + + return element, nil } -func (p *parser) callonDocumentFragment376() (bool, error) { +func (p *parser) callonDocumentFragment634() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment376(stack["fullName"], stack["email"]) + return p.cur.onDocumentFragment634(stack["element"]) } -func (c *current) onDocumentFragment326(fullName, email interface{}) (interface{}, error) { - return types.NewDocumentAuthor(fullName, email) +func (c *current) onDocumentFragment627(elements interface{}) (interface{}, error) { + return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil } -func (p *parser) callonDocumentFragment326() (interface{}, error) { +func (p *parser) callonDocumentFragment627() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment326(stack["fullName"], stack["email"]) + return p.cur.onDocumentFragment627(stack["elements"]) } -func (c *current) onDocumentFragment320(authors interface{}) (interface{}, error) { - return types.NewDocumentAuthors(authors.([]interface{})...) +func (c *current) onDocumentFragment712() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment320() (interface{}, error) { +func (p *parser) callonDocumentFragment712() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment320(stack["authors"]) + return p.cur.onDocumentFragment712() } -func (c *current) onDocumentFragment381() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment615(name, value interface{}) (interface{}, error) { + return types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace), string(c.text)) } -func (p *parser) callonDocumentFragment381() (interface{}, error) { +func (p *parser) callonDocumentFragment615() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment381() + return p.cur.onDocumentFragment615(stack["name"], stack["value"]) } -func (c *current) onDocumentFragment391() (interface{}, error) { - // no space allowed +func (c *current) onDocumentFragment723() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment391() (interface{}, error) { +func (p *parser) callonDocumentFragment723() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment391() + return p.cur.onDocumentFragment723() } -func (c *current) onDocumentFragment395() (interface{}, error) { +func (c *current) onDocumentFragment730() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment395() (interface{}, error) { +func (p *parser) callonDocumentFragment730() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment395() + return p.cur.onDocumentFragment730() } -func (c *current) onDocumentFragment399() (interface{}, error) { - // no space allowed +func (c *current) onDocumentFragment733() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment399() (interface{}, error) { +func (p *parser) callonDocumentFragment733() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment399() + return p.cur.onDocumentFragment733() } -func (c *current) onDocumentFragment403() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment719(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) } -func (p *parser) callonDocumentFragment403() (interface{}, error) { +func (p *parser) callonDocumentFragment719() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment403() + return p.cur.onDocumentFragment719(stack["name"]) } -func (c *current) onDocumentFragment407() (interface{}, error) { - // spaces allowed +func (c *current) onDocumentFragment744() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment407() (interface{}, error) { +func (p *parser) callonDocumentFragment744() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment407() + return p.cur.onDocumentFragment744() } -func (c *current) onDocumentFragment411() (interface{}, error) { +func (c *current) onDocumentFragment751() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment411() (interface{}, error) { +func (p *parser) callonDocumentFragment751() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment411() + return p.cur.onDocumentFragment751() } -func (c *current) onDocumentFragment388(part1, part2, part3 interface{}) (interface{}, error) { - return types.NewDocumentAuthorFullName(part1.(string), part2, part3) - +func (c *current) onDocumentFragment754() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment388() (interface{}, error) { +func (p *parser) callonDocumentFragment754() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment388(stack["part1"], stack["part2"], stack["part3"]) + return p.cur.onDocumentFragment754() } -func (c *current) onDocumentFragment422() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment740(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) } -func (p *parser) callonDocumentFragment422() (interface{}, error) { +func (p *parser) callonDocumentFragment740() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment422() + return p.cur.onDocumentFragment740(stack["name"]) } -func (c *current) onDocumentFragment415(email interface{}) (interface{}, error) { - return email, nil +func (c *current) onDocumentFragment161(title, info, extraAttrs interface{}) (interface{}, error) { + return types.NewDocumentHeader(title.([]interface{}), info, extraAttrs.([]interface{})) } -func (p *parser) callonDocumentFragment415() (interface{}, error) { +func (p *parser) callonDocumentFragment161() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment415(stack["email"]) + return p.cur.onDocumentFragment161(stack["title"], stack["info"], stack["extraAttrs"]) } -func (c *current) onDocumentFragment427() (interface{}, error) { +func (c *current) onDocumentFragment767() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment427() (interface{}, error) { +func (p *parser) callonDocumentFragment767() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment427() + return p.cur.onDocumentFragment767() } -func (c *current) onDocumentFragment432() (interface{}, error) { +func (c *current) onDocumentFragment770() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment432() (interface{}, error) { +func (p *parser) callonDocumentFragment770() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment432() + return p.cur.onDocumentFragment770() } -func (c *current) onDocumentFragment434(fullName, email interface{}) (bool, error) { - // at least 1 of [fullName, email] must be defined - return fullName != nil || email != nil, nil +func (c *current) onDocumentFragment761() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonDocumentFragment434() (bool, error) { +func (p *parser) callonDocumentFragment761() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment434(stack["fullName"], stack["email"]) + return p.cur.onDocumentFragment761() } -func (c *current) onDocumentFragment384(fullName, email interface{}) (interface{}, error) { - return types.NewDocumentAuthor(fullName, email) +func (c *current) onDocumentFragment779() (bool, error) { + + return !c.isWithinDelimitedBlock(), nil } -func (p *parser) callonDocumentFragment384() (interface{}, error) { +func (p *parser) callonDocumentFragment779() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment384(stack["fullName"], stack["email"]) + return p.cur.onDocumentFragment779() } -func (c *current) onDocumentFragment377(author interface{}) (interface{}, error) { - return types.NewDocumentAuthors(author) +func (c *current) onDocumentFragment781() (interface{}, error) { + + // `=` is level 0, `==` is level 1, etc. + return (len(c.text) - 1), nil + } -func (p *parser) callonDocumentFragment377() (interface{}, error) { +func (p *parser) callonDocumentFragment781() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment377(stack["author"]) + return p.cur.onDocumentFragment781() } -func (c *current) onDocumentFragment436() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment784(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) callonDocumentFragment436() (interface{}, error) { +func (p *parser) callonDocumentFragment784() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment436() + return p.cur.onDocumentFragment784(stack["level"]) } -func (c *current) onDocumentFragment313(authors interface{}) (interface{}, error) { - return authors, nil +func (c *current) onDocumentFragment785(level interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + } -func (p *parser) callonDocumentFragment313() (interface{}, error) { +func (p *parser) callonDocumentFragment785() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment313(stack["authors"]) + return p.cur.onDocumentFragment785(stack["level"]) } -func (c *current) onDocumentFragment451() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment789() (interface{}, error) { + // can't have empty title, that may collide with example block delimiter (`====`) + return []interface{}{ + types.RawLine(c.text), + }, nil } -func (p *parser) callonDocumentFragment451() (interface{}, error) { +func (p *parser) callonDocumentFragment789() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment451() + return p.cur.onDocumentFragment789() } -func (c *current) onDocumentFragment455() (interface{}, error) { +func (c *current) onDocumentFragment793() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment455() (interface{}, error) { +func (p *parser) callonDocumentFragment793() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment455() + return p.cur.onDocumentFragment793() } -func (c *current) onDocumentFragment445(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) +func (c *current) onDocumentFragment777(level, title interface{}) (interface{}, error) { + return types.NewSection(level.(int), title.([]interface{})) } -func (p *parser) callonDocumentFragment445() (interface{}, error) { +func (p *parser) callonDocumentFragment777() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment445(stack["content"]) + return p.cur.onDocumentFragment777(stack["level"], stack["title"]) } -func (c *current) onDocumentFragment464() (bool, error) { +func (c *current) onDocumentFragment802() (bool, error) { // only accept if not already in a delimited block of this kind return !c.isWithinDelimitedBlockOfKind(types.Comment), nil } -func (p *parser) callonDocumentFragment464() (bool, error) { +func (p *parser) callonDocumentFragment802() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment464() + return p.cur.onDocumentFragment802() } -func (c *current) onDocumentFragment467() (interface{}, error) { +func (c *current) onDocumentFragment807() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment467() (interface{}, error) { +func (p *parser) callonDocumentFragment807() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment467() + return p.cur.onDocumentFragment807() } -func (c *current) onDocumentFragment470() (interface{}, error) { +func (c *current) onDocumentFragment810() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment470() (interface{}, error) { +func (p *parser) callonDocumentFragment810() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment810() +} + +func (c *current) onDocumentFragment803() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonDocumentFragment803() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment470() + return p.cur.onDocumentFragment803() } -func (c *current) onDocumentFragment477() (bool, error) { +func (c *current) onDocumentFragment817() (bool, error) { // only accept if the delimiter matches the current delimited block or if no kind is registered yet c.setWithinDelimitedBlockOfKind(types.Comment) return true, nil } -func (p *parser) callonDocumentFragment477() (bool, error) { +func (p *parser) callonDocumentFragment817() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment477() + return p.cur.onDocumentFragment817() } -func (c *current) onDocumentFragment487() (interface{}, error) { +func (c *current) onDocumentFragment828() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment487() (interface{}, error) { +func (p *parser) callonDocumentFragment828() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment487() + return p.cur.onDocumentFragment828() } -func (c *current) onDocumentFragment490() (interface{}, error) { +func (c *current) onDocumentFragment831() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment490() (interface{}, error) { +func (p *parser) callonDocumentFragment831() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment490() + return p.cur.onDocumentFragment831() +} + +func (c *current) onDocumentFragment824() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonDocumentFragment824() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment824() } -func (c *current) onDocumentFragment506() (interface{}, error) { +func (c *current) onDocumentFragment847() (interface{}, error) { // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonDocumentFragment506() (interface{}, error) { +func (p *parser) callonDocumentFragment847() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment506() + return p.cur.onDocumentFragment847() } -func (c *current) onDocumentFragment510() (interface{}, error) { +func (c *current) onDocumentFragment851() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment510() (interface{}, error) { +func (p *parser) callonDocumentFragment851() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment510() + return p.cur.onDocumentFragment851() } -func (c *current) onDocumentFragment500(content interface{}) (interface{}, error) { +func (c *current) onDocumentFragment841(content interface{}) (interface{}, error) { return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment500() (interface{}, error) { +func (p *parser) callonDocumentFragment841() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment500(stack["content"]) + return p.cur.onDocumentFragment841(stack["content"]) } -func (c *current) onDocumentFragment480(line interface{}) (interface{}, error) { +func (c *current) onDocumentFragment820(line interface{}) (interface{}, error) { return line, nil } -func (p *parser) callonDocumentFragment480() (interface{}, error) { +func (p *parser) callonDocumentFragment820() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment480(stack["line"]) + return p.cur.onDocumentFragment820(stack["line"]) } -func (c *current) onDocumentFragment522() (interface{}, error) { +func (c *current) onDocumentFragment864() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment522() (interface{}, error) { +func (p *parser) callonDocumentFragment864() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment522() + return p.cur.onDocumentFragment864() } -func (c *current) onDocumentFragment525() (interface{}, error) { +func (c *current) onDocumentFragment867() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment525() (interface{}, error) { +func (p *parser) callonDocumentFragment867() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment867() +} + +func (c *current) onDocumentFragment860() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonDocumentFragment860() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment525() + return p.cur.onDocumentFragment860() } -func (c *current) onDocumentFragment462(content interface{}) (interface{}, error) { +func (c *current) onDocumentFragment800(content interface{}) (interface{}, error) { c.unsetWithinDelimitedBlock() return types.NewDelimitedBlock(types.Comment, content.([]interface{})) } -func (p *parser) callonDocumentFragment462() (interface{}, error) { +func (p *parser) callonDocumentFragment800() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment462(stack["content"]) + return p.cur.onDocumentFragment800(stack["content"]) } -func (c *current) onDocumentFragment539() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment878() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Example), nil } -func (p *parser) callonDocumentFragment539() (interface{}, error) { +func (p *parser) callonDocumentFragment878() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment539() + return p.cur.onDocumentFragment878() } -func (c *current) onDocumentFragment552() (interface{}, error) { +func (c *current) onDocumentFragment883() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment552() (interface{}, error) { +func (p *parser) callonDocumentFragment883() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment552() + return p.cur.onDocumentFragment883() } -func (c *current) onDocumentFragment549() (interface{}, error) { +func (c *current) onDocumentFragment886() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment549() (interface{}, error) { +func (p *parser) callonDocumentFragment886() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment549() + return p.cur.onDocumentFragment886() } -func (c *current) onDocumentFragment560() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment879() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) +} +func (p *parser) callonDocumentFragment879() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment879() } -func (p *parser) callonDocumentFragment560() (interface{}, error) { +func (c *current) onDocumentFragment893() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Example) + return true, nil + +} + +func (p *parser) callonDocumentFragment893() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment560() + return p.cur.onDocumentFragment893() } -func (c *current) onDocumentFragment565() (interface{}, error) { +func (c *current) onDocumentFragment904() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment565() (interface{}, error) { +func (p *parser) callonDocumentFragment904() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment565() + return p.cur.onDocumentFragment904() } -func (c *current) onDocumentFragment556() (interface{}, error) { +func (c *current) onDocumentFragment907() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment556() (interface{}, error) { +func (p *parser) callonDocumentFragment907() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment556() + return p.cur.onDocumentFragment907() } -func (c *current) onDocumentFragment573() (interface{}, error) { +func (c *current) onDocumentFragment900() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) +} + +func (p *parser) callonDocumentFragment900() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment900() +} + +func (c *current) onDocumentFragment923() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil + } -func (p *parser) callonDocumentFragment573() (interface{}, error) { +func (p *parser) callonDocumentFragment923() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment573() + return p.cur.onDocumentFragment923() } -func (c *current) onDocumentFragment580() (interface{}, error) { +func (c *current) onDocumentFragment927() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment580() (interface{}, error) { +func (p *parser) callonDocumentFragment927() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment580() + return p.cur.onDocumentFragment927() } -func (c *current) onDocumentFragment545(revnumber, revdate, revremark interface{}) (interface{}, error) { - return types.NewDocumentRevision(revnumber, revdate, revremark) +func (c *current) onDocumentFragment917(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment545() (interface{}, error) { +func (p *parser) callonDocumentFragment917() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment545(stack["revnumber"], stack["revdate"], stack["revremark"]) + return p.cur.onDocumentFragment917(stack["content"]) } -func (c *current) onDocumentFragment586() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment896(line interface{}) (interface{}, error) { + return line, nil + } -func (p *parser) callonDocumentFragment586() (interface{}, error) { +func (p *parser) callonDocumentFragment896() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment586() + return p.cur.onDocumentFragment896(stack["line"]) } -func (c *current) onDocumentFragment593() (interface{}, error) { +func (c *current) onDocumentFragment939() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDocumentFragment593() (interface{}, error) { +func (p *parser) callonDocumentFragment939() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment593() + return p.cur.onDocumentFragment939() } -func (c *current) onDocumentFragment583(revdate, revremark interface{}) (interface{}, error) { - return types.NewDocumentRevision(nil, revdate, revremark) +func (c *current) onDocumentFragment942() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonDocumentFragment942() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment942() +} +func (c *current) onDocumentFragment935() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) } -func (p *parser) callonDocumentFragment583() (interface{}, error) { +func (p *parser) callonDocumentFragment935() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment583(stack["revdate"], stack["revremark"]) + return p.cur.onDocumentFragment935() } -func (c *current) onDocumentFragment597() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment876(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Example, content.([]interface{})) + } -func (p *parser) callonDocumentFragment597() (interface{}, error) { +func (p *parser) callonDocumentFragment876() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment597() + return p.cur.onDocumentFragment876(stack["content"]) } -func (c *current) onDocumentFragment536(revision interface{}) (interface{}, error) { - return revision, nil +func (c *current) onDocumentFragment953() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Fenced), nil + } -func (p *parser) callonDocumentFragment536() (interface{}, error) { +func (p *parser) callonDocumentFragment953() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment536(stack["revision"]) + return p.cur.onDocumentFragment953() } -func (c *current) onDocumentFragment202(authors, revision interface{}) (interface{}, error) { - return types.NewDocumentInformation(authors.(types.DocumentAuthors), revision) +func (c *current) onDocumentFragment958() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment202() (interface{}, error) { +func (p *parser) callonDocumentFragment958() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment202(stack["authors"], stack["revision"]) + return p.cur.onDocumentFragment958() } -func (c *current) onDocumentFragment611() (interface{}, error) { +func (c *current) onDocumentFragment961() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil +} + +func (p *parser) callonDocumentFragment961() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment961() +} + +func (c *current) onDocumentFragment954() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) +} + +func (p *parser) callonDocumentFragment954() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment954() +} + +func (c *current) onDocumentFragment968() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Fenced) + return true, nil } -func (p *parser) callonDocumentFragment611() (interface{}, error) { +func (p *parser) callonDocumentFragment968() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment611() + return p.cur.onDocumentFragment968() } -func (c *current) onDocumentFragment621() (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onDocumentFragment979() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment621() (interface{}, error) { +func (p *parser) callonDocumentFragment979() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment621() + return p.cur.onDocumentFragment979() } -func (c *current) onDocumentFragment630() (interface{}, error) { +func (c *current) onDocumentFragment982() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment630() (interface{}, error) { +func (p *parser) callonDocumentFragment982() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment630() + return p.cur.onDocumentFragment982() } -func (c *current) onDocumentFragment639() (interface{}, error) { - return types.NewStringElement(string(c.text)) - +func (c *current) onDocumentFragment975() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonDocumentFragment639() (interface{}, error) { +func (p *parser) callonDocumentFragment975() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment639() + return p.cur.onDocumentFragment975() } -func (c *current) onDocumentFragment644() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onDocumentFragment998() (interface{}, error) { + // content is NOT mandatory + return string(c.text), nil } -func (p *parser) callonDocumentFragment644() (bool, error) { +func (p *parser) callonDocumentFragment998() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment644() + return p.cur.onDocumentFragment998() } -func (c *current) onDocumentFragment651() (interface{}, error) { +func (c *current) onDocumentFragment1002() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment651() (interface{}, error) { +func (p *parser) callonDocumentFragment1002() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment651() + return p.cur.onDocumentFragment1002() } -func (c *current) onDocumentFragment663() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment992(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment663() (interface{}, error) { +func (p *parser) callonDocumentFragment992() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment663() + return p.cur.onDocumentFragment992(stack["content"]) } -func (c *current) onDocumentFragment665() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment971(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonDocumentFragment665() (interface{}, error) { +func (p *parser) callonDocumentFragment971() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment665() + return p.cur.onDocumentFragment971(stack["line"]) } -func (c *current) onDocumentFragment658(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment1014() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment658() (interface{}, error) { +func (p *parser) callonDocumentFragment1014() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment658(stack["start"]) + return p.cur.onDocumentFragment1014() } -func (c *current) onDocumentFragment647(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onDocumentFragment1017() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment647() (interface{}, error) { +func (p *parser) callonDocumentFragment1017() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment647(stack["name"], stack["start"]) + return p.cur.onDocumentFragment1017() } -func (c *current) onDocumentFragment673() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment1010() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonDocumentFragment673() (interface{}, error) { +func (p *parser) callonDocumentFragment1010() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment673() + return p.cur.onDocumentFragment1010() } -func (c *current) onDocumentFragment685() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment951(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Fenced, content.([]interface{})) } -func (p *parser) callonDocumentFragment685() (interface{}, error) { +func (p *parser) callonDocumentFragment951() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment685() + return p.cur.onDocumentFragment951(stack["content"]) } -func (c *current) onDocumentFragment687() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment1028() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Listing), nil } -func (p *parser) callonDocumentFragment687() (interface{}, error) { +func (p *parser) callonDocumentFragment1028() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment687() + return p.cur.onDocumentFragment1028() } -func (c *current) onDocumentFragment680(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment1033() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment680() (interface{}, error) { +func (p *parser) callonDocumentFragment1033() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment680(stack["start"]) + return p.cur.onDocumentFragment1033() } -func (c *current) onDocumentFragment669(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onDocumentFragment1036() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment669() (interface{}, error) { +func (p *parser) callonDocumentFragment1036() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment669(stack["name"], stack["start"]) + return p.cur.onDocumentFragment1036() } -func (c *current) onDocumentFragment695() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment1029() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonDocumentFragment695() (interface{}, error) { +func (p *parser) callonDocumentFragment1029() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment695() + return p.cur.onDocumentFragment1029() } -func (c *current) onDocumentFragment691(name interface{}) (interface{}, error) { +func (c *current) onDocumentFragment1043() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Listing) + return true, nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonDocumentFragment691() (interface{}, error) { +func (p *parser) callonDocumentFragment1043() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment691(stack["name"]) + return p.cur.onDocumentFragment1043() } -func (c *current) onDocumentFragment642(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onDocumentFragment1054() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment642() (interface{}, error) { +func (p *parser) callonDocumentFragment1054() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment642(stack["element"]) + return p.cur.onDocumentFragment1054() } -func (c *current) onDocumentFragment701() (interface{}, error) { - // standalone '{' - return types.NewStringElement(string(c.text)) - +func (c *current) onDocumentFragment1057() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment701() (interface{}, error) { +func (p *parser) callonDocumentFragment1057() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment701() + return p.cur.onDocumentFragment1057() } -func (c *current) onDocumentFragment626(element interface{}) (interface{}, error) { - - return element, nil - +func (c *current) onDocumentFragment1050() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonDocumentFragment626() (interface{}, error) { +func (p *parser) callonDocumentFragment1050() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment626(stack["element"]) + return p.cur.onDocumentFragment1050() } -func (c *current) onDocumentFragment619(elements interface{}) (interface{}, error) { - return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil +func (c *current) onDocumentFragment1073() (interface{}, error) { + // content is NOT mandatory + return string(c.text), nil } -func (p *parser) callonDocumentFragment619() (interface{}, error) { +func (p *parser) callonDocumentFragment1073() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment619(stack["elements"]) + return p.cur.onDocumentFragment1073() } -func (c *current) onDocumentFragment704() (interface{}, error) { +func (c *current) onDocumentFragment1077() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment704() (interface{}, error) { +func (p *parser) callonDocumentFragment1077() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment704() + return p.cur.onDocumentFragment1077() } -func (c *current) onDocumentFragment607(name, value interface{}) (interface{}, error) { - d := types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace)) - return d, nil +func (c *current) onDocumentFragment1067(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment607() (interface{}, error) { +func (p *parser) callonDocumentFragment1067() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment607(stack["name"], stack["value"]) + return p.cur.onDocumentFragment1067(stack["content"]) } -func (c *current) onDocumentFragment715() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1046(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonDocumentFragment715() (interface{}, error) { +func (p *parser) callonDocumentFragment1046() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment715() + return p.cur.onDocumentFragment1046(stack["line"]) } -func (c *current) onDocumentFragment722() (interface{}, error) { +func (c *current) onDocumentFragment1089() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment722() (interface{}, error) { +func (p *parser) callonDocumentFragment1089() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment722() + return p.cur.onDocumentFragment1089() } -func (c *current) onDocumentFragment725() (interface{}, error) { +func (c *current) onDocumentFragment1092() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment725() (interface{}, error) { +func (p *parser) callonDocumentFragment1092() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment725() + return p.cur.onDocumentFragment1092() } -func (c *current) onDocumentFragment711(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string)) +func (c *current) onDocumentFragment1085() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonDocumentFragment711() (interface{}, error) { +func (p *parser) callonDocumentFragment1085() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment711(stack["name"]) + return p.cur.onDocumentFragment1085() } -func (c *current) onDocumentFragment736() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1026(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Listing, content.([]interface{})) } -func (p *parser) callonDocumentFragment736() (interface{}, error) { +func (p *parser) callonDocumentFragment1026() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment736() + return p.cur.onDocumentFragment1026(stack["content"]) } -func (c *current) onDocumentFragment743() (interface{}, error) { +func (c *current) onDocumentFragment1107() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment743() (interface{}, error) { +func (p *parser) callonDocumentFragment1107() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment743() + return p.cur.onDocumentFragment1107() } -func (c *current) onDocumentFragment746() (interface{}, error) { +func (c *current) onDocumentFragment1110() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment746() (interface{}, error) { +func (p *parser) callonDocumentFragment1110() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment746() + return p.cur.onDocumentFragment1110() } -func (c *current) onDocumentFragment732(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string)) +func (c *current) onDocumentFragment1103() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonDocumentFragment732() (interface{}, error) { +func (p *parser) callonDocumentFragment1103() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment732(stack["name"]) + return p.cur.onDocumentFragment1103() } -func (c *current) onDocumentFragment161(title, info, extraAttrs interface{}) (interface{}, error) { - c.setFrontMatterAllowed(false) // not allowed anymore - c.setDocumentHeaderAllowed(false) // not allowed anymore - return types.NewDocumentHeader(title.([]interface{}), info, extraAttrs.([]interface{})) +func (c *current) onDocumentFragment1117() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Literal), nil } -func (p *parser) callonDocumentFragment161() (interface{}, error) { +func (p *parser) callonDocumentFragment1117() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment161(stack["title"], stack["info"], stack["extraAttrs"]) + return p.cur.onDocumentFragment1117() } -func (c *current) onDocumentFragment759() (interface{}, error) { +func (c *current) onDocumentFragment1128() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment759() (interface{}, error) { +func (p *parser) callonDocumentFragment1128() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment759() + return p.cur.onDocumentFragment1128() } -func (c *current) onDocumentFragment762() (interface{}, error) { +func (c *current) onDocumentFragment1131() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment762() (interface{}, error) { +func (p *parser) callonDocumentFragment1131() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment762() + return p.cur.onDocumentFragment1131() } -func (c *current) onDocumentFragment753() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onDocumentFragment1124() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonDocumentFragment753() (interface{}, error) { +func (p *parser) callonDocumentFragment1124() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment753() + return p.cur.onDocumentFragment1124() } -func (c *current) onDocumentFragment771() (bool, error) { - - return !c.isWithinDelimitedBlock(), nil +func (c *current) onDocumentFragment1147() (interface{}, error) { + // content is NOT mandatory + return string(c.text), nil } -func (p *parser) callonDocumentFragment771() (bool, error) { +func (p *parser) callonDocumentFragment1147() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment771() + return p.cur.onDocumentFragment1147() } -func (c *current) onDocumentFragment773() (interface{}, error) { - - // `=` is level 0, `==` is level 1, etc. - return (len(c.text) - 1), nil - +func (c *current) onDocumentFragment1151() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment773() (interface{}, error) { +func (p *parser) callonDocumentFragment1151() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment773() -} - -func (c *current) onDocumentFragment776(level interface{}) (bool, error) { - - // use a predicate to make sure that only `=` (level 0) to `======` (level 5) are allowed - return level.(int) <= 5, nil - + return p.cur.onDocumentFragment1151() } -func (p *parser) callonDocumentFragment776() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment776(stack["level"]) -} +func (c *current) onDocumentFragment1141(content interface{}) (interface{}, error) { -func (c *current) onDocumentFragment777(level interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil + return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment777() (interface{}, error) { +func (p *parser) callonDocumentFragment1141() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment777(stack["level"]) + return p.cur.onDocumentFragment1141(stack["content"]) } -func (c *current) onDocumentFragment781() (interface{}, error) { - // can't have empty title, that may collide with example block delimiter (`====`) - return []interface{}{ - types.RawLine(c.text), - }, nil -} - -func (p *parser) callonDocumentFragment781() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment781() -} +func (c *current) onDocumentFragment1120(line interface{}) (interface{}, error) { + return line, nil -func (c *current) onDocumentFragment785() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil } -func (p *parser) callonDocumentFragment785() (interface{}, error) { +func (p *parser) callonDocumentFragment1120() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment785() + return p.cur.onDocumentFragment1120(stack["line"]) } -func (c *current) onDocumentFragment769(level, title interface{}) (interface{}, error) { - return types.NewRawSection(level.(int), title.([]interface{})) +func (c *current) onDocumentFragment1158(content interface{}) (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Literal) + return true, nil } -func (p *parser) callonDocumentFragment769() (interface{}, error) { +func (p *parser) callonDocumentFragment1158() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment769(stack["level"], stack["title"]) + return p.cur.onDocumentFragment1158(stack["content"]) } -func (c *current) onDocumentFragment804() (interface{}, error) { +func (c *current) onDocumentFragment1165() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment804() (interface{}, error) { +func (p *parser) callonDocumentFragment1165() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment804() + return p.cur.onDocumentFragment1165() } -func (c *current) onDocumentFragment807() (interface{}, error) { +func (c *current) onDocumentFragment1168() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment807() (interface{}, error) { +func (p *parser) callonDocumentFragment1168() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment807() + return p.cur.onDocumentFragment1168() } -func (c *current) onDocumentFragment815() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1161() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonDocumentFragment815() (interface{}, error) { +func (p *parser) callonDocumentFragment1161() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment815() + return p.cur.onDocumentFragment1161() } -func (c *current) onDocumentFragment793() (interface{}, error) { - - return types.NewThematicBreak() +func (c *current) onDocumentFragment1101(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Literal, content.([]interface{})) } -func (p *parser) callonDocumentFragment793() (interface{}, error) { +func (p *parser) callonDocumentFragment1101() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment793() + return p.cur.onDocumentFragment1101(stack["content"]) } -func (c *current) onDocumentFragment827() (interface{}, error) { +func (c *current) onDocumentFragment1189() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment827() (interface{}, error) { +func (p *parser) callonDocumentFragment1189() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment827() + return p.cur.onDocumentFragment1189() } -func (c *current) onDocumentFragment830() (interface{}, error) { +func (c *current) onDocumentFragment1192() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment830() (interface{}, error) { +func (p *parser) callonDocumentFragment1192() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment830() + return p.cur.onDocumentFragment1192() } -func (c *current) onDocumentFragment847() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1183() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonDocumentFragment847() (interface{}, error) { +func (p *parser) callonDocumentFragment1183() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment847() + return p.cur.onDocumentFragment1183() } -func (c *current) onDocumentFragment853() (interface{}, error) { +func (c *current) onDocumentFragment1201() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment853() (interface{}, error) { +func (p *parser) callonDocumentFragment1201() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment853() + return p.cur.onDocumentFragment1201() } -func (c *current) onDocumentFragment851(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - +func (c *current) onDocumentFragment1205() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment851() (interface{}, error) { +func (p *parser) callonDocumentFragment1205() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment851(stack["content"]) + return p.cur.onDocumentFragment1205() } -func (c *current) onDocumentFragment843(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonDocumentFragment843() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment843(stack["content"]) -} +func (c *current) onDocumentFragment1180(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) -func (c *current) onDocumentFragment857() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil } -func (p *parser) callonDocumentFragment857() (interface{}, error) { +func (p *parser) callonDocumentFragment1180() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment857() + return p.cur.onDocumentFragment1180(stack["content"]) } -func (c *current) onDocumentFragment871() (interface{}, error) { +func (c *current) onDocumentFragment1224() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment871() (interface{}, error) { +func (p *parser) callonDocumentFragment1224() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment871() + return p.cur.onDocumentFragment1224() } -func (c *current) onDocumentFragment874() (interface{}, error) { +func (c *current) onDocumentFragment1227() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment874() (interface{}, error) { +func (p *parser) callonDocumentFragment1227() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment874() + return p.cur.onDocumentFragment1227() } -func (c *current) onDocumentFragment865() (interface{}, error) { +func (c *current) onDocumentFragment1218() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonDocumentFragment865() (interface{}, error) { +func (p *parser) callonDocumentFragment1218() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment865() -} - -func (c *current) onDocumentFragment839(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - + return p.cur.onDocumentFragment1218() } -func (p *parser) callonDocumentFragment839() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment839(stack["cells"]) -} +func (c *current) onDocumentFragment1236() (interface{}, error) { -func (c *current) onDocumentFragment891() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment891() (interface{}, error) { +func (p *parser) callonDocumentFragment1236() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment891() + return p.cur.onDocumentFragment1236() } -func (c *current) onDocumentFragment894() (interface{}, error) { +func (c *current) onDocumentFragment1240() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment894() (interface{}, error) { +func (p *parser) callonDocumentFragment1240() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment894() + return p.cur.onDocumentFragment1240() } -func (c *current) onDocumentFragment915() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1215(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment915() (interface{}, error) { +func (p *parser) callonDocumentFragment1215() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment915() + return p.cur.onDocumentFragment1215(stack["content"]) } -func (c *current) onDocumentFragment918() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentFragment1250() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDocumentFragment918() (interface{}, error) { +func (p *parser) callonDocumentFragment1250() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment918() + return p.cur.onDocumentFragment1250() } -func (c *current) onDocumentFragment934() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1253(content interface{}) (bool, error) { + return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonDocumentFragment934() (interface{}, error) { +func (p *parser) callonDocumentFragment1253() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment934() + return p.cur.onDocumentFragment1253(stack["content"]) } -func (c *current) onDocumentFragment937() (interface{}, error) { +func (c *current) onDocumentFragment1255() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment937() (interface{}, error) { +func (p *parser) callonDocumentFragment1255() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment937() + return p.cur.onDocumentFragment1255() } -func (c *current) onDocumentFragment928() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onDocumentFragment1247(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment928() (interface{}, error) { +func (p *parser) callonDocumentFragment1247() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment928() + return p.cur.onDocumentFragment1247(stack["content"]) } -func (c *current) onDocumentFragment946() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1177(firstLine, otherLines interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.MarkdownQuote, append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonDocumentFragment946() (interface{}, error) { +func (p *parser) callonDocumentFragment1177() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment946() + return p.cur.onDocumentFragment1177(stack["firstLine"], stack["otherLines"]) } -func (c *current) onDocumentFragment952() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1264() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Passthrough), nil } -func (p *parser) callonDocumentFragment952() (interface{}, error) { +func (p *parser) callonDocumentFragment1264() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment952() + return p.cur.onDocumentFragment1264() } -func (c *current) onDocumentFragment950(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) +func (c *current) onDocumentFragment1269() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment950() (interface{}, error) { +func (p *parser) callonDocumentFragment1269() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment950(stack["content"]) + return p.cur.onDocumentFragment1269() } -func (c *current) onDocumentFragment908(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - +func (c *current) onDocumentFragment1272() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment908() (interface{}, error) { +func (p *parser) callonDocumentFragment1272() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment908(stack["content"]) + return p.cur.onDocumentFragment1272() } -func (c *current) onDocumentFragment956() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1265() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonDocumentFragment956() (interface{}, error) { +func (p *parser) callonDocumentFragment1265() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment956() + return p.cur.onDocumentFragment1265() } -func (c *current) onDocumentFragment905(cell interface{}) (interface{}, error) { - return cell, nil +func (c *current) onDocumentFragment1279() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Passthrough) + return true, nil } -func (p *parser) callonDocumentFragment905() (interface{}, error) { +func (p *parser) callonDocumentFragment1279() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment905(stack["cell"]) + return p.cur.onDocumentFragment1279() } -func (c *current) onDocumentFragment971() (interface{}, error) { +func (c *current) onDocumentFragment1290() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment971() (interface{}, error) { +func (p *parser) callonDocumentFragment1290() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment971() + return p.cur.onDocumentFragment1290() } -func (c *current) onDocumentFragment974() (interface{}, error) { +func (c *current) onDocumentFragment1293() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment974() (interface{}, error) { +func (p *parser) callonDocumentFragment1293() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment974() + return p.cur.onDocumentFragment1293() } -func (c *current) onDocumentFragment965() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onDocumentFragment1286() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonDocumentFragment965() (interface{}, error) { +func (p *parser) callonDocumentFragment1286() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment965() + return p.cur.onDocumentFragment1286() } -func (c *current) onDocumentFragment986() (interface{}, error) { +func (c *current) onDocumentFragment1309() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonDocumentFragment986() (interface{}, error) { +func (p *parser) callonDocumentFragment1309() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment986() + return p.cur.onDocumentFragment1309() } -func (c *current) onDocumentFragment989() (interface{}, error) { +func (c *current) onDocumentFragment1313() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment989() (interface{}, error) { +func (p *parser) callonDocumentFragment1313() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment989() + return p.cur.onDocumentFragment1313() } -func (c *current) onDocumentFragment884(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) - -} +func (c *current) onDocumentFragment1303(content interface{}) (interface{}, error) { -func (p *parser) callonDocumentFragment884() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment884(stack["cells"]) -} - -func (c *current) onDocumentFragment1005() (interface{}, error) { - return string(c.text), nil + return types.NewRawLine(content.(string)) } -func (p *parser) callonDocumentFragment1005() (interface{}, error) { +func (p *parser) callonDocumentFragment1303() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1005() + return p.cur.onDocumentFragment1303(stack["content"]) } -func (c *current) onDocumentFragment1008() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1282(line interface{}) (interface{}, error) { + return line, nil + } -func (p *parser) callonDocumentFragment1008() (interface{}, error) { +func (p *parser) callonDocumentFragment1282() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1008() + return p.cur.onDocumentFragment1282(stack["line"]) } -func (c *current) onDocumentFragment1026() (interface{}, error) { +func (c *current) onDocumentFragment1326() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1026() (interface{}, error) { +func (p *parser) callonDocumentFragment1326() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1026() + return p.cur.onDocumentFragment1326() } -func (c *current) onDocumentFragment1029() (interface{}, error) { +func (c *current) onDocumentFragment1329() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1029() (interface{}, error) { +func (p *parser) callonDocumentFragment1329() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1029() + return p.cur.onDocumentFragment1329() } -func (c *current) onDocumentFragment1045() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment1322() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonDocumentFragment1045() (interface{}, error) { +func (p *parser) callonDocumentFragment1322() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1045() + return p.cur.onDocumentFragment1322() } -func (c *current) onDocumentFragment1048() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1262(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Passthrough, content.([]interface{})) + } -func (p *parser) callonDocumentFragment1048() (interface{}, error) { +func (p *parser) callonDocumentFragment1262() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1048() + return p.cur.onDocumentFragment1262(stack["content"]) } -func (c *current) onDocumentFragment1039() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onDocumentFragment1340() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Quote), nil } -func (p *parser) callonDocumentFragment1039() (interface{}, error) { +func (p *parser) callonDocumentFragment1340() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1039() + return p.cur.onDocumentFragment1340() } -func (c *current) onDocumentFragment1057() (interface{}, error) { +func (c *current) onDocumentFragment1345() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1057() (interface{}, error) { +func (p *parser) callonDocumentFragment1345() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1057() + return p.cur.onDocumentFragment1345() } -func (c *current) onDocumentFragment1063() (interface{}, error) { +func (c *current) onDocumentFragment1348() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment1063() (interface{}, error) { +func (p *parser) callonDocumentFragment1348() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1063() + return p.cur.onDocumentFragment1348() } -func (c *current) onDocumentFragment1061(content interface{}) (interface{}, error) { - return types.NewRawContent(content.(string)) - +func (c *current) onDocumentFragment1341() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonDocumentFragment1061() (interface{}, error) { +func (p *parser) callonDocumentFragment1341() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1061(stack["content"]) + return p.cur.onDocumentFragment1341() } -func (c *current) onDocumentFragment1019(content interface{}) (interface{}, error) { - return types.NewTableCell(content.(types.RawContent)) - -} - -func (p *parser) callonDocumentFragment1019() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1019(stack["content"]) -} +func (c *current) onDocumentFragment1355() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Quote) + return true, nil -func (c *current) onDocumentFragment1067() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil } -func (p *parser) callonDocumentFragment1067() (interface{}, error) { +func (p *parser) callonDocumentFragment1355() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1067() + return p.cur.onDocumentFragment1355() } -func (c *current) onDocumentFragment1081() (interface{}, error) { +func (c *current) onDocumentFragment1366() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1081() (interface{}, error) { +func (p *parser) callonDocumentFragment1366() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1081() + return p.cur.onDocumentFragment1366() } -func (c *current) onDocumentFragment1084() (interface{}, error) { +func (c *current) onDocumentFragment1369() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1084() (interface{}, error) { +func (p *parser) callonDocumentFragment1369() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1084() + return p.cur.onDocumentFragment1369() } -func (c *current) onDocumentFragment1075() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onDocumentFragment1362() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonDocumentFragment1075() (interface{}, error) { +func (p *parser) callonDocumentFragment1362() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1075() + return p.cur.onDocumentFragment1362() } -func (c *current) onDocumentFragment998(cells interface{}) (interface{}, error) { - return types.NewTableRow(cells.([]interface{})) +func (c *current) onDocumentFragment1385() (interface{}, error) { + // content is NOT mandatory + return string(c.text), nil } -func (p *parser) callonDocumentFragment998() (interface{}, error) { +func (p *parser) callonDocumentFragment1385() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment998(stack["cells"]) + return p.cur.onDocumentFragment1385() } -func (c *current) onDocumentFragment1095() (interface{}, error) { +func (c *current) onDocumentFragment1389() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment1095() (interface{}, error) { +func (p *parser) callonDocumentFragment1389() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1095() + return p.cur.onDocumentFragment1389() } -func (c *current) onDocumentFragment1098() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1379(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) + } -func (p *parser) callonDocumentFragment1098() (interface{}, error) { +func (p *parser) callonDocumentFragment1379() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1098() + return p.cur.onDocumentFragment1379(stack["content"]) } -func (c *current) onDocumentFragment823(header, rows interface{}) (interface{}, error) { - return types.NewTable(header, rows.([]interface{})) +func (c *current) onDocumentFragment1358(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonDocumentFragment823() (interface{}, error) { +func (p *parser) callonDocumentFragment1358() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment823(stack["header"], stack["rows"]) + return p.cur.onDocumentFragment1358(stack["line"]) } -func (c *current) onDocumentFragment1113() (interface{}, error) { +func (c *current) onDocumentFragment1401() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1113() (interface{}, error) { +func (p *parser) callonDocumentFragment1401() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1113() + return p.cur.onDocumentFragment1401() } -func (c *current) onDocumentFragment1117() (interface{}, error) { +func (c *current) onDocumentFragment1404() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1117() (interface{}, error) { +func (p *parser) callonDocumentFragment1404() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1117() + return p.cur.onDocumentFragment1404() } -func (c *current) onDocumentFragment1107(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) - +func (c *current) onDocumentFragment1397() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonDocumentFragment1107() (interface{}, error) { +func (p *parser) callonDocumentFragment1397() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1107(stack["content"]) + return p.cur.onDocumentFragment1397() } -func (c *current) onDocumentFragment1128() (interface{}, error) { - return types.Tip, nil +func (c *current) onDocumentFragment1338(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Quote, content.([]interface{})) + } -func (p *parser) callonDocumentFragment1128() (interface{}, error) { +func (p *parser) callonDocumentFragment1338() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1128() + return p.cur.onDocumentFragment1338(stack["content"]) } -func (c *current) onDocumentFragment1130() (interface{}, error) { - return types.Note, nil +func (c *current) onDocumentFragment1415() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Sidebar), nil + } -func (p *parser) callonDocumentFragment1130() (interface{}, error) { +func (p *parser) callonDocumentFragment1415() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1130() + return p.cur.onDocumentFragment1415() } -func (c *current) onDocumentFragment1132() (interface{}, error) { - return types.Important, nil +func (c *current) onDocumentFragment1420() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonDocumentFragment1132() (interface{}, error) { +func (p *parser) callonDocumentFragment1420() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1132() + return p.cur.onDocumentFragment1420() } -func (c *current) onDocumentFragment1134() (interface{}, error) { - return types.Warning, nil +func (c *current) onDocumentFragment1423() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment1134() (interface{}, error) { +func (p *parser) callonDocumentFragment1423() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1134() + return p.cur.onDocumentFragment1423() } -func (c *current) onDocumentFragment1136() (interface{}, error) { - return types.Caution, nil +func (c *current) onDocumentFragment1416() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonDocumentFragment1136() (interface{}, error) { +func (p *parser) callonDocumentFragment1416() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1136() + return p.cur.onDocumentFragment1416() } -func (c *current) onDocumentFragment1143() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1430() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Sidebar) + return true, nil } -func (p *parser) callonDocumentFragment1143() (interface{}, error) { +func (p *parser) callonDocumentFragment1430() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1143() + return p.cur.onDocumentFragment1430() } -func (c *current) onDocumentFragment1146(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil +func (c *current) onDocumentFragment1441() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment1146() (bool, error) { +func (p *parser) callonDocumentFragment1441() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1146(stack["content"]) + return p.cur.onDocumentFragment1441() } -func (c *current) onDocumentFragment1148() (interface{}, error) { +func (c *current) onDocumentFragment1444() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1148() (interface{}, error) { +func (p *parser) callonDocumentFragment1444() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1148() + return p.cur.onDocumentFragment1444() } -func (c *current) onDocumentFragment1140(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - +func (c *current) onDocumentFragment1437() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonDocumentFragment1140() (interface{}, error) { +func (p *parser) callonDocumentFragment1437() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1140(stack["content"]) + return p.cur.onDocumentFragment1437() } -func (c *current) onDocumentFragment1163() (interface{}, error) { +func (c *current) onDocumentFragment1460() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonDocumentFragment1163() (interface{}, error) { +func (p *parser) callonDocumentFragment1460() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1163() + return p.cur.onDocumentFragment1460() } -func (c *current) onDocumentFragment1165() (interface{}, error) { +func (c *current) onDocumentFragment1464() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1165() (interface{}, error) { +func (p *parser) callonDocumentFragment1464() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1165() + return p.cur.onDocumentFragment1464() } -func (c *current) onDocumentFragment1178() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1454(content interface{}) (interface{}, error) { -} + return types.NewRawLine(content.(string)) -func (p *parser) callonDocumentFragment1178() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1178() } -func (c *current) onDocumentFragment1182() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonDocumentFragment1182() (interface{}, error) { +func (p *parser) callonDocumentFragment1454() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1182() + return p.cur.onDocumentFragment1454(stack["content"]) } -func (c *current) onDocumentFragment1172(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) +func (c *current) onDocumentFragment1433(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonDocumentFragment1172() (interface{}, error) { +func (p *parser) callonDocumentFragment1433() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1172(stack["content"]) + return p.cur.onDocumentFragment1433(stack["line"]) } -func (c *current) onDocumentFragment1192() (interface{}, error) { +func (c *current) onDocumentFragment1476() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1192() (interface{}, error) { +func (p *parser) callonDocumentFragment1476() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1192() + return p.cur.onDocumentFragment1476() } -func (c *current) onDocumentFragment1195(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil - +func (c *current) onDocumentFragment1479() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment1195() (bool, error) { +func (p *parser) callonDocumentFragment1479() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1195(stack["content"]) + return p.cur.onDocumentFragment1479() } -func (c *current) onDocumentFragment1197() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1472() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonDocumentFragment1197() (interface{}, error) { +func (p *parser) callonDocumentFragment1472() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1197() + return p.cur.onDocumentFragment1472() } -func (c *current) onDocumentFragment1189(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) +func (c *current) onDocumentFragment1413(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Sidebar, content.([]interface{})) } -func (p *parser) callonDocumentFragment1189() (interface{}, error) { +func (p *parser) callonDocumentFragment1413() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1189(stack["content"]) + return p.cur.onDocumentFragment1413(stack["content"]) } -func (c *current) onDocumentFragment1157(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onDocumentFragment1499() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment1157() (interface{}, error) { +func (p *parser) callonDocumentFragment1499() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1157(stack["line"]) + return p.cur.onDocumentFragment1499() } -func (c *current) onDocumentFragment1124(kind, firstLine, otherLines interface{}) (interface{}, error) { - - return types.NewAdmonitionParagraph(kind.(string), append([]interface{}{firstLine}, otherLines.([]interface{})...)) - +func (c *current) onDocumentFragment1502() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonDocumentFragment1124() (interface{}, error) { +func (p *parser) callonDocumentFragment1502() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1124(stack["kind"], stack["firstLine"], stack["otherLines"]) + return p.cur.onDocumentFragment1502() } -func (c *current) onDocumentFragment1212() (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onDocumentFragment1510() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment1212() (interface{}, error) { +func (p *parser) callonDocumentFragment1510() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1212() + return p.cur.onDocumentFragment1510() } -func (c *current) onDocumentFragment1210() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1488() (interface{}, error) { + + return types.NewThematicBreak() } -func (p *parser) callonDocumentFragment1210() (interface{}, error) { +func (p *parser) callonDocumentFragment1488() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1210() + return p.cur.onDocumentFragment1488() } -func (c *current) onDocumentFragment1217(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil +func (c *current) onDocumentFragment1522() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment1217() (bool, error) { +func (p *parser) callonDocumentFragment1522() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1217(stack["content"]) + return p.cur.onDocumentFragment1522() } -func (c *current) onDocumentFragment1219() (interface{}, error) { +func (c *current) onDocumentFragment1525() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1219() (interface{}, error) { +func (p *parser) callonDocumentFragment1525() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1219() + return p.cur.onDocumentFragment1525() } -func (c *current) onDocumentFragment1207(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) +func (c *current) onDocumentFragment1542() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment1207() (interface{}, error) { +func (p *parser) callonDocumentFragment1542() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1207(stack["content"]) + return p.cur.onDocumentFragment1542() } -func (c *current) onDocumentFragment1235() (interface{}, error) { +func (c *current) onDocumentFragment1548() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1235() (interface{}, error) { +func (p *parser) callonDocumentFragment1548() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1235() + return p.cur.onDocumentFragment1548() } -func (c *current) onDocumentFragment1239() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1546(content interface{}) (interface{}, error) { + return types.NewRawContent(content.(string)) + } -func (p *parser) callonDocumentFragment1239() (interface{}, error) { +func (p *parser) callonDocumentFragment1546() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1239() + return p.cur.onDocumentFragment1546(stack["content"]) } -func (c *current) onDocumentFragment1229(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) +func (c *current) onDocumentFragment1538(content interface{}) (interface{}, error) { + return types.NewTableCell(content.(types.RawContent)) } -func (p *parser) callonDocumentFragment1229() (interface{}, error) { +func (p *parser) callonDocumentFragment1538() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1229(stack["content"]) + return p.cur.onDocumentFragment1538(stack["content"]) } -func (c *current) onDocumentFragment1249() (interface{}, error) { +func (c *current) onDocumentFragment1552() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment1249() (interface{}, error) { +func (p *parser) callonDocumentFragment1552() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1249() + return p.cur.onDocumentFragment1552() } -func (c *current) onDocumentFragment1252(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil +func (c *current) onDocumentFragment1566() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment1252() (bool, error) { +func (p *parser) callonDocumentFragment1566() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1252(stack["content"]) + return p.cur.onDocumentFragment1566() } -func (c *current) onDocumentFragment1254() (interface{}, error) { +func (c *current) onDocumentFragment1569() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1254() (interface{}, error) { +func (p *parser) callonDocumentFragment1569() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1254() + return p.cur.onDocumentFragment1569() } -func (c *current) onDocumentFragment1246(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) - -} - -func (p *parser) callonDocumentFragment1246() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDocumentFragment1246(stack["content"]) -} - -func (c *current) onDocumentFragment1204(firstLine, otherLines interface{}) (interface{}, error) { - - return types.NewLiteralParagraph(types.LiteralBlockWithSpacesOnFirstLine, append([]interface{}{firstLine}, otherLines.([]interface{})...)) +func (c *current) onDocumentFragment1560() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonDocumentFragment1204() (interface{}, error) { +func (p *parser) callonDocumentFragment1560() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1204(stack["firstLine"], stack["otherLines"]) + return p.cur.onDocumentFragment1560() } -func (c *current) onDocumentFragment1263() (bool, error) { - return c.isFrontMatterAllowed(), nil +func (c *current) onDocumentFragment1534(cells interface{}) (interface{}, error) { + return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonDocumentFragment1263() (bool, error) { +func (p *parser) callonDocumentFragment1534() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1263() + return p.cur.onDocumentFragment1534(stack["cells"]) } -func (c *current) onDocumentFragment1269() (interface{}, error) { +func (c *current) onDocumentFragment1586() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1269() (interface{}, error) { +func (p *parser) callonDocumentFragment1586() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1269() + return p.cur.onDocumentFragment1586() } -func (c *current) onDocumentFragment1272() (interface{}, error) { +func (c *current) onDocumentFragment1589() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1272() (interface{}, error) { +func (p *parser) callonDocumentFragment1589() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1272() + return p.cur.onDocumentFragment1589() } -func (c *current) onDocumentFragment1289() (interface{}, error) { +func (c *current) onDocumentFragment1610() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDocumentFragment1289() (interface{}, error) { +func (p *parser) callonDocumentFragment1610() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1289() + return p.cur.onDocumentFragment1610() } -func (c *current) onDocumentFragment1292() (interface{}, error) { +func (c *current) onDocumentFragment1613() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragment1292() (interface{}, error) { +func (p *parser) callonDocumentFragment1613() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1292() + return p.cur.onDocumentFragment1613() } -func (c *current) onDocumentFragment1281() (interface{}, error) { +func (c *current) onDocumentFragment1629() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDocumentFragment1281() (interface{}, error) { +func (p *parser) callonDocumentFragment1629() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1281() + return p.cur.onDocumentFragment1629() } -func (c *current) onDocumentFragment1302() (interface{}, error) { +func (c *current) onDocumentFragment1632() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonDocumentFragment1302() (interface{}, error) { +func (p *parser) callonDocumentFragment1632() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1302() + return p.cur.onDocumentFragment1632() } -func (c *current) onDocumentFragment1305() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onDocumentFragment1623() (interface{}, error) { + return types.NewBlankLine() + } -func (p *parser) callonDocumentFragment1305() (interface{}, error) { +func (p *parser) callonDocumentFragment1623() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1305() + return p.cur.onDocumentFragment1623() } -func (c *current) onDocumentFragment1265(content interface{}) (interface{}, error) { - return types.NewYamlFrontMatter(content.(string)) +func (c *current) onDocumentFragment1641() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonDocumentFragment1265() (interface{}, error) { +func (p *parser) callonDocumentFragment1641() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1265(stack["content"]) + return p.cur.onDocumentFragment1641() } -func (c *current) onDocumentFragment1261(frontmatter interface{}) (interface{}, error) { - c.setFrontMatterAllowed(false) // not allowed anymore - return frontmatter, nil +func (c *current) onDocumentFragment1647() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragment1261() (interface{}, error) { +func (p *parser) callonDocumentFragment1647() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1261(stack["frontmatter"]) + return p.cur.onDocumentFragment1647() } -func (c *current) onDocumentFragment1(attributes, element interface{}) (interface{}, error) { - c.setFrontMatterAllowed(false) // not allowed anymore - c.setDocumentHeaderAllowed(false) // not allowed anymore - - if element, ok := element.(types.BlockWithAttributes); ok && attributes != nil { - element.AddAttributes(attributes.(types.Attributes)) - } - return element, nil +func (c *current) onDocumentFragment1645(content interface{}) (interface{}, error) { + return types.NewRawContent(content.(string)) } -func (p *parser) callonDocumentFragment1() (interface{}, error) { +func (p *parser) callonDocumentFragment1645() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragment1(stack["attributes"], stack["element"]) + return p.cur.onDocumentFragment1645(stack["content"]) } -func (c *current) onDocumentFragmentWithinVerbatimBlock13() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1603(content interface{}) (interface{}, error) { + return types.NewTableCell(content.(types.RawContent)) } -func (p *parser) callonDocumentFragmentWithinVerbatimBlock13() (interface{}, error) { +func (p *parser) callonDocumentFragment1603() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragmentWithinVerbatimBlock13() + return p.cur.onDocumentFragment1603(stack["content"]) } -func (c *current) onDocumentFragmentWithinVerbatimBlock17() (interface{}, error) { +func (c *current) onDocumentFragment1651() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDocumentFragmentWithinVerbatimBlock17() (interface{}, error) { +func (p *parser) callonDocumentFragment1651() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragmentWithinVerbatimBlock17() + return p.cur.onDocumentFragment1651() } -func (c *current) onDocumentFragmentWithinVerbatimBlock7(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) +func (c *current) onDocumentFragment1600(cell interface{}) (interface{}, error) { + return cell, nil } -func (p *parser) callonDocumentFragmentWithinVerbatimBlock7() (interface{}, error) { +func (p *parser) callonDocumentFragment1600() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragmentWithinVerbatimBlock7(stack["content"]) + return p.cur.onDocumentFragment1600(stack["cell"]) } -func (c *current) onDocumentFragmentWithinVerbatimBlock1(elements interface{}) (interface{}, error) { - return elements, nil +func (c *current) onDocumentFragment1666() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDocumentFragmentWithinVerbatimBlock1() (interface{}, error) { +func (p *parser) callonDocumentFragment1666() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDocumentFragmentWithinVerbatimBlock1(stack["elements"]) + return p.cur.onDocumentFragment1666() } -func (c *current) onDelimitedBlockElements10() (interface{}, error) { +func (c *current) onDocumentFragment1669() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonDelimitedBlockElements10() (interface{}, error) { +func (p *parser) callonDocumentFragment1669() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlockElements10() + return p.cur.onDocumentFragment1669() } -func (c *current) onDelimitedBlockElements6(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onDocumentFragment1660() (interface{}, error) { + return types.NewBlankLine() + } -func (p *parser) callonDelimitedBlockElements6() (interface{}, error) { +func (p *parser) callonDocumentFragment1660() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlockElements6(stack["ref"]) + return p.cur.onDocumentFragment1660() } -func (c *current) onDelimitedBlockElements1(elements interface{}) (interface{}, error) { - return elements, nil +func (c *current) onDocumentFragment1681() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDelimitedBlockElements1() (interface{}, error) { +func (p *parser) callonDocumentFragment1681() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlockElements1(stack["elements"]) + return p.cur.onDocumentFragment1681() } -func (c *current) onBlockAttributes16() (interface{}, error) { - // spaces, commas and dots are allowed in this syntax - return types.NewStringElement(string(c.text)) - +func (c *current) onDocumentFragment1684() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes16() (interface{}, error) { +func (p *parser) callonDocumentFragment1684() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes16() + return p.cur.onDocumentFragment1684() } -func (c *current) onBlockAttributes23() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1579(cells interface{}) (interface{}, error) { + return types.NewTableRow(cells.([]interface{})) + } -func (p *parser) callonBlockAttributes23() (interface{}, error) { +func (p *parser) callonDocumentFragment1579() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes23() + return p.cur.onDocumentFragment1579(stack["cells"]) } -func (c *current) onBlockAttributes19(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onDocumentFragment1700() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonBlockAttributes19() (interface{}, error) { +func (p *parser) callonDocumentFragment1700() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes19(stack["ref"]) + return p.cur.onDocumentFragment1700() } -func (c *current) onBlockAttributes29() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onDocumentFragment1703() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes29() (bool, error) { +func (p *parser) callonDocumentFragment1703() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes29() + return p.cur.onDocumentFragment1703() } -func (c *current) onBlockAttributes36() (interface{}, error) { +func (c *current) onDocumentFragment1721() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonBlockAttributes36() (interface{}, error) { +func (p *parser) callonDocumentFragment1721() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes36() + return p.cur.onDocumentFragment1721() } -func (c *current) onBlockAttributes48() (interface{}, error) { +func (c *current) onDocumentFragment1724() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonBlockAttributes48() (interface{}, error) { +func (p *parser) callonDocumentFragment1724() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes48() + return p.cur.onDocumentFragment1724() } -func (c *current) onBlockAttributes50() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment1740() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonBlockAttributes50() (interface{}, error) { +func (p *parser) callonDocumentFragment1740() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes50() + return p.cur.onDocumentFragment1740() } -func (c *current) onBlockAttributes43(start interface{}) (interface{}, error) { - return start, nil - +func (c *current) onDocumentFragment1743() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes43() (interface{}, error) { +func (p *parser) callonDocumentFragment1743() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes43(stack["start"]) + return p.cur.onDocumentFragment1743() } -func (c *current) onBlockAttributes32(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onDocumentFragment1734() (interface{}, error) { + return types.NewBlankLine() + } -func (p *parser) callonBlockAttributes32() (interface{}, error) { +func (p *parser) callonDocumentFragment1734() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes32(stack["name"], stack["start"]) + return p.cur.onDocumentFragment1734() } -func (c *current) onBlockAttributes58() (interface{}, error) { +func (c *current) onDocumentFragment1752() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonBlockAttributes58() (interface{}, error) { +func (p *parser) callonDocumentFragment1752() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes58() + return p.cur.onDocumentFragment1752() } -func (c *current) onBlockAttributes70() (interface{}, error) { +func (c *current) onDocumentFragment1758() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonBlockAttributes70() (interface{}, error) { +func (p *parser) callonDocumentFragment1758() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes70() + return p.cur.onDocumentFragment1758() } -func (c *current) onBlockAttributes72() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment1756(content interface{}) (interface{}, error) { + return types.NewRawContent(content.(string)) } -func (p *parser) callonBlockAttributes72() (interface{}, error) { +func (p *parser) callonDocumentFragment1756() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes72() + return p.cur.onDocumentFragment1756(stack["content"]) } -func (c *current) onBlockAttributes65(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment1714(content interface{}) (interface{}, error) { + return types.NewTableCell(content.(types.RawContent)) } -func (p *parser) callonBlockAttributes65() (interface{}, error) { +func (p *parser) callonDocumentFragment1714() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes65(stack["start"]) + return p.cur.onDocumentFragment1714(stack["content"]) } -func (c *current) onBlockAttributes54(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onDocumentFragment1762() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes54() (interface{}, error) { +func (p *parser) callonDocumentFragment1762() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes54(stack["name"], stack["start"]) + return p.cur.onDocumentFragment1762() } -func (c *current) onBlockAttributes80() (interface{}, error) { +func (c *current) onDocumentFragment1776() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonBlockAttributes80() (interface{}, error) { +func (p *parser) callonDocumentFragment1776() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes80() + return p.cur.onDocumentFragment1776() } -func (c *current) onBlockAttributes76(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string)) +func (c *current) onDocumentFragment1779() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes76() (interface{}, error) { +func (p *parser) callonDocumentFragment1779() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes76(stack["name"]) + return p.cur.onDocumentFragment1779() } -func (c *current) onBlockAttributes27(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onDocumentFragment1770() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonBlockAttributes27() (interface{}, error) { +func (p *parser) callonDocumentFragment1770() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes27(stack["element"]) + return p.cur.onDocumentFragment1770() } -func (c *current) onBlockAttributes86() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onDocumentFragment1693(cells interface{}) (interface{}, error) { + return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonBlockAttributes86() (interface{}, error) { +func (p *parser) callonDocumentFragment1693() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes86() + return p.cur.onDocumentFragment1693(stack["cells"]) } -func (c *current) onBlockAttributes12(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil +func (c *current) onDocumentFragment1790() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonBlockAttributes12() (interface{}, error) { +func (p *parser) callonDocumentFragment1790() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes12(stack["elements"]) + return p.cur.onDocumentFragment1790() } -func (c *current) onBlockAttributes8(id interface{}) (interface{}, error) { - return types.NewIDAttribute(id) - +func (c *current) onDocumentFragment1793() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes8() (interface{}, error) { +func (p *parser) callonDocumentFragment1793() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes8(stack["id"]) + return p.cur.onDocumentFragment1793() } -func (c *current) onBlockAttributes90() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1518(header, rows interface{}) (interface{}, error) { + return types.NewTable(header, rows.([]interface{})) } -func (p *parser) callonBlockAttributes90() (interface{}, error) { +func (p *parser) callonDocumentFragment1518() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes90() + return p.cur.onDocumentFragment1518(stack["header"], stack["rows"]) } -func (c *current) onBlockAttributes93() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentFragment1808() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonBlockAttributes93() (interface{}, error) { +func (p *parser) callonDocumentFragment1808() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes93() + return p.cur.onDocumentFragment1808() } -func (c *current) onBlockAttributes5(anchor interface{}) (interface{}, error) { - return anchor, nil - +func (c *current) onDocumentFragment1812() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes5() (interface{}, error) { +func (p *parser) callonDocumentFragment1812() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes5(stack["anchor"]) + return p.cur.onDocumentFragment1812() } -func (c *current) onBlockAttributes114() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onDocumentFragment1802(content interface{}) (interface{}, error) { + return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonBlockAttributes114() (interface{}, error) { +func (p *parser) callonDocumentFragment1802() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes114() + return p.cur.onDocumentFragment1802(stack["content"]) } -func (c *current) onBlockAttributes121() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1823() (interface{}, error) { + return types.Tip, nil } -func (p *parser) callonBlockAttributes121() (interface{}, error) { +func (p *parser) callonDocumentFragment1823() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes121() + return p.cur.onDocumentFragment1823() } -func (c *current) onBlockAttributes117(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onDocumentFragment1825() (interface{}, error) { + return types.Note, nil } -func (p *parser) callonBlockAttributes117() (interface{}, error) { +func (p *parser) callonDocumentFragment1825() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes117(stack["ref"]) + return p.cur.onDocumentFragment1825() } -func (c *current) onBlockAttributes127() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onDocumentFragment1827() (interface{}, error) { + return types.Important, nil } -func (p *parser) callonBlockAttributes127() (bool, error) { +func (p *parser) callonDocumentFragment1827() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes127() + return p.cur.onDocumentFragment1827() } -func (c *current) onBlockAttributes134() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment1829() (interface{}, error) { + return types.Warning, nil } -func (p *parser) callonBlockAttributes134() (interface{}, error) { +func (p *parser) callonDocumentFragment1829() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes134() + return p.cur.onDocumentFragment1829() } -func (c *current) onBlockAttributes146() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment1831() (interface{}, error) { + return types.Caution, nil } -func (p *parser) callonBlockAttributes146() (interface{}, error) { +func (p *parser) callonDocumentFragment1831() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes146() + return p.cur.onDocumentFragment1831() } -func (c *current) onBlockAttributes148() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment1838() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonBlockAttributes148() (interface{}, error) { +func (p *parser) callonDocumentFragment1838() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes148() + return p.cur.onDocumentFragment1838() } -func (c *current) onBlockAttributes141(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment1841(content interface{}) (bool, error) { + return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonBlockAttributes141() (interface{}, error) { +func (p *parser) callonDocumentFragment1841() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes141(stack["start"]) + return p.cur.onDocumentFragment1841(stack["content"]) } -func (c *current) onBlockAttributes130(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onDocumentFragment1843() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes130() (interface{}, error) { +func (p *parser) callonDocumentFragment1843() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes130(stack["name"], stack["start"]) + return p.cur.onDocumentFragment1843() } -func (c *current) onBlockAttributes156() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1835(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonBlockAttributes156() (interface{}, error) { +func (p *parser) callonDocumentFragment1835() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes156() + return p.cur.onDocumentFragment1835(stack["content"]) } -func (c *current) onBlockAttributes168() (interface{}, error) { +func (c *current) onDocumentFragment1858() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonBlockAttributes168() (interface{}, error) { +func (p *parser) callonDocumentFragment1858() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes168() + return p.cur.onDocumentFragment1858() } -func (c *current) onBlockAttributes170() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - +func (c *current) onDocumentFragment1860() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes170() (interface{}, error) { +func (p *parser) callonDocumentFragment1860() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes170() + return p.cur.onDocumentFragment1860() } -func (c *current) onBlockAttributes163(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment1873() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonBlockAttributes163() (interface{}, error) { +func (p *parser) callonDocumentFragment1873() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes163(stack["start"]) + return p.cur.onDocumentFragment1873() } -func (c *current) onBlockAttributes152(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onDocumentFragment1877() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes152() (interface{}, error) { +func (p *parser) callonDocumentFragment1877() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes152(stack["name"], stack["start"]) + return p.cur.onDocumentFragment1877() } -func (c *current) onBlockAttributes178() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1867(content interface{}) (interface{}, error) { + return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonBlockAttributes178() (interface{}, error) { +func (p *parser) callonDocumentFragment1867() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes178() + return p.cur.onDocumentFragment1867(stack["content"]) } -func (c *current) onBlockAttributes174(name interface{}) (interface{}, error) { +func (c *current) onDocumentFragment1887() (interface{}, error) { + return string(c.text), nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonBlockAttributes174() (interface{}, error) { +func (p *parser) callonDocumentFragment1887() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes174(stack["name"]) + return p.cur.onDocumentFragment1887() } -func (c *current) onBlockAttributes125(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onDocumentFragment1890(content interface{}) (bool, error) { + return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonBlockAttributes125() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onBlockAttributes125(stack["element"]) -} - -func (c *current) onBlockAttributes184() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (p *parser) callonDocumentFragment1890() (bool, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onDocumentFragment1890(stack["content"]) +} +func (c *current) onDocumentFragment1892() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonBlockAttributes184() (interface{}, error) { +func (p *parser) callonDocumentFragment1892() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes184() + return p.cur.onDocumentFragment1892() } -func (c *current) onBlockAttributes107(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil +func (c *current) onDocumentFragment1884(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonBlockAttributes107() (interface{}, error) { +func (p *parser) callonDocumentFragment1884() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes107(stack["elements"]) + return p.cur.onDocumentFragment1884(stack["content"]) } -func (c *current) onBlockAttributes103(title interface{}) (interface{}, error) { - return types.NewTitleAttribute(title) +func (c *current) onDocumentFragment1852(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonBlockAttributes103() (interface{}, error) { +func (p *parser) callonDocumentFragment1852() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes103(stack["title"]) + return p.cur.onDocumentFragment1852(stack["line"]) } -func (c *current) onBlockAttributes187() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1819(kind, firstLine, otherLines interface{}) (interface{}, error) { + + return types.NewAdmonitionParagraph(kind.(string), append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonBlockAttributes187() (interface{}, error) { +func (p *parser) callonDocumentFragment1819() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes187() + return p.cur.onDocumentFragment1819(stack["kind"], stack["firstLine"], stack["otherLines"]) } -func (c *current) onBlockAttributes190() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onDocumentFragment1907() (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil + } -func (p *parser) callonBlockAttributes190() (interface{}, error) { +func (p *parser) callonDocumentFragment1907() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes190() + return p.cur.onDocumentFragment1907() } -func (c *current) onBlockAttributes100(title interface{}) (interface{}, error) { - return title, nil +func (c *current) onDocumentFragment1905() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonBlockAttributes100() (interface{}, error) { +func (p *parser) callonDocumentFragment1905() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes100(stack["title"]) + return p.cur.onDocumentFragment1905() } -func (c *current) onBlockAttributes202() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1912(content interface{}) (bool, error) { + return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonBlockAttributes202() (interface{}, error) { +func (p *parser) callonDocumentFragment1912() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes202() + return p.cur.onDocumentFragment1912(stack["content"]) } -func (c *current) onBlockAttributes205() (interface{}, error) { +func (c *current) onDocumentFragment1914() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonBlockAttributes205() (interface{}, error) { +func (p *parser) callonDocumentFragment1914() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes205() + return p.cur.onDocumentFragment1914() } -func (c *current) onBlockAttributes197(attributes interface{}) (interface{}, error) { - return attributes, nil +func (c *current) onDocumentFragment1902(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonBlockAttributes197() (interface{}, error) { +func (p *parser) callonDocumentFragment1902() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes197(stack["attributes"]) + return p.cur.onDocumentFragment1902(stack["content"]) } -func (c *current) onBlockAttributes1(attributes interface{}) (interface{}, error) { - // c.unsetCurrentSubstitution() - return types.MergeAttributes(attributes.([]interface{})...) +func (c *current) onDocumentFragment1930() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonBlockAttributes1() (interface{}, error) { +func (p *parser) callonDocumentFragment1930() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onBlockAttributes1(stack["attributes"]) + return p.cur.onDocumentFragment1930() } -func (c *current) onInlineAttributes6(attribute interface{}) (interface{}, error) { - return attribute, nil - +func (c *current) onDocumentFragment1934() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonInlineAttributes6() (interface{}, error) { +func (p *parser) callonDocumentFragment1934() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineAttributes6(stack["attribute"]) + return p.cur.onDocumentFragment1934() } -func (c *current) onInlineAttributes1(attributes interface{}) (interface{}, error) { - return types.NewAttributes(attributes.([]interface{})...) +func (c *current) onDocumentFragment1924(content interface{}) (interface{}, error) { + return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonInlineAttributes1() (interface{}, error) { +func (p *parser) callonDocumentFragment1924() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineAttributes1(stack["attributes"]) + return p.cur.onDocumentFragment1924(stack["content"]) } -func (c *current) onLongHandAttributes25() (interface{}, error) { +func (c *current) onDocumentFragment1944() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes25() (interface{}, error) { +func (p *parser) callonDocumentFragment1944() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes25() + return p.cur.onDocumentFragment1944() } -func (c *current) onLongHandAttributes28() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1947(content interface{}) (bool, error) { + return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonLongHandAttributes28() (interface{}, error) { +func (p *parser) callonDocumentFragment1947() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes28() + return p.cur.onDocumentFragment1947(stack["content"]) } -func (c *current) onLongHandAttributes32() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onDocumentFragment1949() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonLongHandAttributes32() (bool, error) { +func (p *parser) callonDocumentFragment1949() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes32() + return p.cur.onDocumentFragment1949() } -func (c *current) onLongHandAttributes39() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1941(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) } -func (p *parser) callonLongHandAttributes39() (interface{}, error) { +func (p *parser) callonDocumentFragment1941() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes39() + return p.cur.onDocumentFragment1941(stack["content"]) } -func (c *current) onLongHandAttributes51() (interface{}, error) { - return string(c.text), nil +func (c *current) onDocumentFragment1899(firstLine, otherLines interface{}) (interface{}, error) { + + return types.NewLiteralParagraph(types.LiteralBlockWithSpacesOnFirstLine, append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonLongHandAttributes51() (interface{}, error) { +func (p *parser) callonDocumentFragment1899() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes51() + return p.cur.onDocumentFragment1899(stack["firstLine"], stack["otherLines"]) } -func (c *current) onLongHandAttributes53() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onDocumentFragment1958() (bool, error) { + return c.isFrontMatterAllowed(), nil } -func (p *parser) callonLongHandAttributes53() (interface{}, error) { +func (p *parser) callonDocumentFragment1958() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes53() + return p.cur.onDocumentFragment1958() } -func (c *current) onLongHandAttributes46(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment1964() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes46() (interface{}, error) { +func (p *parser) callonDocumentFragment1964() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes46(stack["start"]) + return p.cur.onDocumentFragment1964() } -func (c *current) onLongHandAttributes35(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onDocumentFragment1967() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonLongHandAttributes35() (interface{}, error) { +func (p *parser) callonDocumentFragment1967() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes35(stack["name"], stack["start"]) + return p.cur.onDocumentFragment1967() } -func (c *current) onLongHandAttributes61() (interface{}, error) { +func (c *current) onDocumentFragment1984() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes61() (interface{}, error) { +func (p *parser) callonDocumentFragment1984() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes61() + return p.cur.onDocumentFragment1984() } -func (c *current) onLongHandAttributes73() (interface{}, error) { +func (c *current) onDocumentFragment1987() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonLongHandAttributes73() (interface{}, error) { +func (p *parser) callonDocumentFragment1987() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes73() + return p.cur.onDocumentFragment1987() } -func (c *current) onLongHandAttributes75() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - +func (c *current) onDocumentFragment1976() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes75() (interface{}, error) { +func (p *parser) callonDocumentFragment1976() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes75() + return p.cur.onDocumentFragment1976() } -func (c *current) onLongHandAttributes68(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onDocumentFragment1997() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes68() (interface{}, error) { +func (p *parser) callonDocumentFragment1997() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes68(stack["start"]) + return p.cur.onDocumentFragment1997() } -func (c *current) onLongHandAttributes57(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onDocumentFragment2000() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonLongHandAttributes57() (interface{}, error) { +func (p *parser) callonDocumentFragment2000() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes57(stack["name"], stack["start"]) + return p.cur.onDocumentFragment2000() } -func (c *current) onLongHandAttributes83() (interface{}, error) { - return string(c.text), nil - +func (c *current) onDocumentFragment1960(content interface{}) (interface{}, error) { + return types.NewYamlFrontMatter(content.(string)) } -func (p *parser) callonLongHandAttributes83() (interface{}, error) { +func (p *parser) callonDocumentFragment1960() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes83() + return p.cur.onDocumentFragment1960(stack["content"]) } -func (c *current) onLongHandAttributes79(name interface{}) (interface{}, error) { +func (c *current) onDocumentFragment1956(frontmatter interface{}) (interface{}, error) { + return frontmatter, nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonLongHandAttributes79() (interface{}, error) { +func (p *parser) callonDocumentFragment1956() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes79(stack["name"]) + return p.cur.onDocumentFragment1956(stack["frontmatter"]) } -func (c *current) onLongHandAttributes30(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onDocumentFragment2008(attributes, element interface{}) (bool, error) { + if attributes != nil && element == nil { + // do not return an error, but do not accept such a kind of content (standalone attributes) + return false, fmt.Errorf("standalone attribute") + } + return true, nil } -func (p *parser) callonLongHandAttributes30() (interface{}, error) { +func (p *parser) callonDocumentFragment2008() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes30(stack["element"]) + return p.cur.onDocumentFragment2008(stack["attributes"], stack["element"]) } -func (c *current) onLongHandAttributes89() (interface{}, error) { +func (c *current) onDocumentFragment1(attributes, element interface{}) (interface{}, error) { + c.disableFrontMatterRule() // not allowed as soon as a single element is found + c.disableDocumentHeaderRule(element) // not allowed anymore, based on element that was found - return types.NewStringElement(`'`) // escaped single quote + if element, ok := element.(types.BlockWithAttributes); ok && attributes != nil { + element.AddAttributes(attributes.(types.Attributes)) + } + return element, nil } -func (p *parser) callonLongHandAttributes89() (interface{}, error) { +func (p *parser) callonDocumentFragment1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes89() + return p.cur.onDocumentFragment1(stack["attributes"], stack["element"]) } -func (c *current) onLongHandAttributes93() (interface{}, error) { - // quoted string delimiters or standalone backslash - return types.NewStringElement(string(c.text)) // keep as-is for now - +func (c *current) onDelimitedBlockElements10() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes93() (interface{}, error) { +func (p *parser) callonDelimitedBlockElements10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes93() + return p.cur.onDelimitedBlockElements10() } -func (c *current) onLongHandAttributes95() (interface{}, error) { - // = and , signs are allowed within '' quoted values - return types.NewStringElement(string(c.text)) - +func (c *current) onDelimitedBlockElements6(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonLongHandAttributes95() (interface{}, error) { +func (p *parser) callonDelimitedBlockElements6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes95() + return p.cur.onDelimitedBlockElements6(stack["ref"]) } -func (c *current) onLongHandAttributes21(elements interface{}) (interface{}, error) { - return types.Reduce(elements), nil +func (c *current) onDelimitedBlockElements1(elements interface{}) (interface{}, error) { + return elements, nil } -func (p *parser) callonLongHandAttributes21() (interface{}, error) { +func (p *parser) callonDelimitedBlockElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes21(stack["elements"]) + return p.cur.onDelimitedBlockElements1(stack["elements"]) } -func (c *current) onLongHandAttributes15(content interface{}) (interface{}, error) { - return content, nil +func (c *current) onBlockAttributes16() (interface{}, error) { + // spaces, commas and dots are allowed in this syntax + return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes15() (interface{}, error) { +func (p *parser) callonBlockAttributes16() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes15(stack["content"]) + return p.cur.onBlockAttributes16() } -func (c *current) onLongHandAttributes109() (interface{}, error) { +func (c *current) onBlockAttributes23() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonLongHandAttributes109() (interface{}, error) { +func (p *parser) callonBlockAttributes23() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes109() + return p.cur.onBlockAttributes23() } -func (c *current) onLongHandAttributes112() (interface{}, error) { - return string(c.text), nil - +func (c *current) onBlockAttributes19(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonLongHandAttributes112() (interface{}, error) { +func (p *parser) callonBlockAttributes19() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes112() + return p.cur.onBlockAttributes19(stack["ref"]) } -func (c *current) onLongHandAttributes116() (bool, error) { +func (c *current) onBlockAttributes29() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes116() (bool, error) { +func (p *parser) callonBlockAttributes29() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes116() + return p.cur.onBlockAttributes29() } -func (c *current) onLongHandAttributes123() (interface{}, error) { +func (c *current) onBlockAttributes36() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes123() (interface{}, error) { +func (p *parser) callonBlockAttributes36() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes123() + return p.cur.onBlockAttributes36() } -func (c *current) onLongHandAttributes135() (interface{}, error) { +func (c *current) onBlockAttributes48() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes135() (interface{}, error) { +func (p *parser) callonBlockAttributes48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes135() + return p.cur.onBlockAttributes48() } -func (c *current) onLongHandAttributes137() (interface{}, error) { +func (c *current) onBlockAttributes50() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes137() (interface{}, error) { +func (p *parser) callonBlockAttributes50() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes137() + return p.cur.onBlockAttributes50() } -func (c *current) onLongHandAttributes130(start interface{}) (interface{}, error) { +func (c *current) onBlockAttributes43(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes130() (interface{}, error) { +func (p *parser) callonBlockAttributes43() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes130(stack["start"]) + return p.cur.onBlockAttributes43(stack["start"]) } -func (c *current) onLongHandAttributes119(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onBlockAttributes32(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes119() (interface{}, error) { +func (p *parser) callonBlockAttributes32() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes119(stack["name"], stack["start"]) + return p.cur.onBlockAttributes32(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes145() (interface{}, error) { +func (c *current) onBlockAttributes58() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes145() (interface{}, error) { +func (p *parser) callonBlockAttributes58() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes145() + return p.cur.onBlockAttributes58() } -func (c *current) onLongHandAttributes157() (interface{}, error) { +func (c *current) onBlockAttributes70() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes157() (interface{}, error) { +func (p *parser) callonBlockAttributes70() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes157() + return p.cur.onBlockAttributes70() } -func (c *current) onLongHandAttributes159() (interface{}, error) { +func (c *current) onBlockAttributes72() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes159() (interface{}, error) { +func (p *parser) callonBlockAttributes72() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes159() + return p.cur.onBlockAttributes72() } -func (c *current) onLongHandAttributes152(start interface{}) (interface{}, error) { +func (c *current) onBlockAttributes65(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes152() (interface{}, error) { +func (p *parser) callonBlockAttributes65() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes152(stack["start"]) + return p.cur.onBlockAttributes65(stack["start"]) } -func (c *current) onLongHandAttributes141(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onBlockAttributes54(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes141() (interface{}, error) { +func (p *parser) callonBlockAttributes54() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes141(stack["name"], stack["start"]) + return p.cur.onBlockAttributes54(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes167() (interface{}, error) { +func (c *current) onBlockAttributes80() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes167() (interface{}, error) { +func (p *parser) callonBlockAttributes80() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes167() + return p.cur.onBlockAttributes80() } -func (c *current) onLongHandAttributes163(name interface{}) (interface{}, error) { +func (c *current) onBlockAttributes76(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes163() (interface{}, error) { +func (p *parser) callonBlockAttributes76() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes163(stack["name"]) + return p.cur.onBlockAttributes76(stack["name"]) } -func (c *current) onLongHandAttributes114(element interface{}) (interface{}, error) { +func (c *current) onBlockAttributes27(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes114() (interface{}, error) { +func (p *parser) callonBlockAttributes27() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes114(stack["element"]) + return p.cur.onBlockAttributes27(stack["element"]) } -func (c *current) onLongHandAttributes173() (interface{}, error) { +func (c *current) onBlockAttributes86() (interface{}, error) { - return types.NewStringElement(`"`) // escaped double quote + return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes173() (interface{}, error) { +func (p *parser) callonBlockAttributes86() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes173() + return p.cur.onBlockAttributes86() } -func (c *current) onLongHandAttributes178() (interface{}, error) { - // quoted string delimiters or standalone backslash or standalone backtick - return types.NewStringElement(string(c.text)) // keep as-is for now +func (c *current) onBlockAttributes12(elements interface{}) (interface{}, error) { + return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonLongHandAttributes178() (interface{}, error) { +func (p *parser) callonBlockAttributes12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes178() + return p.cur.onBlockAttributes12(stack["elements"]) } -func (c *current) onLongHandAttributes180() (interface{}, error) { - // = and , signs are allowed within " quoted values - return types.NewStringElement(string(c.text)) +func (c *current) onBlockAttributes8(id interface{}) (interface{}, error) { + return types.NewIDAttribute(id) } -func (p *parser) callonLongHandAttributes180() (interface{}, error) { +func (p *parser) callonBlockAttributes8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes180() + return p.cur.onBlockAttributes8(stack["id"]) } -func (c *current) onLongHandAttributes105(elements interface{}) (interface{}, error) { - return types.Reduce(elements), nil +func (c *current) onBlockAttributes90() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes105() (interface{}, error) { +func (p *parser) callonBlockAttributes90() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes105(stack["elements"]) + return p.cur.onBlockAttributes90() } -func (c *current) onLongHandAttributes188() (interface{}, error) { +func (c *current) onBlockAttributes93() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonLongHandAttributes188() (interface{}, error) { +func (p *parser) callonBlockAttributes93() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes188() + return p.cur.onBlockAttributes93() } -func (c *current) onLongHandAttributes99(content interface{}) (interface{}, error) { - return content, nil +func (c *current) onBlockAttributes5(anchor interface{}) (interface{}, error) { + return anchor, nil } -func (p *parser) callonLongHandAttributes99() (interface{}, error) { +func (p *parser) callonBlockAttributes5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes99(stack["content"]) + return p.cur.onBlockAttributes5(stack["anchor"]) } -func (c *current) onLongHandAttributes196() (interface{}, error) { +func (c *current) onBlockAttributes114() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes196() (interface{}, error) { +func (p *parser) callonBlockAttributes114() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes196() + return p.cur.onBlockAttributes114() } -func (c *current) onLongHandAttributes203() (interface{}, error) { +func (c *current) onBlockAttributes121() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes203() (interface{}, error) { +func (p *parser) callonBlockAttributes121() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes203() + return p.cur.onBlockAttributes121() } -func (c *current) onLongHandAttributes199(ref interface{}) (interface{}, error) { +func (c *current) onBlockAttributes117(ref interface{}) (interface{}, error) { return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonLongHandAttributes199() (interface{}, error) { +func (p *parser) callonBlockAttributes117() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes199(stack["ref"]) + return p.cur.onBlockAttributes117(stack["ref"]) } -func (c *current) onLongHandAttributes209() (bool, error) { +func (c *current) onBlockAttributes127() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes209() (bool, error) { +func (p *parser) callonBlockAttributes127() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes209() + return p.cur.onBlockAttributes127() } -func (c *current) onLongHandAttributes216() (interface{}, error) { +func (c *current) onBlockAttributes134() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes216() (interface{}, error) { +func (p *parser) callonBlockAttributes134() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes216() + return p.cur.onBlockAttributes134() } -func (c *current) onLongHandAttributes228() (interface{}, error) { +func (c *current) onBlockAttributes146() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes228() (interface{}, error) { +func (p *parser) callonBlockAttributes146() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes228() + return p.cur.onBlockAttributes146() } -func (c *current) onLongHandAttributes230() (interface{}, error) { +func (c *current) onBlockAttributes148() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes230() (interface{}, error) { +func (p *parser) callonBlockAttributes148() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes230() + return p.cur.onBlockAttributes148() } -func (c *current) onLongHandAttributes223(start interface{}) (interface{}, error) { +func (c *current) onBlockAttributes141(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes223() (interface{}, error) { +func (p *parser) callonBlockAttributes141() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes223(stack["start"]) + return p.cur.onBlockAttributes141(stack["start"]) } -func (c *current) onLongHandAttributes212(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onBlockAttributes130(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes212() (interface{}, error) { +func (p *parser) callonBlockAttributes130() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes212(stack["name"], stack["start"]) + return p.cur.onBlockAttributes130(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes238() (interface{}, error) { +func (c *current) onBlockAttributes156() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes238() (interface{}, error) { +func (p *parser) callonBlockAttributes156() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes238() + return p.cur.onBlockAttributes156() } -func (c *current) onLongHandAttributes250() (interface{}, error) { +func (c *current) onBlockAttributes168() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes250() (interface{}, error) { +func (p *parser) callonBlockAttributes168() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes250() + return p.cur.onBlockAttributes168() } -func (c *current) onLongHandAttributes252() (interface{}, error) { +func (c *current) onBlockAttributes170() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes252() (interface{}, error) { +func (p *parser) callonBlockAttributes170() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes252() + return p.cur.onBlockAttributes170() } -func (c *current) onLongHandAttributes245(start interface{}) (interface{}, error) { +func (c *current) onBlockAttributes163(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes245() (interface{}, error) { +func (p *parser) callonBlockAttributes163() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes245(stack["start"]) + return p.cur.onBlockAttributes163(stack["start"]) } -func (c *current) onLongHandAttributes234(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onBlockAttributes152(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +} + +func (p *parser) callonBlockAttributes152() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onBlockAttributes152(stack["name"], stack["start"]) +} + +func (c *current) onBlockAttributes178() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonBlockAttributes178() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onBlockAttributes178() +} + +func (c *current) onBlockAttributes174(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) +} + +func (p *parser) callonBlockAttributes174() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onBlockAttributes174(stack["name"]) +} + +func (c *current) onBlockAttributes125(element interface{}) (interface{}, error) { + return element, nil + +} + +func (p *parser) callonBlockAttributes125() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onBlockAttributes125(stack["element"]) +} + +func (c *current) onBlockAttributes184() (interface{}, error) { + + return types.NewStringElement(string(c.text)) + +} + +func (p *parser) callonBlockAttributes184() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onBlockAttributes184() +} + +func (c *current) onBlockAttributes107(elements interface{}) (interface{}, error) { + return types.Reduce(elements, strings.TrimSpace), nil + +} + +func (p *parser) callonBlockAttributes107() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onBlockAttributes107(stack["elements"]) +} + +func (c *current) onBlockAttributes103(title interface{}) (interface{}, error) { + return types.NewTitleAttribute(title) + +} + +func (p *parser) callonBlockAttributes103() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onBlockAttributes103(stack["title"]) +} + +func (c *current) onBlockAttributes187() (interface{}, error) { + 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) onBlockAttributes190() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonLongHandAttributes234() (interface{}, error) { +func (p *parser) callonBlockAttributes190() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes234(stack["name"], stack["start"]) + return p.cur.onBlockAttributes190() } -func (c *current) onLongHandAttributes260() (interface{}, error) { - return string(c.text), nil +func (c *current) onBlockAttributes100(title interface{}) (interface{}, error) { + return title, nil } -func (p *parser) callonLongHandAttributes260() (interface{}, error) { +func (p *parser) callonBlockAttributes100() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes260() + return p.cur.onBlockAttributes100(stack["title"]) } -func (c *current) onLongHandAttributes256(name interface{}) (interface{}, error) { +func (c *current) onBlockAttributes202() (interface{}, error) { + return string(c.text), nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonLongHandAttributes256() (interface{}, error) { +func (p *parser) callonBlockAttributes202() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes256(stack["name"]) + return p.cur.onBlockAttributes202() } -func (c *current) onLongHandAttributes207(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onBlockAttributes205() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonLongHandAttributes207() (interface{}, error) { +func (p *parser) callonBlockAttributes205() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes207(stack["element"]) + return p.cur.onBlockAttributes205() } -func (c *current) onLongHandAttributes266() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onBlockAttributes197(attributes interface{}) (interface{}, error) { + return attributes, nil } -func (p *parser) callonLongHandAttributes266() (interface{}, error) { +func (p *parser) callonBlockAttributes197() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes266() + return p.cur.onBlockAttributes197(stack["attributes"]) } -func (c *current) onLongHandAttributes272() (interface{}, error) { - return string(c.text), nil +func (c *current) onBlockAttributes1(attributes interface{}) (interface{}, error) { + // c.unsetCurrentSubstitution() + return types.MergeAttributes(attributes.([]interface{})...) } -func (p *parser) callonLongHandAttributes272() (interface{}, error) { +func (p *parser) callonBlockAttributes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes272() + return p.cur.onBlockAttributes1(stack["attributes"]) } -func (c *current) onLongHandAttributes191(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil +func (c *current) onInlineAttributes6(attribute interface{}) (interface{}, error) { + return attribute, nil } -func (p *parser) callonLongHandAttributes191() (interface{}, error) { +func (p *parser) callonInlineAttributes6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes191(stack["elements"]) + return p.cur.onInlineAttributes6(stack["attribute"]) } -func (c *current) onLongHandAttributes12(value interface{}) (interface{}, error) { - return types.NewPositionalAttribute(value) +func (c *current) onInlineAttributes1(attributes interface{}) (interface{}, error) { + return types.NewAttributes(attributes.([]interface{})...) } -func (p *parser) callonLongHandAttributes12() (interface{}, error) { +func (p *parser) callonInlineAttributes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes12(stack["value"]) + return p.cur.onInlineAttributes1(stack["attributes"]) } -func (c *current) onLongHandAttributes300() (interface{}, error) { +func (c *current) onLongHandAttributes25() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes300() (interface{}, error) { +func (p *parser) callonLongHandAttributes25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes300() + return p.cur.onLongHandAttributes25() } -func (c *current) onLongHandAttributes303() (interface{}, error) { +func (c *current) onLongHandAttributes28() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes303() (interface{}, error) { +func (p *parser) callonLongHandAttributes28() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes303() + return p.cur.onLongHandAttributes28() } -func (c *current) onLongHandAttributes307() (bool, error) { +func (c *current) onLongHandAttributes32() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes307() (bool, error) { +func (p *parser) callonLongHandAttributes32() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes307() + return p.cur.onLongHandAttributes32() } -func (c *current) onLongHandAttributes314() (interface{}, error) { +func (c *current) onLongHandAttributes39() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes314() (interface{}, error) { +func (p *parser) callonLongHandAttributes39() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes314() + return p.cur.onLongHandAttributes39() } -func (c *current) onLongHandAttributes326() (interface{}, error) { +func (c *current) onLongHandAttributes51() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes326() (interface{}, error) { +func (p *parser) callonLongHandAttributes51() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes326() + return p.cur.onLongHandAttributes51() } -func (c *current) onLongHandAttributes328() (interface{}, error) { +func (c *current) onLongHandAttributes53() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes328() (interface{}, error) { +func (p *parser) callonLongHandAttributes53() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes328() + return p.cur.onLongHandAttributes53() } -func (c *current) onLongHandAttributes321(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes46(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes321() (interface{}, error) { +func (p *parser) callonLongHandAttributes46() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes321(stack["start"]) + return p.cur.onLongHandAttributes46(stack["start"]) } -func (c *current) onLongHandAttributes310(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes35(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes310() (interface{}, error) { +func (p *parser) callonLongHandAttributes35() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes310(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes35(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes336() (interface{}, error) { +func (c *current) onLongHandAttributes61() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes336() (interface{}, error) { +func (p *parser) callonLongHandAttributes61() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes336() + return p.cur.onLongHandAttributes61() } -func (c *current) onLongHandAttributes348() (interface{}, error) { +func (c *current) onLongHandAttributes73() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes348() (interface{}, error) { +func (p *parser) callonLongHandAttributes73() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes348() + return p.cur.onLongHandAttributes73() } -func (c *current) onLongHandAttributes350() (interface{}, error) { +func (c *current) onLongHandAttributes75() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes350() (interface{}, error) { +func (p *parser) callonLongHandAttributes75() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes350() + return p.cur.onLongHandAttributes75() } -func (c *current) onLongHandAttributes343(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes68(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes343() (interface{}, error) { +func (p *parser) callonLongHandAttributes68() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes343(stack["start"]) + return p.cur.onLongHandAttributes68(stack["start"]) } -func (c *current) onLongHandAttributes332(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes57(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes332() (interface{}, error) { +func (p *parser) callonLongHandAttributes57() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes332(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes57(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes358() (interface{}, error) { +func (c *current) onLongHandAttributes83() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes358() (interface{}, error) { +func (p *parser) callonLongHandAttributes83() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes358() + return p.cur.onLongHandAttributes83() } -func (c *current) onLongHandAttributes354(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes79(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes354() (interface{}, error) { +func (p *parser) callonLongHandAttributes79() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes354(stack["name"]) + return p.cur.onLongHandAttributes79(stack["name"]) } -func (c *current) onLongHandAttributes305(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes30(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes305() (interface{}, error) { +func (p *parser) callonLongHandAttributes30() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes305(stack["element"]) + return p.cur.onLongHandAttributes30(stack["element"]) } -func (c *current) onLongHandAttributes364() (interface{}, error) { +func (c *current) onLongHandAttributes89() (interface{}, error) { return types.NewStringElement(`'`) // escaped single quote } -func (p *parser) callonLongHandAttributes364() (interface{}, error) { +func (p *parser) callonLongHandAttributes89() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes364() + return p.cur.onLongHandAttributes89() } -func (c *current) onLongHandAttributes368() (interface{}, error) { +func (c *current) onLongHandAttributes93() (interface{}, error) { // quoted string delimiters or standalone backslash return types.NewStringElement(string(c.text)) // keep as-is for now } -func (p *parser) callonLongHandAttributes368() (interface{}, error) { +func (p *parser) callonLongHandAttributes93() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes368() + return p.cur.onLongHandAttributes93() } -func (c *current) onLongHandAttributes370() (interface{}, error) { +func (c *current) onLongHandAttributes95() (interface{}, error) { // = and , signs are allowed within '' quoted values return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes370() (interface{}, error) { +func (p *parser) callonLongHandAttributes95() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes370() + return p.cur.onLongHandAttributes95() } -func (c *current) onLongHandAttributes296(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes21(elements interface{}) (interface{}, error) { return types.Reduce(elements), nil } -func (p *parser) callonLongHandAttributes296() (interface{}, error) { +func (p *parser) callonLongHandAttributes21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes296(stack["elements"]) + return p.cur.onLongHandAttributes21(stack["elements"]) } -func (c *current) onLongHandAttributes290(content interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes15(content interface{}) (interface{}, error) { return content, nil } -func (p *parser) callonLongHandAttributes290() (interface{}, error) { +func (p *parser) callonLongHandAttributes15() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes290(stack["content"]) + return p.cur.onLongHandAttributes15(stack["content"]) } -func (c *current) onLongHandAttributes384() (interface{}, error) { +func (c *current) onLongHandAttributes109() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes384() (interface{}, error) { +func (p *parser) callonLongHandAttributes109() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes384() + return p.cur.onLongHandAttributes109() } -func (c *current) onLongHandAttributes387() (interface{}, error) { +func (c *current) onLongHandAttributes112() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes387() (interface{}, error) { +func (p *parser) callonLongHandAttributes112() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes387() + return p.cur.onLongHandAttributes112() } -func (c *current) onLongHandAttributes391() (bool, error) { +func (c *current) onLongHandAttributes116() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes391() (bool, error) { +func (p *parser) callonLongHandAttributes116() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes391() + return p.cur.onLongHandAttributes116() } -func (c *current) onLongHandAttributes398() (interface{}, error) { +func (c *current) onLongHandAttributes123() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes398() (interface{}, error) { +func (p *parser) callonLongHandAttributes123() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes398() + return p.cur.onLongHandAttributes123() } -func (c *current) onLongHandAttributes410() (interface{}, error) { +func (c *current) onLongHandAttributes135() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes410() (interface{}, error) { +func (p *parser) callonLongHandAttributes135() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes410() + return p.cur.onLongHandAttributes135() } -func (c *current) onLongHandAttributes412() (interface{}, error) { +func (c *current) onLongHandAttributes137() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes412() (interface{}, error) { +func (p *parser) callonLongHandAttributes137() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes412() + return p.cur.onLongHandAttributes137() } -func (c *current) onLongHandAttributes405(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes130(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes405() (interface{}, error) { +func (p *parser) callonLongHandAttributes130() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes405(stack["start"]) + return p.cur.onLongHandAttributes130(stack["start"]) } -func (c *current) onLongHandAttributes394(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes119(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes394() (interface{}, error) { +func (p *parser) callonLongHandAttributes119() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes394(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes119(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes420() (interface{}, error) { +func (c *current) onLongHandAttributes145() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes420() (interface{}, error) { +func (p *parser) callonLongHandAttributes145() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes420() + return p.cur.onLongHandAttributes145() } -func (c *current) onLongHandAttributes432() (interface{}, error) { +func (c *current) onLongHandAttributes157() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes432() (interface{}, error) { +func (p *parser) callonLongHandAttributes157() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes432() + return p.cur.onLongHandAttributes157() } -func (c *current) onLongHandAttributes434() (interface{}, error) { +func (c *current) onLongHandAttributes159() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes434() (interface{}, error) { +func (p *parser) callonLongHandAttributes159() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes434() + return p.cur.onLongHandAttributes159() } -func (c *current) onLongHandAttributes427(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes152(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes427() (interface{}, error) { +func (p *parser) callonLongHandAttributes152() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes427(stack["start"]) + return p.cur.onLongHandAttributes152(stack["start"]) } -func (c *current) onLongHandAttributes416(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes141(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes416() (interface{}, error) { +func (p *parser) callonLongHandAttributes141() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes416(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes141(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes442() (interface{}, error) { +func (c *current) onLongHandAttributes167() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes442() (interface{}, error) { +func (p *parser) callonLongHandAttributes167() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes442() + return p.cur.onLongHandAttributes167() } -func (c *current) onLongHandAttributes438(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes163(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes438() (interface{}, error) { +func (p *parser) callonLongHandAttributes163() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes438(stack["name"]) + return p.cur.onLongHandAttributes163(stack["name"]) } -func (c *current) onLongHandAttributes389(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes114(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes389() (interface{}, error) { +func (p *parser) callonLongHandAttributes114() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes389(stack["element"]) + return p.cur.onLongHandAttributes114(stack["element"]) } -func (c *current) onLongHandAttributes448() (interface{}, error) { +func (c *current) onLongHandAttributes173() (interface{}, error) { return types.NewStringElement(`"`) // escaped double quote } -func (p *parser) callonLongHandAttributes448() (interface{}, error) { +func (p *parser) callonLongHandAttributes173() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes448() + return p.cur.onLongHandAttributes173() } -func (c *current) onLongHandAttributes453() (interface{}, error) { +func (c *current) onLongHandAttributes178() (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) callonLongHandAttributes453() (interface{}, error) { +func (p *parser) callonLongHandAttributes178() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes453() + return p.cur.onLongHandAttributes178() } -func (c *current) onLongHandAttributes455() (interface{}, error) { +func (c *current) onLongHandAttributes180() (interface{}, error) { // = and , signs are allowed within " quoted values return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes455() (interface{}, error) { +func (p *parser) callonLongHandAttributes180() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes455() + return p.cur.onLongHandAttributes180() } -func (c *current) onLongHandAttributes380(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes105(elements interface{}) (interface{}, error) { return types.Reduce(elements), nil } -func (p *parser) callonLongHandAttributes380() (interface{}, error) { +func (p *parser) callonLongHandAttributes105() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes380(stack["elements"]) + return p.cur.onLongHandAttributes105(stack["elements"]) } -func (c *current) onLongHandAttributes463() (interface{}, error) { +func (c *current) onLongHandAttributes188() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes463() (interface{}, error) { +func (p *parser) callonLongHandAttributes188() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes463() + return p.cur.onLongHandAttributes188() } -func (c *current) onLongHandAttributes374(content interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes99(content interface{}) (interface{}, error) { return content, nil } -func (p *parser) callonLongHandAttributes374() (interface{}, error) { +func (p *parser) callonLongHandAttributes99() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes374(stack["content"]) + return p.cur.onLongHandAttributes99(stack["content"]) } -func (c *current) onLongHandAttributes471() (interface{}, error) { +func (c *current) onLongHandAttributes196() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes471() (interface{}, error) { +func (p *parser) callonLongHandAttributes196() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes471() + return p.cur.onLongHandAttributes196() } -func (c *current) onLongHandAttributes478() (interface{}, error) { +func (c *current) onLongHandAttributes203() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes478() (interface{}, error) { +func (p *parser) callonLongHandAttributes203() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes478() + return p.cur.onLongHandAttributes203() } -func (c *current) onLongHandAttributes474(ref interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes199(ref interface{}) (interface{}, error) { return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonLongHandAttributes474() (interface{}, error) { +func (p *parser) callonLongHandAttributes199() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes474(stack["ref"]) + return p.cur.onLongHandAttributes199(stack["ref"]) } -func (c *current) onLongHandAttributes484() (bool, error) { +func (c *current) onLongHandAttributes209() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes484() (bool, error) { +func (p *parser) callonLongHandAttributes209() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes484() + return p.cur.onLongHandAttributes209() } -func (c *current) onLongHandAttributes491() (interface{}, error) { +func (c *current) onLongHandAttributes216() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes491() (interface{}, error) { +func (p *parser) callonLongHandAttributes216() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes491() + return p.cur.onLongHandAttributes216() } -func (c *current) onLongHandAttributes503() (interface{}, error) { +func (c *current) onLongHandAttributes228() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes503() (interface{}, error) { +func (p *parser) callonLongHandAttributes228() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes503() + return p.cur.onLongHandAttributes228() } -func (c *current) onLongHandAttributes505() (interface{}, error) { +func (c *current) onLongHandAttributes230() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes505() (interface{}, error) { +func (p *parser) callonLongHandAttributes230() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes505() + return p.cur.onLongHandAttributes230() } -func (c *current) onLongHandAttributes498(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes223(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes498() (interface{}, error) { +func (p *parser) callonLongHandAttributes223() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes498(stack["start"]) + return p.cur.onLongHandAttributes223(stack["start"]) } -func (c *current) onLongHandAttributes487(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes212(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes487() (interface{}, error) { +func (p *parser) callonLongHandAttributes212() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes487(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes212(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes513() (interface{}, error) { +func (c *current) onLongHandAttributes238() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes513() (interface{}, error) { +func (p *parser) callonLongHandAttributes238() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes513() + return p.cur.onLongHandAttributes238() } -func (c *current) onLongHandAttributes525() (interface{}, error) { +func (c *current) onLongHandAttributes250() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes525() (interface{}, error) { +func (p *parser) callonLongHandAttributes250() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes525() + return p.cur.onLongHandAttributes250() } -func (c *current) onLongHandAttributes527() (interface{}, error) { +func (c *current) onLongHandAttributes252() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes527() (interface{}, error) { +func (p *parser) callonLongHandAttributes252() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes527() + return p.cur.onLongHandAttributes252() } -func (c *current) onLongHandAttributes520(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes245(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes520() (interface{}, error) { +func (p *parser) callonLongHandAttributes245() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes520(stack["start"]) + return p.cur.onLongHandAttributes245(stack["start"]) } -func (c *current) onLongHandAttributes509(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes234(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes509() (interface{}, error) { +func (p *parser) callonLongHandAttributes234() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes509(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes234(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes535() (interface{}, error) { +func (c *current) onLongHandAttributes260() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes535() (interface{}, error) { +func (p *parser) callonLongHandAttributes260() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes535() + return p.cur.onLongHandAttributes260() } -func (c *current) onLongHandAttributes531(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes256(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes531() (interface{}, error) { +func (p *parser) callonLongHandAttributes256() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes531(stack["name"]) + return p.cur.onLongHandAttributes256(stack["name"]) } -func (c *current) onLongHandAttributes482(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes207(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes482() (interface{}, error) { +func (p *parser) callonLongHandAttributes207() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes482(stack["element"]) + return p.cur.onLongHandAttributes207(stack["element"]) } -func (c *current) onLongHandAttributes541() (interface{}, error) { +func (c *current) onLongHandAttributes266() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes541() (interface{}, error) { +func (p *parser) callonLongHandAttributes266() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes541() + return p.cur.onLongHandAttributes266() } -func (c *current) onLongHandAttributes547() (interface{}, error) { +func (c *current) onLongHandAttributes272() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes547() (interface{}, error) { +func (p *parser) callonLongHandAttributes272() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes547() + return p.cur.onLongHandAttributes272() } -func (c *current) onLongHandAttributes466(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes191(elements interface{}) (interface{}, error) { return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonLongHandAttributes466() (interface{}, error) { +func (p *parser) callonLongHandAttributes191() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes466(stack["elements"]) + return p.cur.onLongHandAttributes191(stack["elements"]) } -func (c *current) onLongHandAttributes285(id interface{}) (interface{}, error) { - return types.NewIDAttribute(id) +func (c *current) onLongHandAttributes12(value interface{}) (interface{}, error) { + return types.NewPositionalAttribute(value) } -func (p *parser) callonLongHandAttributes285() (interface{}, error) { +func (p *parser) callonLongHandAttributes12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes285(stack["id"]) + return p.cur.onLongHandAttributes12(stack["value"]) } -func (c *current) onLongHandAttributes565() (interface{}, error) { +func (c *current) onLongHandAttributes300() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes565() (interface{}, error) { +func (p *parser) callonLongHandAttributes300() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes565() + return p.cur.onLongHandAttributes300() } -func (c *current) onLongHandAttributes568() (interface{}, error) { +func (c *current) onLongHandAttributes303() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes568() (interface{}, error) { +func (p *parser) callonLongHandAttributes303() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes568() + return p.cur.onLongHandAttributes303() } -func (c *current) onLongHandAttributes572() (bool, error) { +func (c *current) onLongHandAttributes307() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes572() (bool, error) { +func (p *parser) callonLongHandAttributes307() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes572() + return p.cur.onLongHandAttributes307() } -func (c *current) onLongHandAttributes579() (interface{}, error) { +func (c *current) onLongHandAttributes314() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes579() (interface{}, error) { +func (p *parser) callonLongHandAttributes314() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes579() + return p.cur.onLongHandAttributes314() } -func (c *current) onLongHandAttributes591() (interface{}, error) { +func (c *current) onLongHandAttributes326() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes591() (interface{}, error) { +func (p *parser) callonLongHandAttributes326() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes591() + return p.cur.onLongHandAttributes326() } -func (c *current) onLongHandAttributes593() (interface{}, error) { +func (c *current) onLongHandAttributes328() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes593() (interface{}, error) { +func (p *parser) callonLongHandAttributes328() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes593() + return p.cur.onLongHandAttributes328() } -func (c *current) onLongHandAttributes586(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes321(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes586() (interface{}, error) { +func (p *parser) callonLongHandAttributes321() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes586(stack["start"]) + return p.cur.onLongHandAttributes321(stack["start"]) } -func (c *current) onLongHandAttributes575(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes310(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes575() (interface{}, error) { +func (p *parser) callonLongHandAttributes310() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes575(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes310(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes601() (interface{}, error) { +func (c *current) onLongHandAttributes336() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes601() (interface{}, error) { +func (p *parser) callonLongHandAttributes336() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes601() + return p.cur.onLongHandAttributes336() } -func (c *current) onLongHandAttributes613() (interface{}, error) { +func (c *current) onLongHandAttributes348() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes613() (interface{}, error) { +func (p *parser) callonLongHandAttributes348() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes613() + return p.cur.onLongHandAttributes348() } -func (c *current) onLongHandAttributes615() (interface{}, error) { +func (c *current) onLongHandAttributes350() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes615() (interface{}, error) { +func (p *parser) callonLongHandAttributes350() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes615() + return p.cur.onLongHandAttributes350() } -func (c *current) onLongHandAttributes608(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes343(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes608() (interface{}, error) { +func (p *parser) callonLongHandAttributes343() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes608(stack["start"]) + return p.cur.onLongHandAttributes343(stack["start"]) } -func (c *current) onLongHandAttributes597(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes332(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes597() (interface{}, error) { +func (p *parser) callonLongHandAttributes332() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes597(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes332(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes623() (interface{}, error) { +func (c *current) onLongHandAttributes358() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes623() (interface{}, error) { +func (p *parser) callonLongHandAttributes358() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes623() + return p.cur.onLongHandAttributes358() } -func (c *current) onLongHandAttributes619(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes354(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes619() (interface{}, error) { +func (p *parser) callonLongHandAttributes354() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes619(stack["name"]) + return p.cur.onLongHandAttributes354(stack["name"]) } -func (c *current) onLongHandAttributes570(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes305(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes570() (interface{}, error) { +func (p *parser) callonLongHandAttributes305() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes570(stack["element"]) + return p.cur.onLongHandAttributes305(stack["element"]) } -func (c *current) onLongHandAttributes629() (interface{}, error) { +func (c *current) onLongHandAttributes364() (interface{}, error) { return types.NewStringElement(`'`) // escaped single quote } -func (p *parser) callonLongHandAttributes629() (interface{}, error) { +func (p *parser) callonLongHandAttributes364() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes629() + return p.cur.onLongHandAttributes364() } -func (c *current) onLongHandAttributes633() (interface{}, error) { +func (c *current) onLongHandAttributes368() (interface{}, error) { // quoted string delimiters or standalone backslash return types.NewStringElement(string(c.text)) // keep as-is for now } -func (p *parser) callonLongHandAttributes633() (interface{}, error) { +func (p *parser) callonLongHandAttributes368() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes633() + return p.cur.onLongHandAttributes368() } -func (c *current) onLongHandAttributes635() (interface{}, error) { +func (c *current) onLongHandAttributes370() (interface{}, error) { // = and , signs are allowed within '' quoted values return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes635() (interface{}, error) { +func (p *parser) callonLongHandAttributes370() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes635() + return p.cur.onLongHandAttributes370() } -func (c *current) onLongHandAttributes561(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes296(elements interface{}) (interface{}, error) { return types.Reduce(elements), nil } -func (p *parser) callonLongHandAttributes561() (interface{}, error) { +func (p *parser) callonLongHandAttributes296() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes561(stack["elements"]) + return p.cur.onLongHandAttributes296(stack["elements"]) } -func (c *current) onLongHandAttributes555(content interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes290(content interface{}) (interface{}, error) { return content, nil } -func (p *parser) callonLongHandAttributes555() (interface{}, error) { +func (p *parser) callonLongHandAttributes290() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes555(stack["content"]) + return p.cur.onLongHandAttributes290(stack["content"]) } -func (c *current) onLongHandAttributes649() (interface{}, error) { +func (c *current) onLongHandAttributes384() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes649() (interface{}, error) { +func (p *parser) callonLongHandAttributes384() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes649() + return p.cur.onLongHandAttributes384() } -func (c *current) onLongHandAttributes652() (interface{}, error) { +func (c *current) onLongHandAttributes387() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes652() (interface{}, error) { +func (p *parser) callonLongHandAttributes387() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes652() + return p.cur.onLongHandAttributes387() } -func (c *current) onLongHandAttributes656() (bool, error) { +func (c *current) onLongHandAttributes391() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes656() (bool, error) { +func (p *parser) callonLongHandAttributes391() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes656() + return p.cur.onLongHandAttributes391() } -func (c *current) onLongHandAttributes663() (interface{}, error) { +func (c *current) onLongHandAttributes398() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes663() (interface{}, error) { +func (p *parser) callonLongHandAttributes398() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes663() + return p.cur.onLongHandAttributes398() } -func (c *current) onLongHandAttributes675() (interface{}, error) { +func (c *current) onLongHandAttributes410() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes675() (interface{}, error) { +func (p *parser) callonLongHandAttributes410() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes675() + return p.cur.onLongHandAttributes410() } -func (c *current) onLongHandAttributes677() (interface{}, error) { +func (c *current) onLongHandAttributes412() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes677() (interface{}, error) { +func (p *parser) callonLongHandAttributes412() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes677() + return p.cur.onLongHandAttributes412() } -func (c *current) onLongHandAttributes670(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes405(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes670() (interface{}, error) { +func (p *parser) callonLongHandAttributes405() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes670(stack["start"]) + return p.cur.onLongHandAttributes405(stack["start"]) } -func (c *current) onLongHandAttributes659(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes394(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes659() (interface{}, error) { +func (p *parser) callonLongHandAttributes394() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes659(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes394(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes685() (interface{}, error) { +func (c *current) onLongHandAttributes420() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes685() (interface{}, error) { +func (p *parser) callonLongHandAttributes420() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes685() + return p.cur.onLongHandAttributes420() } -func (c *current) onLongHandAttributes697() (interface{}, error) { +func (c *current) onLongHandAttributes432() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes697() (interface{}, error) { +func (p *parser) callonLongHandAttributes432() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes697() + return p.cur.onLongHandAttributes432() } -func (c *current) onLongHandAttributes699() (interface{}, error) { +func (c *current) onLongHandAttributes434() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes699() (interface{}, error) { +func (p *parser) callonLongHandAttributes434() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes699() + return p.cur.onLongHandAttributes434() } -func (c *current) onLongHandAttributes692(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes427(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes692() (interface{}, error) { +func (p *parser) callonLongHandAttributes427() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes692(stack["start"]) + return p.cur.onLongHandAttributes427(stack["start"]) } -func (c *current) onLongHandAttributes681(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes416(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes681() (interface{}, error) { +func (p *parser) callonLongHandAttributes416() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes681(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes416(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes707() (interface{}, error) { +func (c *current) onLongHandAttributes442() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes707() (interface{}, error) { +func (p *parser) callonLongHandAttributes442() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes707() + return p.cur.onLongHandAttributes442() } -func (c *current) onLongHandAttributes703(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes438(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes703() (interface{}, error) { +func (p *parser) callonLongHandAttributes438() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes703(stack["name"]) + return p.cur.onLongHandAttributes438(stack["name"]) } -func (c *current) onLongHandAttributes654(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes389(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes654() (interface{}, error) { +func (p *parser) callonLongHandAttributes389() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes654(stack["element"]) + return p.cur.onLongHandAttributes389(stack["element"]) } -func (c *current) onLongHandAttributes713() (interface{}, error) { +func (c *current) onLongHandAttributes448() (interface{}, error) { return types.NewStringElement(`"`) // escaped double quote } -func (p *parser) callonLongHandAttributes713() (interface{}, error) { +func (p *parser) callonLongHandAttributes448() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes713() + return p.cur.onLongHandAttributes448() } -func (c *current) onLongHandAttributes718() (interface{}, error) { +func (c *current) onLongHandAttributes453() (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) callonLongHandAttributes718() (interface{}, error) { +func (p *parser) callonLongHandAttributes453() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes718() + return p.cur.onLongHandAttributes453() } -func (c *current) onLongHandAttributes720() (interface{}, error) { +func (c *current) onLongHandAttributes455() (interface{}, error) { // = and , signs are allowed within " quoted values return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes720() (interface{}, error) { +func (p *parser) callonLongHandAttributes455() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes720() + return p.cur.onLongHandAttributes455() } -func (c *current) onLongHandAttributes645(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes380(elements interface{}) (interface{}, error) { return types.Reduce(elements), nil } -func (p *parser) callonLongHandAttributes645() (interface{}, error) { +func (p *parser) callonLongHandAttributes380() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes645(stack["elements"]) + return p.cur.onLongHandAttributes380(stack["elements"]) } -func (c *current) onLongHandAttributes728() (interface{}, error) { +func (c *current) onLongHandAttributes463() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes728() (interface{}, error) { +func (p *parser) callonLongHandAttributes463() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes728() + return p.cur.onLongHandAttributes463() } -func (c *current) onLongHandAttributes639(content interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes374(content interface{}) (interface{}, error) { return content, nil } -func (p *parser) callonLongHandAttributes639() (interface{}, error) { +func (p *parser) callonLongHandAttributes374() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes639(stack["content"]) + return p.cur.onLongHandAttributes374(stack["content"]) } -func (c *current) onLongHandAttributes736() (interface{}, error) { +func (c *current) onLongHandAttributes471() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes736() (interface{}, error) { +func (p *parser) callonLongHandAttributes471() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes736() + return p.cur.onLongHandAttributes471() } -func (c *current) onLongHandAttributes743() (interface{}, error) { +func (c *current) onLongHandAttributes478() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes743() (interface{}, error) { +func (p *parser) callonLongHandAttributes478() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes743() + return p.cur.onLongHandAttributes478() } -func (c *current) onLongHandAttributes739(ref interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes474(ref interface{}) (interface{}, error) { return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonLongHandAttributes739() (interface{}, error) { +func (p *parser) callonLongHandAttributes474() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes739(stack["ref"]) + return p.cur.onLongHandAttributes474(stack["ref"]) } -func (c *current) onLongHandAttributes749() (bool, error) { +func (c *current) onLongHandAttributes484() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes749() (bool, error) { +func (p *parser) callonLongHandAttributes484() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes749() + return p.cur.onLongHandAttributes484() } -func (c *current) onLongHandAttributes756() (interface{}, error) { +func (c *current) onLongHandAttributes491() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes756() (interface{}, error) { +func (p *parser) callonLongHandAttributes491() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes756() + return p.cur.onLongHandAttributes491() } -func (c *current) onLongHandAttributes768() (interface{}, error) { +func (c *current) onLongHandAttributes503() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes768() (interface{}, error) { +func (p *parser) callonLongHandAttributes503() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes768() + return p.cur.onLongHandAttributes503() } -func (c *current) onLongHandAttributes770() (interface{}, error) { +func (c *current) onLongHandAttributes505() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes770() (interface{}, error) { +func (p *parser) callonLongHandAttributes505() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes770() + return p.cur.onLongHandAttributes505() } -func (c *current) onLongHandAttributes763(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes498(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes763() (interface{}, error) { +func (p *parser) callonLongHandAttributes498() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes763(stack["start"]) + return p.cur.onLongHandAttributes498(stack["start"]) } -func (c *current) onLongHandAttributes752(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes487(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes752() (interface{}, error) { +func (p *parser) callonLongHandAttributes487() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes752(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes487(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes778() (interface{}, error) { +func (c *current) onLongHandAttributes513() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes778() (interface{}, error) { +func (p *parser) callonLongHandAttributes513() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes778() + return p.cur.onLongHandAttributes513() } -func (c *current) onLongHandAttributes790() (interface{}, error) { +func (c *current) onLongHandAttributes525() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes790() (interface{}, error) { +func (p *parser) callonLongHandAttributes525() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes790() + return p.cur.onLongHandAttributes525() } -func (c *current) onLongHandAttributes792() (interface{}, error) { +func (c *current) onLongHandAttributes527() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes792() (interface{}, error) { +func (p *parser) callonLongHandAttributes527() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes792() + return p.cur.onLongHandAttributes527() } -func (c *current) onLongHandAttributes785(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes520(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes785() (interface{}, error) { +func (p *parser) callonLongHandAttributes520() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes785(stack["start"]) + return p.cur.onLongHandAttributes520(stack["start"]) } -func (c *current) onLongHandAttributes774(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes509(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes774() (interface{}, error) { +func (p *parser) callonLongHandAttributes509() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes774(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes509(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes800() (interface{}, error) { +func (c *current) onLongHandAttributes535() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes800() (interface{}, error) { +func (p *parser) callonLongHandAttributes535() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes800() + return p.cur.onLongHandAttributes535() } -func (c *current) onLongHandAttributes796(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes531(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes796() (interface{}, error) { +func (p *parser) callonLongHandAttributes531() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes796(stack["name"]) + return p.cur.onLongHandAttributes531(stack["name"]) } -func (c *current) onLongHandAttributes747(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes482(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes747() (interface{}, error) { +func (p *parser) callonLongHandAttributes482() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes747(stack["element"]) + return p.cur.onLongHandAttributes482(stack["element"]) } -func (c *current) onLongHandAttributes806() (interface{}, error) { +func (c *current) onLongHandAttributes541() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes806() (interface{}, error) { +func (p *parser) callonLongHandAttributes541() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes806() + return p.cur.onLongHandAttributes541() } -func (c *current) onLongHandAttributes812() (interface{}, error) { +func (c *current) onLongHandAttributes547() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes812() (interface{}, error) { +func (p *parser) callonLongHandAttributes547() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes812() + return p.cur.onLongHandAttributes547() } -func (c *current) onLongHandAttributes731(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes466(elements interface{}) (interface{}, error) { return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonLongHandAttributes731() (interface{}, error) { +func (p *parser) callonLongHandAttributes466() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes731(stack["elements"]) + return p.cur.onLongHandAttributes466(stack["elements"]) } -func (c *current) onLongHandAttributes550(option interface{}) (interface{}, error) { - return types.NewOptionAttribute(option) +func (c *current) onLongHandAttributes285(id interface{}) (interface{}, error) { + return types.NewIDAttribute(id) } -func (p *parser) callonLongHandAttributes550() (interface{}, error) { +func (p *parser) callonLongHandAttributes285() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes550(stack["option"]) + return p.cur.onLongHandAttributes285(stack["id"]) } -func (c *current) onLongHandAttributes830() (interface{}, error) { +func (c *current) onLongHandAttributes565() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes830() (interface{}, error) { +func (p *parser) callonLongHandAttributes565() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes830() + return p.cur.onLongHandAttributes565() } -func (c *current) onLongHandAttributes833() (interface{}, error) { +func (c *current) onLongHandAttributes568() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes833() (interface{}, error) { +func (p *parser) callonLongHandAttributes568() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes833() + return p.cur.onLongHandAttributes568() } -func (c *current) onLongHandAttributes837() (bool, error) { +func (c *current) onLongHandAttributes572() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes837() (bool, error) { +func (p *parser) callonLongHandAttributes572() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes837() + return p.cur.onLongHandAttributes572() } -func (c *current) onLongHandAttributes844() (interface{}, error) { +func (c *current) onLongHandAttributes579() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes844() (interface{}, error) { +func (p *parser) callonLongHandAttributes579() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes844() + return p.cur.onLongHandAttributes579() } -func (c *current) onLongHandAttributes856() (interface{}, error) { +func (c *current) onLongHandAttributes591() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes856() (interface{}, error) { +func (p *parser) callonLongHandAttributes591() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes856() + return p.cur.onLongHandAttributes591() } -func (c *current) onLongHandAttributes858() (interface{}, error) { +func (c *current) onLongHandAttributes593() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes858() (interface{}, error) { +func (p *parser) callonLongHandAttributes593() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes858() + return p.cur.onLongHandAttributes593() } -func (c *current) onLongHandAttributes851(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes586(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes851() (interface{}, error) { +func (p *parser) callonLongHandAttributes586() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes851(stack["start"]) + return p.cur.onLongHandAttributes586(stack["start"]) } -func (c *current) onLongHandAttributes840(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes575(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes840() (interface{}, error) { +func (p *parser) callonLongHandAttributes575() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes840(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes575(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes866() (interface{}, error) { +func (c *current) onLongHandAttributes601() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes866() (interface{}, error) { +func (p *parser) callonLongHandAttributes601() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes866() + return p.cur.onLongHandAttributes601() } -func (c *current) onLongHandAttributes878() (interface{}, error) { +func (c *current) onLongHandAttributes613() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes878() (interface{}, error) { +func (p *parser) callonLongHandAttributes613() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes878() + return p.cur.onLongHandAttributes613() } -func (c *current) onLongHandAttributes880() (interface{}, error) { +func (c *current) onLongHandAttributes615() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes880() (interface{}, error) { +func (p *parser) callonLongHandAttributes615() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes880() + return p.cur.onLongHandAttributes615() } -func (c *current) onLongHandAttributes873(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes608(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes873() (interface{}, error) { +func (p *parser) callonLongHandAttributes608() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes873(stack["start"]) + return p.cur.onLongHandAttributes608(stack["start"]) } -func (c *current) onLongHandAttributes862(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes597(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes862() (interface{}, error) { +func (p *parser) callonLongHandAttributes597() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes862(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes597(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes888() (interface{}, error) { +func (c *current) onLongHandAttributes623() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes888() (interface{}, error) { +func (p *parser) callonLongHandAttributes623() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes888() + return p.cur.onLongHandAttributes623() } -func (c *current) onLongHandAttributes884(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes619(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes884() (interface{}, error) { +func (p *parser) callonLongHandAttributes619() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes884(stack["name"]) + return p.cur.onLongHandAttributes619(stack["name"]) } -func (c *current) onLongHandAttributes835(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes570(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes835() (interface{}, error) { +func (p *parser) callonLongHandAttributes570() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes835(stack["element"]) + return p.cur.onLongHandAttributes570(stack["element"]) } -func (c *current) onLongHandAttributes894() (interface{}, error) { +func (c *current) onLongHandAttributes629() (interface{}, error) { return types.NewStringElement(`'`) // escaped single quote } -func (p *parser) callonLongHandAttributes894() (interface{}, error) { +func (p *parser) callonLongHandAttributes629() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes894() + return p.cur.onLongHandAttributes629() } -func (c *current) onLongHandAttributes898() (interface{}, error) { +func (c *current) onLongHandAttributes633() (interface{}, error) { // quoted string delimiters or standalone backslash return types.NewStringElement(string(c.text)) // keep as-is for now } -func (p *parser) callonLongHandAttributes898() (interface{}, error) { +func (p *parser) callonLongHandAttributes633() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes898() + return p.cur.onLongHandAttributes633() } -func (c *current) onLongHandAttributes900() (interface{}, error) { +func (c *current) onLongHandAttributes635() (interface{}, error) { // = and , signs are allowed within '' quoted values return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes900() (interface{}, error) { +func (p *parser) callonLongHandAttributes635() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes900() + return p.cur.onLongHandAttributes635() } -func (c *current) onLongHandAttributes826(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes561(elements interface{}) (interface{}, error) { return types.Reduce(elements), nil } -func (p *parser) callonLongHandAttributes826() (interface{}, error) { +func (p *parser) callonLongHandAttributes561() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes826(stack["elements"]) + return p.cur.onLongHandAttributes561(stack["elements"]) } -func (c *current) onLongHandAttributes820(content interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes555(content interface{}) (interface{}, error) { return content, nil } -func (p *parser) callonLongHandAttributes820() (interface{}, error) { +func (p *parser) callonLongHandAttributes555() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes820(stack["content"]) + return p.cur.onLongHandAttributes555(stack["content"]) } -func (c *current) onLongHandAttributes914() (interface{}, error) { +func (c *current) onLongHandAttributes649() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes914() (interface{}, error) { +func (p *parser) callonLongHandAttributes649() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes914() + return p.cur.onLongHandAttributes649() } -func (c *current) onLongHandAttributes917() (interface{}, error) { +func (c *current) onLongHandAttributes652() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes917() (interface{}, error) { +func (p *parser) callonLongHandAttributes652() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes917() + return p.cur.onLongHandAttributes652() } -func (c *current) onLongHandAttributes921() (bool, error) { +func (c *current) onLongHandAttributes656() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes921() (bool, error) { +func (p *parser) callonLongHandAttributes656() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes921() + return p.cur.onLongHandAttributes656() } -func (c *current) onLongHandAttributes928() (interface{}, error) { +func (c *current) onLongHandAttributes663() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes928() (interface{}, error) { +func (p *parser) callonLongHandAttributes663() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes928() + return p.cur.onLongHandAttributes663() } -func (c *current) onLongHandAttributes940() (interface{}, error) { +func (c *current) onLongHandAttributes675() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes940() (interface{}, error) { +func (p *parser) callonLongHandAttributes675() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes940() + return p.cur.onLongHandAttributes675() } -func (c *current) onLongHandAttributes942() (interface{}, error) { +func (c *current) onLongHandAttributes677() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes942() (interface{}, error) { +func (p *parser) callonLongHandAttributes677() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes942() + return p.cur.onLongHandAttributes677() } -func (c *current) onLongHandAttributes935(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes670(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes935() (interface{}, error) { +func (p *parser) callonLongHandAttributes670() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes935(stack["start"]) + return p.cur.onLongHandAttributes670(stack["start"]) } -func (c *current) onLongHandAttributes924(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes659(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes924() (interface{}, error) { +func (p *parser) callonLongHandAttributes659() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes924(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes659(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes950() (interface{}, error) { +func (c *current) onLongHandAttributes685() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes950() (interface{}, error) { +func (p *parser) callonLongHandAttributes685() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes950() + return p.cur.onLongHandAttributes685() } -func (c *current) onLongHandAttributes962() (interface{}, error) { +func (c *current) onLongHandAttributes697() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes962() (interface{}, error) { +func (p *parser) callonLongHandAttributes697() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes962() + return p.cur.onLongHandAttributes697() } -func (c *current) onLongHandAttributes964() (interface{}, error) { +func (c *current) onLongHandAttributes699() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes964() (interface{}, error) { +func (p *parser) callonLongHandAttributes699() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes964() + return p.cur.onLongHandAttributes699() } -func (c *current) onLongHandAttributes957(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes692(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes957() (interface{}, error) { +func (p *parser) callonLongHandAttributes692() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes957(stack["start"]) + return p.cur.onLongHandAttributes692(stack["start"]) } -func (c *current) onLongHandAttributes946(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes681(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes946() (interface{}, error) { +func (p *parser) callonLongHandAttributes681() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes946(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes681(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes972() (interface{}, error) { +func (c *current) onLongHandAttributes707() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes972() (interface{}, error) { +func (p *parser) callonLongHandAttributes707() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes972() + return p.cur.onLongHandAttributes707() } -func (c *current) onLongHandAttributes968(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes703(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes968() (interface{}, error) { +func (p *parser) callonLongHandAttributes703() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes968(stack["name"]) + return p.cur.onLongHandAttributes703(stack["name"]) } -func (c *current) onLongHandAttributes919(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes654(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes919() (interface{}, error) { +func (p *parser) callonLongHandAttributes654() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes919(stack["element"]) + return p.cur.onLongHandAttributes654(stack["element"]) } -func (c *current) onLongHandAttributes978() (interface{}, error) { +func (c *current) onLongHandAttributes713() (interface{}, error) { return types.NewStringElement(`"`) // escaped double quote } -func (p *parser) callonLongHandAttributes978() (interface{}, error) { +func (p *parser) callonLongHandAttributes713() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes978() + return p.cur.onLongHandAttributes713() } -func (c *current) onLongHandAttributes983() (interface{}, error) { +func (c *current) onLongHandAttributes718() (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) callonLongHandAttributes983() (interface{}, error) { +func (p *parser) callonLongHandAttributes718() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes983() + return p.cur.onLongHandAttributes718() } -func (c *current) onLongHandAttributes985() (interface{}, error) { +func (c *current) onLongHandAttributes720() (interface{}, error) { // = and , signs are allowed within " quoted values return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes985() (interface{}, error) { +func (p *parser) callonLongHandAttributes720() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes985() + return p.cur.onLongHandAttributes720() } -func (c *current) onLongHandAttributes910(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes645(elements interface{}) (interface{}, error) { return types.Reduce(elements), nil } -func (p *parser) callonLongHandAttributes910() (interface{}, error) { +func (p *parser) callonLongHandAttributes645() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes910(stack["elements"]) + return p.cur.onLongHandAttributes645(stack["elements"]) } -func (c *current) onLongHandAttributes993() (interface{}, error) { +func (c *current) onLongHandAttributes728() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes993() (interface{}, error) { +func (p *parser) callonLongHandAttributes728() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes993() + return p.cur.onLongHandAttributes728() } -func (c *current) onLongHandAttributes904(content interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes639(content interface{}) (interface{}, error) { return content, nil } -func (p *parser) callonLongHandAttributes904() (interface{}, error) { +func (p *parser) callonLongHandAttributes639() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes904(stack["content"]) + return p.cur.onLongHandAttributes639(stack["content"]) } -func (c *current) onLongHandAttributes1001() (interface{}, error) { +func (c *current) onLongHandAttributes736() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes1001() (interface{}, error) { +func (p *parser) callonLongHandAttributes736() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1001() + return p.cur.onLongHandAttributes736() } -func (c *current) onLongHandAttributes1008() (interface{}, error) { +func (c *current) onLongHandAttributes743() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1008() (interface{}, error) { +func (p *parser) callonLongHandAttributes743() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1008() + return p.cur.onLongHandAttributes743() } -func (c *current) onLongHandAttributes1004(ref interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes739(ref interface{}) (interface{}, error) { return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonLongHandAttributes1004() (interface{}, error) { +func (p *parser) callonLongHandAttributes739() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1004(stack["ref"]) + return p.cur.onLongHandAttributes739(stack["ref"]) } -func (c *current) onLongHandAttributes1014() (bool, error) { +func (c *current) onLongHandAttributes749() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes1014() (bool, error) { +func (p *parser) callonLongHandAttributes749() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1014() + return p.cur.onLongHandAttributes749() } -func (c *current) onLongHandAttributes1021() (interface{}, error) { +func (c *current) onLongHandAttributes756() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1021() (interface{}, error) { +func (p *parser) callonLongHandAttributes756() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1021() + return p.cur.onLongHandAttributes756() } -func (c *current) onLongHandAttributes1033() (interface{}, error) { +func (c *current) onLongHandAttributes768() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1033() (interface{}, error) { +func (p *parser) callonLongHandAttributes768() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1033() + return p.cur.onLongHandAttributes768() } -func (c *current) onLongHandAttributes1035() (interface{}, error) { +func (c *current) onLongHandAttributes770() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes1035() (interface{}, error) { +func (p *parser) callonLongHandAttributes770() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1035() + return p.cur.onLongHandAttributes770() } -func (c *current) onLongHandAttributes1028(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes763(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes1028() (interface{}, error) { +func (p *parser) callonLongHandAttributes763() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1028(stack["start"]) + return p.cur.onLongHandAttributes763(stack["start"]) } -func (c *current) onLongHandAttributes1017(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes752(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLongHandAttributes1017() (interface{}, error) { +func (p *parser) callonLongHandAttributes752() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1017(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes752(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes1043() (interface{}, error) { +func (c *current) onLongHandAttributes778() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1043() (interface{}, error) { +func (p *parser) callonLongHandAttributes778() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1043() + return p.cur.onLongHandAttributes778() } -func (c *current) onLongHandAttributes1055() (interface{}, error) { +func (c *current) onLongHandAttributes790() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1055() (interface{}, error) { +func (p *parser) callonLongHandAttributes790() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1055() + return p.cur.onLongHandAttributes790() } -func (c *current) onLongHandAttributes1057() (interface{}, error) { +func (c *current) onLongHandAttributes792() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonLongHandAttributes1057() (interface{}, error) { +func (p *parser) callonLongHandAttributes792() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1057() + return p.cur.onLongHandAttributes792() } -func (c *current) onLongHandAttributes1050(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes785(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonLongHandAttributes1050() (interface{}, error) { +func (p *parser) callonLongHandAttributes785() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1050(stack["start"]) + return p.cur.onLongHandAttributes785(stack["start"]) } -func (c *current) onLongHandAttributes1039(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes774(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonLongHandAttributes1039() (interface{}, error) { +func (p *parser) callonLongHandAttributes774() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1039(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes774(stack["name"], stack["start"]) } -func (c *current) onLongHandAttributes1065() (interface{}, error) { +func (c *current) onLongHandAttributes800() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1065() (interface{}, error) { +func (p *parser) callonLongHandAttributes800() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1065() + return p.cur.onLongHandAttributes800() } -func (c *current) onLongHandAttributes1061(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes796(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLongHandAttributes1061() (interface{}, error) { +func (p *parser) callonLongHandAttributes796() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1061(stack["name"]) + return p.cur.onLongHandAttributes796(stack["name"]) } -func (c *current) onLongHandAttributes1012(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes747(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonLongHandAttributes1012() (interface{}, error) { +func (p *parser) callonLongHandAttributes747() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1012(stack["element"]) + return p.cur.onLongHandAttributes747(stack["element"]) } -func (c *current) onLongHandAttributes1071() (interface{}, error) { +func (c *current) onLongHandAttributes806() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonLongHandAttributes1071() (interface{}, error) { +func (p *parser) callonLongHandAttributes806() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1071() + return p.cur.onLongHandAttributes806() } -func (c *current) onLongHandAttributes1077() (interface{}, error) { +func (c *current) onLongHandAttributes812() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1077() (interface{}, error) { +func (p *parser) callonLongHandAttributes812() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1077() + return p.cur.onLongHandAttributes812() } -func (c *current) onLongHandAttributes996(elements interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes731(elements interface{}) (interface{}, error) { return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonLongHandAttributes996() (interface{}, error) { +func (p *parser) callonLongHandAttributes731() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes996(stack["elements"]) + return p.cur.onLongHandAttributes731(stack["elements"]) } -func (c *current) onLongHandAttributes815(role interface{}) (interface{}, error) { - return types.NewRoleAttribute(role) +func (c *current) onLongHandAttributes550(option interface{}) (interface{}, error) { + return types.NewOptionAttribute(option) } -func (p *parser) callonLongHandAttributes815() (interface{}, error) { +func (p *parser) callonLongHandAttributes550() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes815(stack["role"]) + return p.cur.onLongHandAttributes550(stack["option"]) } -func (c *current) onLongHandAttributes277(extra interface{}) (interface{}, error) { - return extra, nil +func (c *current) onLongHandAttributes830() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes277() (interface{}, error) { +func (p *parser) callonLongHandAttributes830() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes277(stack["extra"]) + return p.cur.onLongHandAttributes830() } -func (c *current) onLongHandAttributes1084() (interface{}, error) { +func (c *current) onLongHandAttributes833() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLongHandAttributes1084() (interface{}, error) { +func (p *parser) callonLongHandAttributes833() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1084() + return p.cur.onLongHandAttributes833() } -func (c *current) onLongHandAttributes1086(main, extras interface{}) (bool, error) { - // make sure there was a match - return main != nil || len(extras.([]interface{})) > 0, nil +func (c *current) onLongHandAttributes837() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLongHandAttributes1086() (bool, error) { +func (p *parser) callonLongHandAttributes837() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1086(stack["main"], stack["extras"]) + return p.cur.onLongHandAttributes837() } -func (c *current) onLongHandAttributes8(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 (c *current) onLongHandAttributes844() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes8() (interface{}, error) { +func (p *parser) callonLongHandAttributes844() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes8(stack["main"], stack["extras"]) + return p.cur.onLongHandAttributes844() } -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 (c *current) onLongHandAttributes856() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLongHandAttributes1() (interface{}, error) { +func (p *parser) callonLongHandAttributes856() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLongHandAttributes1(stack["firstPositionalAttributes"], stack["otherAttributes"]) + return p.cur.onLongHandAttributes856() } -func (c *current) onPositionalAttribute11() (interface{}, error) { - return string(c.text), nil +func (c *current) onLongHandAttributes858() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonPositionalAttribute11() (interface{}, error) { +func (p *parser) callonLongHandAttributes858() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPositionalAttribute11() + return p.cur.onLongHandAttributes858() } -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 (c *current) onLongHandAttributes851(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonPositionalAttribute2() (interface{}, error) { +func (p *parser) callonLongHandAttributes851() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPositionalAttribute2(stack["value"]) + return p.cur.onLongHandAttributes851(stack["start"]) } -func (c *current) onPositionalAttribute20() (interface{}, error) { +func (c *current) onLongHandAttributes840(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) +} + +func (p *parser) callonLongHandAttributes840() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLongHandAttributes840(stack["name"], stack["start"]) +} + +func (c *current) onLongHandAttributes866() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonPositionalAttribute20() (interface{}, error) { +func (p *parser) callonLongHandAttributes866() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPositionalAttribute20() + return p.cur.onLongHandAttributes866() } -func (c *current) onPositionalAttribute26() (interface{}, error) { +func (c *current) onLongHandAttributes878() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonPositionalAttribute26() (interface{}, error) { +func (p *parser) callonLongHandAttributes878() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPositionalAttribute26() + return p.cur.onLongHandAttributes878() } -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 (c *current) onLongHandAttributes880() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonPositionalAttribute30() (bool, error) { +func (p *parser) callonLongHandAttributes880() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPositionalAttribute30(stack["value"]) + return p.cur.onLongHandAttributes880() } -func (c *current) onPositionalAttribute15(value interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes873(start interface{}) (interface{}, error) { + return start, nil - return types.NewPositionalAttribute(nil) +} + +func (p *parser) callonLongHandAttributes873() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLongHandAttributes873(stack["start"]) +} +func (c *current) onLongHandAttributes862(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonPositionalAttribute15() (interface{}, error) { +func (p *parser) callonLongHandAttributes862() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPositionalAttribute15(stack["value"]) + return p.cur.onLongHandAttributes862(stack["name"], stack["start"]) } -func (c *current) onNamedAttribute7() (interface{}, error) { +func (c *current) onLongHandAttributes888() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonNamedAttribute7() (interface{}, error) { +func (p *parser) callonLongHandAttributes888() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onNamedAttribute7() + return p.cur.onLongHandAttributes888() } -func (c *current) onNamedAttribute12() (interface{}, error) { - return string(c.text), nil +func (c *current) onLongHandAttributes884(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonNamedAttribute12() (interface{}, error) { +func (p *parser) callonLongHandAttributes884() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onNamedAttribute12() + return p.cur.onLongHandAttributes884(stack["name"]) } -func (c *current) onNamedAttribute4() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil +func (c *current) onLongHandAttributes835(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonNamedAttribute4() (interface{}, error) { +func (p *parser) callonLongHandAttributes835() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onNamedAttribute4() + return p.cur.onLongHandAttributes835(stack["element"]) } -func (c *current) onNamedAttribute16() (interface{}, error) { - return string(c.text), nil +func (c *current) onLongHandAttributes894() (interface{}, error) { + + return types.NewStringElement(`'`) // escaped single quote } -func (p *parser) callonNamedAttribute16() (interface{}, error) { +func (p *parser) callonLongHandAttributes894() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onNamedAttribute16() + return p.cur.onLongHandAttributes894() } -func (c *current) onNamedAttribute24() (interface{}, error) { - return string(c.text), nil +func (c *current) onLongHandAttributes898() (interface{}, error) { + // quoted string delimiters or standalone backslash + return types.NewStringElement(string(c.text)) // keep as-is for now } -func (p *parser) callonNamedAttribute24() (interface{}, error) { +func (p *parser) callonLongHandAttributes898() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onNamedAttribute24() + return p.cur.onLongHandAttributes898() } -func (c *current) onNamedAttribute1(key, value interface{}) (interface{}, error) { - // TODO: include `,` or expect `]` - return types.NewNamedAttribute(key.(string), value) +func (c *current) onLongHandAttributes900() (interface{}, error) { + // = and , signs are allowed within '' quoted values + return types.NewStringElement(string(c.text)) } -func (p *parser) callonNamedAttribute1() (interface{}, error) { +func (p *parser) callonLongHandAttributes900() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onNamedAttribute1(stack["key"], stack["value"]) + return p.cur.onLongHandAttributes900() } -func (c *current) onAttributeRawValue15() (interface{}, error) { +func (c *current) onLongHandAttributes826(elements interface{}) (interface{}, error) { + return types.Reduce(elements), nil + +} + +func (p *parser) callonLongHandAttributes826() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLongHandAttributes826(stack["elements"]) +} + +func (c *current) onLongHandAttributes820(content interface{}) (interface{}, error) { + return content, nil + +} + +func (p *parser) callonLongHandAttributes820() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLongHandAttributes820(stack["content"]) +} + +func (c *current) onLongHandAttributes914() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue15() (interface{}, error) { +func (p *parser) callonLongHandAttributes914() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue15() + return p.cur.onLongHandAttributes914() } -func (c *current) onAttributeRawValue18() (interface{}, error) { +func (c *current) onLongHandAttributes917() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue18() (interface{}, error) { +func (p *parser) callonLongHandAttributes917() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue18() + return p.cur.onLongHandAttributes917() } -func (c *current) onAttributeRawValue22() (bool, error) { +func (c *current) onLongHandAttributes921() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonAttributeRawValue22() (bool, error) { +func (p *parser) callonLongHandAttributes921() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue22() + return p.cur.onLongHandAttributes921() } -func (c *current) onAttributeRawValue29() (interface{}, error) { +func (c *current) onLongHandAttributes928() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue29() (interface{}, error) { +func (p *parser) callonLongHandAttributes928() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue29() + return p.cur.onLongHandAttributes928() } -func (c *current) onAttributeRawValue41() (interface{}, error) { +func (c *current) onLongHandAttributes940() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue41() (interface{}, error) { +func (p *parser) callonLongHandAttributes940() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue41() + return p.cur.onLongHandAttributes940() } -func (c *current) onAttributeRawValue43() (interface{}, error) { +func (c *current) onLongHandAttributes942() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonAttributeRawValue43() (interface{}, error) { +func (p *parser) callonLongHandAttributes942() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue43() + return p.cur.onLongHandAttributes942() } -func (c *current) onAttributeRawValue36(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes935(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonAttributeRawValue36() (interface{}, error) { +func (p *parser) callonLongHandAttributes935() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue36(stack["start"]) + return p.cur.onLongHandAttributes935(stack["start"]) } -func (c *current) onAttributeRawValue25(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes924(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonAttributeRawValue25() (interface{}, error) { +func (p *parser) callonLongHandAttributes924() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue25(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes924(stack["name"], stack["start"]) } -func (c *current) onAttributeRawValue51() (interface{}, error) { +func (c *current) onLongHandAttributes950() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue51() (interface{}, error) { +func (p *parser) callonLongHandAttributes950() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue51() + return p.cur.onLongHandAttributes950() } -func (c *current) onAttributeRawValue63() (interface{}, error) { +func (c *current) onLongHandAttributes962() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue63() (interface{}, error) { +func (p *parser) callonLongHandAttributes962() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue63() + return p.cur.onLongHandAttributes962() } -func (c *current) onAttributeRawValue65() (interface{}, error) { +func (c *current) onLongHandAttributes964() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonAttributeRawValue65() (interface{}, error) { +func (p *parser) callonLongHandAttributes964() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue65() + return p.cur.onLongHandAttributes964() } -func (c *current) onAttributeRawValue58(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes957(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonAttributeRawValue58() (interface{}, error) { +func (p *parser) callonLongHandAttributes957() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue58(stack["start"]) + return p.cur.onLongHandAttributes957(stack["start"]) } -func (c *current) onAttributeRawValue47(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes946(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonAttributeRawValue47() (interface{}, error) { +func (p *parser) callonLongHandAttributes946() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue47(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes946(stack["name"], stack["start"]) } -func (c *current) onAttributeRawValue73() (interface{}, error) { +func (c *current) onLongHandAttributes972() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue73() (interface{}, error) { +func (p *parser) callonLongHandAttributes972() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue73() + return p.cur.onLongHandAttributes972() } -func (c *current) onAttributeRawValue69(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes968(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonAttributeRawValue69() (interface{}, error) { +func (p *parser) callonLongHandAttributes968() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue69(stack["name"]) + return p.cur.onLongHandAttributes968(stack["name"]) } -func (c *current) onAttributeRawValue20(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes919(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonAttributeRawValue20() (interface{}, error) { +func (p *parser) callonLongHandAttributes919() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue20(stack["element"]) + return p.cur.onLongHandAttributes919(stack["element"]) } -func (c *current) onAttributeRawValue79() (interface{}, error) { +func (c *current) onLongHandAttributes978() (interface{}, error) { - return types.NewStringElement(`'`) // escaped single quote + return types.NewStringElement(`"`) // escaped double quote + +} + +func (p *parser) callonLongHandAttributes978() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLongHandAttributes978() +} + +func (c *current) onLongHandAttributes983() (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) callonLongHandAttributes983() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onLongHandAttributes983() +} + +func (c *current) onLongHandAttributes985() (interface{}, error) { + // = and , signs are allowed within " quoted values + return types.NewStringElement(string(c.text)) } -func (p *parser) callonAttributeRawValue79() (interface{}, error) { +func (p *parser) callonLongHandAttributes985() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue79() + return p.cur.onLongHandAttributes985() } -func (c *current) onAttributeRawValue83() (interface{}, error) { - // quoted string delimiters or standalone backslash - return types.NewStringElement(string(c.text)) // keep as-is for now +func (c *current) onLongHandAttributes910(elements interface{}) (interface{}, error) { + return types.Reduce(elements), nil } -func (p *parser) callonAttributeRawValue83() (interface{}, error) { +func (p *parser) callonLongHandAttributes910() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue83() + return p.cur.onLongHandAttributes910(stack["elements"]) } -func (c *current) onAttributeRawValue85() (interface{}, error) { - // = and , signs are allowed within '' quoted values - return types.NewStringElement(string(c.text)) +func (c *current) onLongHandAttributes993() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonAttributeRawValue85() (interface{}, error) { +func (p *parser) callonLongHandAttributes993() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue85() + return p.cur.onLongHandAttributes993() } -func (c *current) onAttributeRawValue11(elements interface{}) (interface{}, error) { - return types.Reduce(elements), nil +func (c *current) onLongHandAttributes904(content interface{}) (interface{}, error) { + return content, nil } -func (p *parser) callonAttributeRawValue11() (interface{}, error) { +func (p *parser) callonLongHandAttributes904() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue11(stack["elements"]) + return p.cur.onLongHandAttributes904(stack["content"]) } -func (c *current) onAttributeRawValue5(content interface{}) (interface{}, error) { - return content, nil +func (c *current) onLongHandAttributes1001() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonAttributeRawValue5() (interface{}, error) { +func (p *parser) callonLongHandAttributes1001() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue5(stack["content"]) + return p.cur.onLongHandAttributes1001() } -func (c *current) onAttributeRawValue99() (interface{}, error) { +func (c *current) onLongHandAttributes1008() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonAttributeRawValue99() (interface{}, error) { +func (p *parser) callonLongHandAttributes1008() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue99() + return p.cur.onLongHandAttributes1008() } -func (c *current) onAttributeRawValue102() (interface{}, error) { - return string(c.text), nil - +func (c *current) onLongHandAttributes1004(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonAttributeRawValue102() (interface{}, error) { +func (p *parser) callonLongHandAttributes1004() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue102() + return p.cur.onLongHandAttributes1004(stack["ref"]) } -func (c *current) onAttributeRawValue106() (bool, error) { +func (c *current) onLongHandAttributes1014() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonAttributeRawValue106() (bool, error) { +func (p *parser) callonLongHandAttributes1014() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue106() + return p.cur.onLongHandAttributes1014() } -func (c *current) onAttributeRawValue113() (interface{}, error) { +func (c *current) onLongHandAttributes1021() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue113() (interface{}, error) { +func (p *parser) callonLongHandAttributes1021() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue113() + return p.cur.onLongHandAttributes1021() } -func (c *current) onAttributeRawValue125() (interface{}, error) { +func (c *current) onLongHandAttributes1033() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue125() (interface{}, error) { +func (p *parser) callonLongHandAttributes1033() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue125() + return p.cur.onLongHandAttributes1033() } -func (c *current) onAttributeRawValue127() (interface{}, error) { +func (c *current) onLongHandAttributes1035() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonAttributeRawValue127() (interface{}, error) { +func (p *parser) callonLongHandAttributes1035() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue127() + return p.cur.onLongHandAttributes1035() } -func (c *current) onAttributeRawValue120(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes1028(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonAttributeRawValue120() (interface{}, error) { +func (p *parser) callonLongHandAttributes1028() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue120(stack["start"]) + return p.cur.onLongHandAttributes1028(stack["start"]) } -func (c *current) onAttributeRawValue109(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onLongHandAttributes1017(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonAttributeRawValue109() (interface{}, error) { +func (p *parser) callonLongHandAttributes1017() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue109(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes1017(stack["name"], stack["start"]) } -func (c *current) onAttributeRawValue135() (interface{}, error) { +func (c *current) onLongHandAttributes1043() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue135() (interface{}, error) { +func (p *parser) callonLongHandAttributes1043() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue135() + return p.cur.onLongHandAttributes1043() } -func (c *current) onAttributeRawValue147() (interface{}, error) { +func (c *current) onLongHandAttributes1055() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue147() (interface{}, error) { +func (p *parser) callonLongHandAttributes1055() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue147() + return p.cur.onLongHandAttributes1055() } -func (c *current) onAttributeRawValue149() (interface{}, error) { +func (c *current) onLongHandAttributes1057() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonAttributeRawValue149() (interface{}, error) { +func (p *parser) callonLongHandAttributes1057() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue149() + return p.cur.onLongHandAttributes1057() } -func (c *current) onAttributeRawValue142(start interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes1050(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonAttributeRawValue142() (interface{}, error) { +func (p *parser) callonLongHandAttributes1050() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue142(stack["start"]) + return p.cur.onLongHandAttributes1050(stack["start"]) } -func (c *current) onAttributeRawValue131(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onLongHandAttributes1039(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonAttributeRawValue131() (interface{}, error) { +func (p *parser) callonLongHandAttributes1039() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue131(stack["name"], stack["start"]) + return p.cur.onLongHandAttributes1039(stack["name"], stack["start"]) } -func (c *current) onAttributeRawValue157() (interface{}, error) { +func (c *current) onLongHandAttributes1065() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonAttributeRawValue157() (interface{}, error) { +func (p *parser) callonLongHandAttributes1065() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue157() + return p.cur.onLongHandAttributes1065() } -func (c *current) onAttributeRawValue153(name interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes1061(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonAttributeRawValue153() (interface{}, error) { +func (p *parser) callonLongHandAttributes1061() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue153(stack["name"]) + return p.cur.onLongHandAttributes1061(stack["name"]) } -func (c *current) onAttributeRawValue104(element interface{}) (interface{}, error) { +func (c *current) onLongHandAttributes1012(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonAttributeRawValue104() (interface{}, error) { +func (p *parser) callonLongHandAttributes1012() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue104(stack["element"]) + return p.cur.onLongHandAttributes1012(stack["element"]) } -func (c *current) onAttributeRawValue163() (interface{}, error) { +func (c *current) onLongHandAttributes1071() (interface{}, error) { - return types.NewStringElement(`"`) // escaped double quote + return types.NewStringElement(string(c.text)) } -func (p *parser) callonAttributeRawValue163() (interface{}, error) { +func (p *parser) callonLongHandAttributes1071() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue163() + return p.cur.onLongHandAttributes1071() } -func (c *current) onAttributeRawValue168() (interface{}, error) { - // quoted string delimiters or standalone backslash or standalone backtick - return types.NewStringElement(string(c.text)) // keep as-is for now +func (c *current) onLongHandAttributes1077() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonAttributeRawValue168() (interface{}, error) { +func (p *parser) callonLongHandAttributes1077() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue168() + return p.cur.onLongHandAttributes1077() } -func (c *current) onAttributeRawValue170() (interface{}, error) { - // = and , signs are allowed within " quoted values - return types.NewStringElement(string(c.text)) +func (c *current) onLongHandAttributes996(elements interface{}) (interface{}, error) { + return types.Reduce(elements, strings.TrimSpace), nil } -func (p *parser) callonAttributeRawValue170() (interface{}, error) { +func (p *parser) callonLongHandAttributes996() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue170() + return p.cur.onLongHandAttributes996(stack["elements"]) } -func (c *current) onAttributeRawValue95(elements interface{}) (interface{}, error) { - return types.Reduce(elements), nil +func (c *current) onLongHandAttributes815(role interface{}) (interface{}, error) { + return types.NewRoleAttribute(role) } -func (p *parser) callonAttributeRawValue95() (interface{}, error) { +func (p *parser) callonLongHandAttributes815() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue95(stack["elements"]) + return p.cur.onLongHandAttributes815(stack["role"]) } -func (c *current) onAttributeRawValue178() (interface{}, error) { - return string(c.text), nil +func (c *current) onLongHandAttributes277(extra interface{}) (interface{}, error) { + return extra, nil } -func (p *parser) callonAttributeRawValue178() (interface{}, error) { +func (p *parser) callonLongHandAttributes277() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue178() + return p.cur.onLongHandAttributes277(stack["extra"]) } -func (c *current) onAttributeRawValue89(content interface{}) (interface{}, error) { - return content, nil +func (c *current) onLongHandAttributes1084() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonAttributeRawValue89() (interface{}, error) { +func (p *parser) callonLongHandAttributes1084() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue89(stack["content"]) + return p.cur.onLongHandAttributes1084() } -func (c *current) onAttributeRawValue186() (interface{}, error) { - return string(c.text), nil +func (c *current) onLongHandAttributes1086(main, extras interface{}) (bool, error) { + // make sure there was a match + return main != nil || len(extras.([]interface{})) > 0, nil } -func (p *parser) callonAttributeRawValue186() (interface{}, error) { +func (p *parser) callonLongHandAttributes1086() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue186() + return p.cur.onLongHandAttributes1086(stack["main"], stack["extras"]) } -func (c *current) onAttributeRawValue1(value interface{}) (interface{}, error) { - return value, nil +func (c *current) onLongHandAttributes8(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) callonAttributeRawValue1() (interface{}, error) { +func (p *parser) callonLongHandAttributes8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onAttributeRawValue1(stack["value"]) + return p.cur.onLongHandAttributes8(stack["main"], stack["extras"]) } -func (c *current) onUnquotedAttributeRawValue4() (interface{}, error) { - return string(c.text), nil +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) callonUnquotedAttributeRawValue4() (interface{}, error) { +func (p *parser) callonLongHandAttributes1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue4() + return p.cur.onLongHandAttributes1(stack["firstPositionalAttributes"], stack["otherAttributes"]) } -func (c *current) onUnquotedAttributeRawValue17() (interface{}, error) { +func (c *current) onPositionalAttribute11() (interface{}, error) { return string(c.text), nil -} -func (p *parser) callonUnquotedAttributeRawValue17() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeRawValue17() -} - -func (c *current) onUnquotedAttributeRawValue13(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonUnquotedAttributeRawValue13() (interface{}, error) { +func (p *parser) callonPositionalAttribute11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue13(stack["ref"]) + return p.cur.onPositionalAttribute11() } -func (c *current) onUnquotedAttributeRawValue23() (bool, error) { - return c.isSubstitutionEnabled(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) callonUnquotedAttributeRawValue23() (bool, error) { +func (p *parser) callonPositionalAttribute2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue23() + return p.cur.onPositionalAttribute2(stack["value"]) } -func (c *current) onUnquotedAttributeRawValue30() (interface{}, error) { +func (c *current) onPositionalAttribute20() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue30() (interface{}, error) { +func (p *parser) callonPositionalAttribute20() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue30() + return p.cur.onPositionalAttribute20() } -func (c *current) onUnquotedAttributeRawValue42() (interface{}, error) { +func (c *current) onPositionalAttribute26() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue42() (interface{}, error) { +func (p *parser) callonPositionalAttribute26() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue42() + return p.cur.onPositionalAttribute26() } -func (c *current) onUnquotedAttributeRawValue44() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +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) callonUnquotedAttributeRawValue44() (interface{}, error) { +func (p *parser) callonPositionalAttribute30() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue44() + return p.cur.onPositionalAttribute30(stack["value"]) } -func (c *current) onUnquotedAttributeRawValue37(start interface{}) (interface{}, error) { - return start, nil - -} +func (c *current) onPositionalAttribute15(value interface{}) (interface{}, error) { -func (p *parser) callonUnquotedAttributeRawValue37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeRawValue37(stack["start"]) -} + return types.NewPositionalAttribute(nil) -func (c *current) onUnquotedAttributeRawValue26(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) } -func (p *parser) callonUnquotedAttributeRawValue26() (interface{}, error) { +func (p *parser) callonPositionalAttribute15() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue26(stack["name"], stack["start"]) + return p.cur.onPositionalAttribute15(stack["value"]) } -func (c *current) onUnquotedAttributeRawValue52() (interface{}, error) { +func (c *current) onNamedAttribute7() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue52() (interface{}, error) { +func (p *parser) callonNamedAttribute7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue52() + return p.cur.onNamedAttribute7() } -func (c *current) onUnquotedAttributeRawValue64() (interface{}, error) { +func (c *current) onNamedAttribute12() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue64() (interface{}, error) { +func (p *parser) callonNamedAttribute12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue64() + return p.cur.onNamedAttribute12() } -func (c *current) onUnquotedAttributeRawValue66() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onNamedAttribute4() (interface{}, error) { + return strings.TrimSpace(string(c.text)), nil } -func (p *parser) callonUnquotedAttributeRawValue66() (interface{}, error) { +func (p *parser) callonNamedAttribute4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue66() -} - -func (c *current) onUnquotedAttributeRawValue59(start interface{}) (interface{}, error) { - return start, nil - + return p.cur.onNamedAttribute4() } -func (p *parser) callonUnquotedAttributeRawValue59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onUnquotedAttributeRawValue59(stack["start"]) -} +func (c *current) onNamedAttribute16() (interface{}, error) { + return string(c.text), nil -func (c *current) onUnquotedAttributeRawValue48(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) } -func (p *parser) callonUnquotedAttributeRawValue48() (interface{}, error) { +func (p *parser) callonNamedAttribute16() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue48(stack["name"], stack["start"]) + return p.cur.onNamedAttribute16() } -func (c *current) onUnquotedAttributeRawValue74() (interface{}, error) { +func (c *current) onNamedAttribute24() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue74() (interface{}, error) { +func (p *parser) callonNamedAttribute24() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue74() + return p.cur.onNamedAttribute24() } -func (c *current) onUnquotedAttributeRawValue70(name interface{}) (interface{}, error) { +func (c *current) onNamedAttribute1(key, value interface{}) (interface{}, error) { + // TODO: include `,` or expect `]` + return types.NewNamedAttribute(key.(string), value) - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonUnquotedAttributeRawValue70() (interface{}, error) { +func (p *parser) callonNamedAttribute1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue70(stack["name"]) + return p.cur.onNamedAttribute1(stack["key"], stack["value"]) } -func (c *current) onUnquotedAttributeRawValue21(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onAttributeRawValue15() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue21() (interface{}, error) { +func (p *parser) callonAttributeRawValue15() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue21(stack["element"]) + return p.cur.onAttributeRawValue15() } -func (c *current) onUnquotedAttributeRawValue80() (interface{}, error) { - // not within brackets and stop on space +func (c *current) onAttributeRawValue18() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue80() (interface{}, error) { +func (p *parser) callonAttributeRawValue18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue80() + return p.cur.onAttributeRawValue18() } -func (c *current) onUnquotedAttributeRawValue83() (interface{}, error) { - return string(c.text), nil +func (c *current) onAttributeRawValue22() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonUnquotedAttributeRawValue83() (interface{}, error) { +func (p *parser) callonAttributeRawValue22() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue83() + return p.cur.onAttributeRawValue22() } -func (c *current) onUnquotedAttributeRawValue1(elements interface{}) (interface{}, error) { - return types.Reduce(elements, strings.TrimSpace), nil +func (c *current) onAttributeRawValue29() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonUnquotedAttributeRawValue1() (interface{}, error) { +func (p *parser) callonAttributeRawValue29() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onUnquotedAttributeRawValue1(stack["elements"]) + return p.cur.onAttributeRawValue29() } -func (c *current) onCrossReference6() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onAttributeRawValue41() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonCrossReference6() (interface{}, error) { +func (p *parser) callonAttributeRawValue41() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference6() + return p.cur.onAttributeRawValue41() } -func (c *current) onCrossReference10() (interface{}, error) { - return string(c.text), nil +func (c *current) onAttributeRawValue43() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonCrossReference10() (interface{}, error) { +func (p *parser) callonAttributeRawValue43() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference10() + return p.cur.onAttributeRawValue43() } -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 (c *current) onAttributeRawValue36(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonCrossReference16() (interface{}, error) { +func (p *parser) callonAttributeRawValue36() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference16() + return p.cur.onAttributeRawValue36(stack["start"]) } -func (c *current) onCrossReference23() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onAttributeRawValue25(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonCrossReference23() (bool, error) { +func (p *parser) callonAttributeRawValue25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference23() + return p.cur.onAttributeRawValue25(stack["name"], stack["start"]) } -func (c *current) onCrossReference30() (interface{}, error) { +func (c *current) onAttributeRawValue51() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonCrossReference30() (interface{}, error) { +func (p *parser) callonAttributeRawValue51() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference30() + return p.cur.onAttributeRawValue51() } -func (c *current) onCrossReference42() (interface{}, error) { +func (c *current) onAttributeRawValue63() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonCrossReference42() (interface{}, error) { +func (p *parser) callonAttributeRawValue63() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference42() + return p.cur.onAttributeRawValue63() } -func (c *current) onCrossReference44() (interface{}, error) { +func (c *current) onAttributeRawValue65() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonCrossReference44() (interface{}, error) { +func (p *parser) callonAttributeRawValue65() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference44() + return p.cur.onAttributeRawValue65() } -func (c *current) onCrossReference37(start interface{}) (interface{}, error) { +func (c *current) onAttributeRawValue58(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonCrossReference37() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference37(stack["start"]) -} - -func (c *current) onCrossReference26(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) -} - -func (p *parser) callonCrossReference26() (interface{}, error) { +func (p *parser) callonAttributeRawValue58() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference26(stack["name"], stack["start"]) + return p.cur.onAttributeRawValue58(stack["start"]) } -func (c *current) onCrossReference52() (interface{}, error) { - return string(c.text), nil - +func (c *current) onAttributeRawValue47(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonCrossReference52() (interface{}, error) { +func (p *parser) callonAttributeRawValue47() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference52() + return p.cur.onAttributeRawValue47(stack["name"], stack["start"]) } -func (c *current) onCrossReference64() (interface{}, error) { +func (c *current) onAttributeRawValue73() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonCrossReference64() (interface{}, error) { +func (p *parser) callonAttributeRawValue73() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference64() + return p.cur.onAttributeRawValue73() } -func (c *current) onCrossReference66() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onAttributeRawValue69(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonCrossReference66() (interface{}, error) { +func (p *parser) callonAttributeRawValue69() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference66() -} - -func (c *current) onCrossReference59(start interface{}) (interface{}, error) { - return start, nil - + return p.cur.onAttributeRawValue69(stack["name"]) } -func (p *parser) callonCrossReference59() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference59(stack["start"]) -} +func (c *current) onAttributeRawValue20(element interface{}) (interface{}, error) { + return element, nil -func (c *current) onCrossReference48(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) } -func (p *parser) callonCrossReference48() (interface{}, error) { +func (p *parser) callonAttributeRawValue20() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference48(stack["name"], stack["start"]) -} - -func (c *current) onCrossReference74() (interface{}, error) { - return string(c.text), nil - + return p.cur.onAttributeRawValue20(stack["element"]) } -func (p *parser) callonCrossReference74() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onCrossReference74() -} +func (c *current) onAttributeRawValue79() (interface{}, error) { -func (c *current) onCrossReference70(name interface{}) (interface{}, error) { + return types.NewStringElement(`'`) // escaped single quote - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonCrossReference70() (interface{}, error) { +func (p *parser) callonAttributeRawValue79() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference70(stack["name"]) + return p.cur.onAttributeRawValue79() } -func (c *current) onCrossReference21(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onAttributeRawValue83() (interface{}, error) { + // quoted string delimiters or standalone backslash + return types.NewStringElement(string(c.text)) // keep as-is for now } -func (p *parser) callonCrossReference21() (interface{}, error) { +func (p *parser) callonAttributeRawValue83() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference21(stack["element"]) + return p.cur.onAttributeRawValue83() } -func (c *current) onCrossReference80() (interface{}, error) { - +func (c *current) onAttributeRawValue85() (interface{}, error) { + // = and , signs are allowed within '' quoted values return types.NewStringElement(string(c.text)) } -func (p *parser) callonCrossReference80() (interface{}, error) { +func (p *parser) callonAttributeRawValue85() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference80() + return p.cur.onAttributeRawValue85() } -func (c *current) onCrossReference2(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onAttributeRawValue11(elements interface{}) (interface{}, error) { + return types.Reduce(elements), nil } -func (p *parser) callonCrossReference2() (interface{}, error) { +func (p *parser) callonAttributeRawValue11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference2(stack["id"], stack["label"]) + return p.cur.onAttributeRawValue11(stack["elements"]) } -func (c *current) onCrossReference87() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onAttributeRawValue5(content interface{}) (interface{}, error) { + return content, nil } -func (p *parser) callonCrossReference87() (interface{}, error) { +func (p *parser) callonAttributeRawValue5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference87() + return p.cur.onAttributeRawValue5(stack["content"]) } -func (c *current) onCrossReference83(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onAttributeRawValue99() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonCrossReference83() (interface{}, error) { +func (p *parser) callonAttributeRawValue99() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onCrossReference83(stack["id"]) + return p.cur.onAttributeRawValue99() } -func (c *current) onExternalCrossReference13() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]" - return types.NewStringElement(string(c.text)) +func (c *current) onAttributeRawValue102() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference13() (interface{}, error) { +func (p *parser) callonAttributeRawValue102() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference13() + return p.cur.onAttributeRawValue102() } -func (c *current) onExternalCrossReference18() (bool, error) { +func (c *current) onAttributeRawValue106() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonExternalCrossReference18() (bool, error) { +func (p *parser) callonAttributeRawValue106() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference18() + return p.cur.onAttributeRawValue106() } -func (c *current) onExternalCrossReference25() (interface{}, error) { +func (c *current) onAttributeRawValue113() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExternalCrossReference25() (interface{}, error) { +func (p *parser) callonAttributeRawValue113() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference25() + return p.cur.onAttributeRawValue113() } -func (c *current) onExternalCrossReference37() (interface{}, error) { +func (c *current) onAttributeRawValue125() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExternalCrossReference37() (interface{}, error) { +func (p *parser) callonAttributeRawValue125() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference37() + return p.cur.onAttributeRawValue125() } -func (c *current) onExternalCrossReference39() (interface{}, error) { +func (c *current) onAttributeRawValue127() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonExternalCrossReference39() (interface{}, error) { +func (p *parser) callonAttributeRawValue127() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference39() + return p.cur.onAttributeRawValue127() } -func (c *current) onExternalCrossReference32(start interface{}) (interface{}, error) { +func (c *current) onAttributeRawValue120(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonExternalCrossReference32() (interface{}, error) { +func (p *parser) callonAttributeRawValue120() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference32(stack["start"]) + return p.cur.onAttributeRawValue120(stack["start"]) } -func (c *current) onExternalCrossReference21(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onAttributeRawValue109(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonExternalCrossReference21() (interface{}, error) { +func (p *parser) callonAttributeRawValue109() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference21(stack["name"], stack["start"]) + return p.cur.onAttributeRawValue109(stack["name"], stack["start"]) } -func (c *current) onExternalCrossReference47() (interface{}, error) { +func (c *current) onAttributeRawValue135() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExternalCrossReference47() (interface{}, error) { +func (p *parser) callonAttributeRawValue135() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference47() + return p.cur.onAttributeRawValue135() } -func (c *current) onExternalCrossReference59() (interface{}, error) { +func (c *current) onAttributeRawValue147() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExternalCrossReference59() (interface{}, error) { +func (p *parser) callonAttributeRawValue147() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference59() + return p.cur.onAttributeRawValue147() } -func (c *current) onExternalCrossReference61() (interface{}, error) { +func (c *current) onAttributeRawValue149() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonExternalCrossReference61() (interface{}, error) { +func (p *parser) callonAttributeRawValue149() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference61() + return p.cur.onAttributeRawValue149() } -func (c *current) onExternalCrossReference54(start interface{}) (interface{}, error) { +func (c *current) onAttributeRawValue142(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonExternalCrossReference54() (interface{}, error) { +func (p *parser) callonAttributeRawValue142() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference54(stack["start"]) + return p.cur.onAttributeRawValue142(stack["start"]) } -func (c *current) onExternalCrossReference43(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onAttributeRawValue131(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonExternalCrossReference43() (interface{}, error) { +func (p *parser) callonAttributeRawValue131() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference43(stack["name"], stack["start"]) + return p.cur.onAttributeRawValue131(stack["name"], stack["start"]) } -func (c *current) onExternalCrossReference69() (interface{}, error) { +func (c *current) onAttributeRawValue157() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExternalCrossReference69() (interface{}, error) { +func (p *parser) callonAttributeRawValue157() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference69() + return p.cur.onAttributeRawValue157() } -func (c *current) onExternalCrossReference65(name interface{}) (interface{}, error) { +func (c *current) onAttributeRawValue153(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonExternalCrossReference65() (interface{}, error) { +func (p *parser) callonAttributeRawValue153() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference65(stack["name"]) + return p.cur.onAttributeRawValue153(stack["name"]) } -func (c *current) onExternalCrossReference16(element interface{}) (interface{}, error) { +func (c *current) onAttributeRawValue104(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonExternalCrossReference16() (interface{}, error) { +func (p *parser) callonAttributeRawValue104() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference16(stack["element"]) + return p.cur.onAttributeRawValue104(stack["element"]) } -func (c *current) onExternalCrossReference77() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +func (c *current) onAttributeRawValue163() (interface{}, error) { + + return types.NewStringElement(`"`) // escaped double quote } -func (p *parser) callonExternalCrossReference77() (bool, error) { +func (p *parser) callonAttributeRawValue163() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference77() + return p.cur.onAttributeRawValue163() } -func (c *current) onExternalCrossReference86() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onAttributeRawValue168() (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) callonExternalCrossReference86() (interface{}, error) { +func (p *parser) callonAttributeRawValue168() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference86() + return p.cur.onAttributeRawValue168() } -func (c *current) onExternalCrossReference90() (interface{}, error) { - return string(c.text), nil +func (c *current) onAttributeRawValue170() (interface{}, error) { + // = and , signs are allowed within " quoted values + return types.NewStringElement(string(c.text)) } -func (p *parser) callonExternalCrossReference90() (interface{}, error) { +func (p *parser) callonAttributeRawValue170() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference90() + return p.cur.onAttributeRawValue170() } -func (c *current) onExternalCrossReference96() (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) onAttributeRawValue95(elements interface{}) (interface{}, error) { + return types.Reduce(elements), nil } -func (p *parser) callonExternalCrossReference96() (interface{}, error) { +func (p *parser) callonAttributeRawValue95() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference96() + return p.cur.onAttributeRawValue95(stack["elements"]) } -func (c *current) onExternalCrossReference103() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onAttributeRawValue178() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference103() (bool, error) { +func (p *parser) callonAttributeRawValue178() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference103() + return p.cur.onAttributeRawValue178() } -func (c *current) onExternalCrossReference110() (interface{}, error) { - return string(c.text), nil +func (c *current) onAttributeRawValue89(content interface{}) (interface{}, error) { + return content, nil } -func (p *parser) callonExternalCrossReference110() (interface{}, error) { +func (p *parser) callonAttributeRawValue89() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference110() + return p.cur.onAttributeRawValue89(stack["content"]) } -func (c *current) onExternalCrossReference122() (interface{}, error) { +func (c *current) onAttributeRawValue186() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExternalCrossReference122() (interface{}, error) { +func (p *parser) callonAttributeRawValue186() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference122() + return p.cur.onAttributeRawValue186() } -func (c *current) onExternalCrossReference124() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onAttributeRawValue1(value interface{}) (interface{}, error) { + return value, nil } -func (p *parser) callonExternalCrossReference124() (interface{}, error) { +func (p *parser) callonAttributeRawValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference124() + return p.cur.onAttributeRawValue1(stack["value"]) } -func (c *current) onExternalCrossReference117(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onUnquotedAttributeRawValue4() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference117() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference117(stack["start"]) + return p.cur.onUnquotedAttributeRawValue4() } -func (c *current) onExternalCrossReference106(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onUnquotedAttributeRawValue17() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference106() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue17() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference106(stack["name"], stack["start"]) + return p.cur.onUnquotedAttributeRawValue17() } -func (c *current) onExternalCrossReference132() (interface{}, error) { - return string(c.text), nil - +func (c *current) onUnquotedAttributeRawValue13(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonExternalCrossReference132() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference132() + return p.cur.onUnquotedAttributeRawValue13(stack["ref"]) } -func (c *current) onExternalCrossReference144() (interface{}, error) { - return string(c.text), nil +func (c *current) onUnquotedAttributeRawValue23() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonExternalCrossReference144() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue23() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference144() + return p.cur.onUnquotedAttributeRawValue23() } -func (c *current) onExternalCrossReference146() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onUnquotedAttributeRawValue30() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference146() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue30() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference146() + return p.cur.onUnquotedAttributeRawValue30() } -func (c *current) onExternalCrossReference139(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onUnquotedAttributeRawValue42() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference139() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue42() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference139(stack["start"]) + return p.cur.onUnquotedAttributeRawValue42() } -func (c *current) onExternalCrossReference128(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onUnquotedAttributeRawValue44() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + } -func (p *parser) callonExternalCrossReference128() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue44() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference128(stack["name"], stack["start"]) + return p.cur.onUnquotedAttributeRawValue44() } -func (c *current) onExternalCrossReference154() (interface{}, error) { - return string(c.text), nil +func (c *current) onUnquotedAttributeRawValue37(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonExternalCrossReference154() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue37() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference154() + return p.cur.onUnquotedAttributeRawValue37(stack["start"]) } -func (c *current) onExternalCrossReference150(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string)) +func (c *current) onUnquotedAttributeRawValue26(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonExternalCrossReference150() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue26() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference150(stack["name"]) + return p.cur.onUnquotedAttributeRawValue26(stack["name"], stack["start"]) } -func (c *current) onExternalCrossReference101(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onUnquotedAttributeRawValue52() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference101() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue52() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference101(stack["element"]) + return p.cur.onUnquotedAttributeRawValue52() } -func (c *current) onExternalCrossReference160() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onUnquotedAttributeRawValue64() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference160() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue64() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference160() + return p.cur.onUnquotedAttributeRawValue64() } -func (c *current) onExternalCrossReference82(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onUnquotedAttributeRawValue66() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonExternalCrossReference82() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue66() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference82(stack["id"], stack["label"]) + return p.cur.onUnquotedAttributeRawValue66() } -func (c *current) onExternalCrossReference167() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onUnquotedAttributeRawValue59(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonExternalCrossReference167() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue59() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference167() + return p.cur.onUnquotedAttributeRawValue59(stack["start"]) } -func (c *current) onExternalCrossReference163(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - +func (c *current) onUnquotedAttributeRawValue48(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonExternalCrossReference163() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference163(stack["id"]) + return p.cur.onUnquotedAttributeRawValue48(stack["name"], stack["start"]) } -func (c *current) onExternalCrossReference80() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onUnquotedAttributeRawValue74() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference80() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue74() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference80() + return p.cur.onUnquotedAttributeRawValue74() } -func (c *current) onExternalCrossReference171() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onUnquotedAttributeRawValue70(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonExternalCrossReference171() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue70() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference171() + return p.cur.onUnquotedAttributeRawValue70(stack["name"]) } -func (c *current) onExternalCrossReference75(element interface{}) (interface{}, error) { +func (c *current) onUnquotedAttributeRawValue21(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonExternalCrossReference75() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference75(stack["element"]) + return p.cur.onUnquotedAttributeRawValue21(stack["element"]) } -func (c *current) onExternalCrossReference173() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onUnquotedAttributeRawValue80() (interface{}, error) { + // not within brackets and stop on space + return string(c.text), nil } -func (p *parser) callonExternalCrossReference173() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue80() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference173() + return p.cur.onUnquotedAttributeRawValue80() } -func (c *current) onExternalCrossReference9(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +func (c *current) onUnquotedAttributeRawValue83() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference9() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue83() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference9(stack["elements"]) + return p.cur.onUnquotedAttributeRawValue83() } -func (c *current) onExternalCrossReference179() (interface{}, error) { - return string(c.text), nil +func (c *current) onUnquotedAttributeRawValue1(elements interface{}) (interface{}, error) { + return types.Reduce(elements, strings.TrimSpace), nil + } -func (p *parser) callonExternalCrossReference179() (interface{}, error) { +func (p *parser) callonUnquotedAttributeRawValue1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference179() + return p.cur.onUnquotedAttributeRawValue1(stack["elements"]) } -func (c *current) onExternalCrossReference175(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onCrossReference6() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil + } -func (p *parser) callonExternalCrossReference175() (interface{}, error) { +func (p *parser) callonCrossReference6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference175(stack["ref"]) + return p.cur.onCrossReference6() } -func (c *current) onExternalCrossReference5(path interface{}) (interface{}, error) { - return types.NewLocation("", path.([]interface{})) +func (c *current) onCrossReference10() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalCrossReference5() (interface{}, error) { +func (p *parser) callonCrossReference10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference5(stack["path"]) + return p.cur.onCrossReference10() } -func (c *current) onExternalCrossReference1(url, inlineAttributes interface{}) (interface{}, error) { - return types.NewExternalCrossReference(url.(*types.Location), inlineAttributes.(types.Attributes)) +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) callonExternalCrossReference1() (interface{}, error) { +func (p *parser) callonCrossReference16() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalCrossReference1(stack["url"], stack["inlineAttributes"]) + return p.cur.onCrossReference16() } -func (c *current) onDelimitedBlock4() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Comment), nil +func (c *current) onCrossReference23() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonDelimitedBlock4() (bool, error) { +func (p *parser) callonCrossReference23() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock4() + return p.cur.onCrossReference23() } -func (c *current) onDelimitedBlock7() (interface{}, error) { +func (c *current) onCrossReference30() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDelimitedBlock7() (interface{}, error) { +func (p *parser) callonCrossReference30() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock7() + return p.cur.onCrossReference30() } -func (c *current) onDelimitedBlock10() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onCrossReference42() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDelimitedBlock10() (interface{}, error) { +func (p *parser) callonCrossReference42() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock10() + return p.cur.onCrossReference42() } -func (c *current) onDelimitedBlock17() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Comment) - return true, nil +func (c *current) onCrossReference44() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonDelimitedBlock17() (bool, error) { +func (p *parser) callonCrossReference44() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock17() + return p.cur.onCrossReference44() } -func (c *current) onDelimitedBlock27() (interface{}, error) { - return string(c.text), nil +func (c *current) onCrossReference37(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonDelimitedBlock27() (interface{}, error) { +func (p *parser) callonCrossReference37() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock27() + return p.cur.onCrossReference37(stack["start"]) } -func (c *current) onDelimitedBlock30() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onCrossReference26(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonDelimitedBlock30() (interface{}, error) { +func (p *parser) callonCrossReference26() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock30() + return p.cur.onCrossReference26(stack["name"], stack["start"]) } -func (c *current) onDelimitedBlock46() (interface{}, error) { - // content is NOT mandatory +func (c *current) onCrossReference52() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDelimitedBlock46() (interface{}, error) { +func (p *parser) callonCrossReference52() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock46() + return p.cur.onCrossReference52() } -func (c *current) onDelimitedBlock50() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onCrossReference64() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDelimitedBlock50() (interface{}, error) { +func (p *parser) callonCrossReference64() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock50() + return p.cur.onCrossReference64() } -func (c *current) onDelimitedBlock40(content interface{}) (interface{}, error) { +func (c *current) onCrossReference66() (interface{}, error) { - return types.NewRawLine(content.(string)) + return strconv.Atoi(string(c.text)) } -func (p *parser) callonDelimitedBlock40() (interface{}, error) { +func (p *parser) callonCrossReference66() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock40(stack["content"]) + return p.cur.onCrossReference66() } -func (c *current) onDelimitedBlock20(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onCrossReference59(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonDelimitedBlock20() (interface{}, error) { +func (p *parser) callonCrossReference59() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock20(stack["line"]) + return p.cur.onCrossReference59(stack["start"]) } -func (c *current) onDelimitedBlock62() (interface{}, error) { - return string(c.text), nil - +func (c *current) onCrossReference48(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonDelimitedBlock62() (interface{}, error) { +func (p *parser) callonCrossReference48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock62() + return p.cur.onCrossReference48(stack["name"], stack["start"]) } -func (c *current) onDelimitedBlock65() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onCrossReference74() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDelimitedBlock65() (interface{}, error) { +func (p *parser) callonCrossReference74() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock65() + return p.cur.onCrossReference74() } -func (c *current) onDelimitedBlock2(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Comment, content.([]interface{})) +func (c *current) onCrossReference70(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonDelimitedBlock2() (interface{}, error) { +func (p *parser) callonCrossReference70() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock2(stack["content"]) + return p.cur.onCrossReference70(stack["name"]) } -func (c *current) onDelimitedBlock90() (interface{}, error) { - return string(c.text), nil +func (c *current) onCrossReference21(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonDelimitedBlock90() (interface{}, error) { +func (p *parser) callonCrossReference21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock90() -} - -func (c *current) onDelimitedBlock93() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil + return p.cur.onCrossReference21(stack["element"]) } -func (p *parser) callonDelimitedBlock93() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onDelimitedBlock93() -} +func (c *current) onCrossReference80() (interface{}, error) { -func (c *current) onDelimitedBlock84() (interface{}, error) { - return types.NewBlankLine() + return types.NewStringElement(string(c.text)) } -func (p *parser) callonDelimitedBlock84() (interface{}, error) { +func (p *parser) callonCrossReference80() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock84() + return p.cur.onCrossReference80() } -func (c *current) onDelimitedBlock102() (interface{}, error) { - - return string(c.text), nil +func (c *current) onCrossReference2(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) } -func (p *parser) callonDelimitedBlock102() (interface{}, error) { +func (p *parser) callonCrossReference2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock102() + return p.cur.onCrossReference2(stack["id"], stack["label"]) } -func (c *current) onDelimitedBlock106() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onCrossReference87() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil + } -func (p *parser) callonDelimitedBlock106() (interface{}, error) { +func (p *parser) callonCrossReference87() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock106() + return p.cur.onCrossReference87() } -func (c *current) onDelimitedBlock81(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) +func (c *current) onCrossReference83(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) } -func (p *parser) callonDelimitedBlock81() (interface{}, error) { +func (p *parser) callonCrossReference83() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock81(stack["content"]) + return p.cur.onCrossReference83(stack["id"]) } -func (c *current) onDelimitedBlock125() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference13() (interface{}, error) { + // not supported for now: EOL, space, "{", "[", "]" + return types.NewStringElement(string(c.text)) } -func (p *parser) callonDelimitedBlock125() (interface{}, error) { +func (p *parser) callonExternalCrossReference13() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock125() + return p.cur.onExternalCrossReference13() } -func (c *current) onDelimitedBlock128() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference18() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + } -func (p *parser) callonDelimitedBlock128() (interface{}, error) { +func (p *parser) callonExternalCrossReference18() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock128() + return p.cur.onExternalCrossReference18() } -func (c *current) onDelimitedBlock119() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onExternalCrossReference25() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDelimitedBlock119() (interface{}, error) { +func (p *parser) callonExternalCrossReference25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock119() + return p.cur.onExternalCrossReference25() } -func (c *current) onDelimitedBlock137() (interface{}, error) { - +func (c *current) onExternalCrossReference37() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonDelimitedBlock137() (interface{}, error) { +func (p *parser) callonExternalCrossReference37() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock137() + return p.cur.onExternalCrossReference37() } -func (c *current) onDelimitedBlock141() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference39() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + } -func (p *parser) callonDelimitedBlock141() (interface{}, error) { +func (p *parser) callonExternalCrossReference39() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock141() + return p.cur.onExternalCrossReference39() } -func (c *current) onDelimitedBlock116(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) +func (c *current) onExternalCrossReference32(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonDelimitedBlock116() (interface{}, error) { +func (p *parser) callonExternalCrossReference32() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock116(stack["content"]) + return p.cur.onExternalCrossReference32(stack["start"]) } -func (c *current) onDelimitedBlock151() (interface{}, error) { - return string(c.text), nil - +func (c *current) onExternalCrossReference21(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonDelimitedBlock151() (interface{}, error) { +func (p *parser) callonExternalCrossReference21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock151() + return p.cur.onExternalCrossReference21(stack["name"], stack["start"]) } -func (c *current) onDelimitedBlock154(content interface{}) (bool, error) { - return len(strings.TrimSpace(string(c.text))) > 0, nil +func (c *current) onExternalCrossReference47() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonDelimitedBlock154() (bool, error) { +func (p *parser) callonExternalCrossReference47() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock154(stack["content"]) + return p.cur.onExternalCrossReference47() } -func (c *current) onDelimitedBlock156() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExternalCrossReference59() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonDelimitedBlock156() (interface{}, error) { +func (p *parser) callonExternalCrossReference59() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock156() + return p.cur.onExternalCrossReference59() } -func (c *current) onDelimitedBlock148(content interface{}) (interface{}, error) { - return types.NewRawLine(content.(string)) +func (c *current) onExternalCrossReference61() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonDelimitedBlock148() (interface{}, error) { +func (p *parser) callonExternalCrossReference61() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock148(stack["content"]) + return p.cur.onExternalCrossReference61() } -func (c *current) onDelimitedBlock78(firstLine, otherLines interface{}) (interface{}, error) { - return types.NewDelimitedBlock(types.MarkdownQuote, append([]interface{}{firstLine}, otherLines.([]interface{})...)) +func (c *current) onExternalCrossReference54(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonDelimitedBlock78() (interface{}, error) { +func (p *parser) callonExternalCrossReference54() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onDelimitedBlock78(stack["firstLine"], stack["otherLines"]) + return p.cur.onExternalCrossReference54(stack["start"]) } -func (c *current) onExampleBlock3() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Example), nil - +func (c *current) onExternalCrossReference43(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonExampleBlock3() (bool, error) { +func (p *parser) callonExternalCrossReference43() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlock3() + return p.cur.onExternalCrossReference43(stack["name"], stack["start"]) } -func (c *current) onExampleBlock6() (interface{}, error) { +func (c *current) onExternalCrossReference69() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExampleBlock6() (interface{}, error) { +func (p *parser) callonExternalCrossReference69() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlock6() + return p.cur.onExternalCrossReference69() } -func (c *current) onExampleBlock9() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference65(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonExampleBlock9() (interface{}, error) { +func (p *parser) callonExternalCrossReference65() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlock9() + return p.cur.onExternalCrossReference65(stack["name"]) } -func (c *current) onExampleBlock16() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Example) - return true, nil +func (c *current) onExternalCrossReference16(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonExampleBlock16() (bool, error) { +func (p *parser) callonExternalCrossReference16() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlock16() + return p.cur.onExternalCrossReference16(stack["element"]) } -func (c *current) onExampleBlock23() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference77() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) } -func (p *parser) callonExampleBlock23() (interface{}, error) { +func (p *parser) callonExternalCrossReference77() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlock23() + return p.cur.onExternalCrossReference77() } -func (c *current) onExampleBlock26() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExternalCrossReference86() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil + } -func (p *parser) callonExampleBlock26() (interface{}, error) { +func (p *parser) callonExternalCrossReference86() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlock26() + return p.cur.onExternalCrossReference86() } -func (c *current) onExampleBlock1(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Example, content.([]interface{})) +func (c *current) onExternalCrossReference90() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExampleBlock1() (interface{}, error) { +func (p *parser) callonExternalCrossReference90() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlock1(stack["content"]) + return p.cur.onExternalCrossReference90() } -func (c *current) onExampleBlockContent9() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference96() (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) callonExampleBlockContent9() (interface{}, error) { +func (p *parser) callonExternalCrossReference96() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlockContent9() + return p.cur.onExternalCrossReference96() } -func (c *current) onExampleBlockContent12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference103() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + } -func (p *parser) callonExampleBlockContent12() (interface{}, error) { +func (p *parser) callonExternalCrossReference103() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlockContent12() + return p.cur.onExternalCrossReference103() } -func (c *current) onExampleBlockContent30() (interface{}, error) { - // content is NOT mandatory +func (c *current) onExternalCrossReference110() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExampleBlockContent30() (interface{}, error) { +func (p *parser) callonExternalCrossReference110() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlockContent30() + return p.cur.onExternalCrossReference110() } -func (c *current) onExampleBlockContent34() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExternalCrossReference122() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExampleBlockContent34() (interface{}, error) { +func (p *parser) callonExternalCrossReference122() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlockContent34() + return p.cur.onExternalCrossReference122() } -func (c *current) onExampleBlockContent24(content interface{}) (interface{}, error) { +func (c *current) onExternalCrossReference124() (interface{}, error) { - return types.NewRawLine(content.(string)) + return strconv.Atoi(string(c.text)) } -func (p *parser) callonExampleBlockContent24() (interface{}, error) { +func (p *parser) callonExternalCrossReference124() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlockContent24(stack["content"]) + return p.cur.onExternalCrossReference124() } -func (c *current) onExampleBlockContent2(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onExternalCrossReference117(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonExampleBlockContent2() (interface{}, error) { +func (p *parser) callonExternalCrossReference117() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExampleBlockContent2(stack["line"]) + return p.cur.onExternalCrossReference117(stack["start"]) } -func (c *current) onFencedBlock3() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Fenced), nil - +func (c *current) onExternalCrossReference106(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonFencedBlock3() (bool, error) { +func (p *parser) callonExternalCrossReference106() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlock3() + return p.cur.onExternalCrossReference106(stack["name"], stack["start"]) } -func (c *current) onFencedBlock6() (interface{}, error) { +func (c *current) onExternalCrossReference132() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonFencedBlock6() (interface{}, error) { +func (p *parser) callonExternalCrossReference132() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlock6() + return p.cur.onExternalCrossReference132() } -func (c *current) onFencedBlock9() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExternalCrossReference144() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonFencedBlock9() (interface{}, error) { +func (p *parser) callonExternalCrossReference144() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlock9() + return p.cur.onExternalCrossReference144() } -func (c *current) onFencedBlock16() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Fenced) - return true, nil +func (c *current) onExternalCrossReference146() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonFencedBlock16() (bool, error) { +func (p *parser) callonExternalCrossReference146() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlock16() + return p.cur.onExternalCrossReference146() } -func (c *current) onFencedBlock23() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference139(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonFencedBlock23() (interface{}, error) { +func (p *parser) callonExternalCrossReference139() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlock23() + return p.cur.onExternalCrossReference139(stack["start"]) } -func (c *current) onFencedBlock26() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference128(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonFencedBlock26() (interface{}, error) { +func (p *parser) callonExternalCrossReference128() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlock26() + return p.cur.onExternalCrossReference128(stack["name"], stack["start"]) } -func (c *current) onFencedBlock1(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Fenced, content.([]interface{})) +func (c *current) onExternalCrossReference154() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFencedBlock1() (interface{}, error) { +func (p *parser) callonExternalCrossReference154() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlock1(stack["content"]) + return p.cur.onExternalCrossReference154() } -func (c *current) onFencedBlockContent9() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference150(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonFencedBlockContent9() (interface{}, error) { +func (p *parser) callonExternalCrossReference150() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlockContent9() + return p.cur.onExternalCrossReference150(stack["name"]) } -func (c *current) onFencedBlockContent12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference101(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonFencedBlockContent12() (interface{}, error) { +func (p *parser) callonExternalCrossReference101() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlockContent12() + return p.cur.onExternalCrossReference101(stack["element"]) } -func (c *current) onFencedBlockContent30() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil +func (c *current) onExternalCrossReference160() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFencedBlockContent30() (interface{}, error) { +func (p *parser) callonExternalCrossReference160() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlockContent30() + return p.cur.onExternalCrossReference160() } -func (c *current) onFencedBlockContent34() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference82(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) + } -func (p *parser) callonFencedBlockContent34() (interface{}, error) { +func (p *parser) callonExternalCrossReference82() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlockContent34() + return p.cur.onExternalCrossReference82(stack["id"], stack["label"]) } -func (c *current) onFencedBlockContent24(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) +func (c *current) onExternalCrossReference167() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil } -func (p *parser) callonFencedBlockContent24() (interface{}, error) { +func (p *parser) callonExternalCrossReference167() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlockContent24(stack["content"]) + return p.cur.onExternalCrossReference167() } -func (c *current) onFencedBlockContent2(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onExternalCrossReference163(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) } -func (p *parser) callonFencedBlockContent2() (interface{}, error) { +func (p *parser) callonExternalCrossReference163() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFencedBlockContent2(stack["line"]) + return p.cur.onExternalCrossReference163(stack["id"]) } -func (c *current) onListingBlock3() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Listing), nil +func (c *current) onExternalCrossReference80() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonListingBlock3() (bool, error) { +func (p *parser) callonExternalCrossReference80() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlock3() + return p.cur.onExternalCrossReference80() } -func (c *current) onListingBlock6() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference171() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonListingBlock6() (interface{}, error) { +func (p *parser) callonExternalCrossReference171() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlock6() + return p.cur.onExternalCrossReference171() } -func (c *current) onListingBlock9() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference75(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonListingBlock9() (interface{}, error) { +func (p *parser) callonExternalCrossReference75() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlock9() + return p.cur.onExternalCrossReference75(stack["element"]) } -func (c *current) onListingBlock16() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Listing) - return true, nil +func (c *current) onExternalCrossReference173() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonListingBlock16() (bool, error) { +func (p *parser) callonExternalCrossReference173() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlock16() + return p.cur.onExternalCrossReference173() } -func (c *current) onListingBlock23() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference9(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonListingBlock23() (interface{}, error) { +func (p *parser) callonExternalCrossReference9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlock23() + return p.cur.onExternalCrossReference9(stack["elements"]) } -func (c *current) onListingBlock26() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExternalCrossReference179() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListingBlock26() (interface{}, error) { +func (p *parser) callonExternalCrossReference179() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlock26() + return p.cur.onExternalCrossReference179() } -func (c *current) onListingBlock1(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Listing, content.([]interface{})) - +func (c *current) onExternalCrossReference175(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonListingBlock1() (interface{}, error) { +func (p *parser) callonExternalCrossReference175() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlock1(stack["content"]) + return p.cur.onExternalCrossReference175(stack["ref"]) } -func (c *current) onListingBlockContent9() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalCrossReference5(path interface{}) (interface{}, error) { + return types.NewLocation("", path.([]interface{})) } -func (p *parser) callonListingBlockContent9() (interface{}, error) { +func (p *parser) callonExternalCrossReference5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlockContent9() + return p.cur.onExternalCrossReference5(stack["path"]) } -func (c *current) onListingBlockContent12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExternalCrossReference1(url, inlineAttributes interface{}) (interface{}, error) { + return types.NewExternalCrossReference(url.(*types.Location), inlineAttributes.(types.Attributes)) + } -func (p *parser) callonListingBlockContent12() (interface{}, error) { +func (p *parser) callonExternalCrossReference1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlockContent12() + return p.cur.onExternalCrossReference1(stack["url"], stack["inlineAttributes"]) } -func (c *current) onListingBlockContent30() (interface{}, error) { - // content is NOT mandatory +func (c *current) onMarkdownQuoteAttribution5() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListingBlockContent30() (interface{}, error) { +func (p *parser) callonMarkdownQuoteAttribution5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlockContent30() + return p.cur.onMarkdownQuoteAttribution5() } -func (c *current) onListingBlockContent34() (interface{}, error) { +func (c *current) onMarkdownQuoteAttribution9() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListingBlockContent34() (interface{}, error) { +func (p *parser) callonMarkdownQuoteAttribution9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlockContent34() + return p.cur.onMarkdownQuoteAttribution9() } -func (c *current) onListingBlockContent24(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) +func (c *current) onMarkdownQuoteAttribution1(author interface{}) (interface{}, error) { + return author, nil } -func (p *parser) callonListingBlockContent24() (interface{}, error) { +func (p *parser) callonMarkdownQuoteAttribution1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlockContent24(stack["content"]) + return p.cur.onMarkdownQuoteAttribution1(stack["author"]) } -func (c *current) onListingBlockContent2(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onInlineElement9() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListingBlockContent2() (interface{}, error) { +func (p *parser) callonInlineElement9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListingBlockContent2(stack["line"]) + return p.cur.onInlineElement9() } -func (c *current) onLiteralBlock5() (interface{}, error) { +func (c *current) onInlineElement14() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonLiteralBlock5() (interface{}, error) { +func (p *parser) callonInlineElement14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlock5() + return p.cur.onInlineElement14() } -func (c *current) onLiteralBlock8() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement4() (interface{}, error) { + return types.NewStringElement(string(c.text)) + } -func (p *parser) callonLiteralBlock8() (interface{}, error) { +func (p *parser) callonInlineElement4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlock8() + return p.cur.onInlineElement4() } -func (c *current) onLiteralBlock15() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Literal), nil +func (c *current) onInlineElement21() (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonLiteralBlock15() (bool, error) { +func (p *parser) callonInlineElement21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlock15() + return p.cur.onInlineElement21() } -func (c *current) onLiteralBlock18(content interface{}) (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Literal) - return true, nil +func (c *current) onInlineElement26() (bool, error) { + + return c.isPreceededBySpace(), nil } -func (p *parser) callonLiteralBlock18() (bool, error) { +func (p *parser) callonInlineElement26() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlock18(stack["content"]) + return p.cur.onInlineElement26() } -func (c *current) onLiteralBlock24() (interface{}, error) { +func (c *current) onInlineElement29() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLiteralBlock24() (interface{}, error) { +func (p *parser) callonInlineElement29() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlock24() + return p.cur.onInlineElement29() } -func (c *current) onLiteralBlock27() (interface{}, error) { +func (c *current) onInlineElement33() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonLiteralBlock27() (interface{}, error) { +func (p *parser) callonInlineElement33() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlock27() + return p.cur.onInlineElement33() } -func (c *current) onLiteralBlock1(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Literal, content.([]interface{})) +func (c *current) onInlineElement24() (interface{}, error) { + return types.NewLineBreak() } -func (p *parser) callonLiteralBlock1() (interface{}, error) { +func (p *parser) callonInlineElement24() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlock1(stack["content"]) + return p.cur.onInlineElement24() } -func (c *current) onLiteralBlockContent9() (interface{}, error) { +func (c *current) onInlineElement43() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonLiteralBlockContent9() (interface{}, error) { +func (p *parser) callonInlineElement43() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlockContent9() + return p.cur.onInlineElement43() } -func (c *current) onLiteralBlockContent12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement53() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) + } -func (p *parser) callonLiteralBlockContent12() (interface{}, error) { +func (p *parser) callonInlineElement53() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlockContent12() + return p.cur.onInlineElement53() } -func (c *current) onLiteralBlockContent30() (interface{}, error) { - // content is NOT mandatory +func (c *current) onInlineElement62() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil } -func (p *parser) callonLiteralBlockContent30() (interface{}, error) { +func (p *parser) callonInlineElement62() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlockContent30() + return p.cur.onInlineElement62() } -func (c *current) onLiteralBlockContent34() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onInlineElement66() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonLiteralBlockContent34() (interface{}, error) { +func (p *parser) callonInlineElement66() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlockContent34() + return p.cur.onInlineElement66() } -func (c *current) onLiteralBlockContent24(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) +func (c *current) onInlineElement72() (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) callonLiteralBlockContent24() (interface{}, error) { +func (p *parser) callonInlineElement72() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlockContent24(stack["content"]) + return p.cur.onInlineElement72() } -func (c *current) onLiteralBlockContent2(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onInlineElement79() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLiteralBlockContent2() (interface{}, error) { +func (p *parser) callonInlineElement79() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLiteralBlockContent2(stack["line"]) + return p.cur.onInlineElement79() } -func (c *current) onMarkdownQuoteAttribution5() (interface{}, error) { +func (c *current) onInlineElement86() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonMarkdownQuoteAttribution5() (interface{}, error) { +func (p *parser) callonInlineElement86() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onMarkdownQuoteAttribution5() + return p.cur.onInlineElement86() } -func (c *current) onMarkdownQuoteAttribution9() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onInlineElement98() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonMarkdownQuoteAttribution9() (interface{}, error) { +func (p *parser) callonInlineElement98() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onMarkdownQuoteAttribution9() + return p.cur.onInlineElement98() } -func (c *current) onMarkdownQuoteAttribution1(author interface{}) (interface{}, error) { - return author, nil +func (c *current) onInlineElement100() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonMarkdownQuoteAttribution1() (interface{}, error) { +func (p *parser) callonInlineElement100() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onMarkdownQuoteAttribution1(stack["author"]) + return p.cur.onInlineElement100() } -func (c *current) onPassthroughBlock3() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Passthrough), nil +func (c *current) onInlineElement93(start interface{}) (interface{}, error) { + return start, nil + +} + +func (p *parser) callonInlineElement93() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onInlineElement93(stack["start"]) +} +func (c *current) onInlineElement82(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonPassthroughBlock3() (bool, error) { +func (p *parser) callonInlineElement82() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlock3() + return p.cur.onInlineElement82(stack["name"], stack["start"]) } -func (c *current) onPassthroughBlock6() (interface{}, error) { +func (c *current) onInlineElement108() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonPassthroughBlock6() (interface{}, error) { +func (p *parser) callonInlineElement108() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlock6() + return p.cur.onInlineElement108() } -func (c *current) onPassthroughBlock9() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onInlineElement120() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonPassthroughBlock9() (interface{}, error) { +func (p *parser) callonInlineElement120() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlock9() + return p.cur.onInlineElement120() } -func (c *current) onPassthroughBlock16() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Passthrough) - return true, nil +func (c *current) onInlineElement122() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonPassthroughBlock16() (bool, error) { +func (p *parser) callonInlineElement122() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlock16() + return p.cur.onInlineElement122() } -func (c *current) onPassthroughBlock24() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineElement115(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonPassthroughBlock24() (interface{}, error) { +func (p *parser) callonInlineElement115() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlock24() + return p.cur.onInlineElement115(stack["start"]) } -func (c *current) onPassthroughBlock27() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement104(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonPassthroughBlock27() (interface{}, error) { +func (p *parser) callonInlineElement104() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlock27() + return p.cur.onInlineElement104(stack["name"], stack["start"]) } -func (c *current) onPassthroughBlock1(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Passthrough, content.([]interface{})) +func (c *current) onInlineElement130() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonPassthroughBlock1() (interface{}, error) { +func (p *parser) callonInlineElement130() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlock1(stack["content"]) + return p.cur.onInlineElement130() } -func (c *current) onPassthroughBlockContent9() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineElement126(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonPassthroughBlockContent9() (interface{}, error) { +func (p *parser) callonInlineElement126() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlockContent9() + return p.cur.onInlineElement126(stack["name"]) } -func (c *current) onPassthroughBlockContent12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement77(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonPassthroughBlockContent12() (interface{}, error) { +func (p *parser) callonInlineElement77() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlockContent12() + return p.cur.onInlineElement77(stack["element"]) } -func (c *current) onPassthroughBlockContent30() (interface{}, error) { - // content is NOT mandatory - return string(c.text), nil +func (c *current) onInlineElement136() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonPassthroughBlockContent30() (interface{}, error) { +func (p *parser) callonInlineElement136() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlockContent30() + return p.cur.onInlineElement136() } -func (c *current) onPassthroughBlockContent34() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement58(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) + } -func (p *parser) callonPassthroughBlockContent34() (interface{}, error) { +func (p *parser) callonInlineElement58() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlockContent34() + return p.cur.onInlineElement58(stack["id"], stack["label"]) } -func (c *current) onPassthroughBlockContent24(content interface{}) (interface{}, error) { - - return types.NewRawLine(content.(string)) +func (c *current) onInlineElement143() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil } -func (p *parser) callonPassthroughBlockContent24() (interface{}, error) { +func (p *parser) callonInlineElement143() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlockContent24(stack["content"]) + return p.cur.onInlineElement143() } -func (c *current) onPassthroughBlockContent2(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onInlineElement139(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) } -func (p *parser) callonPassthroughBlockContent2() (interface{}, error) { +func (p *parser) callonInlineElement139() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughBlockContent2(stack["line"]) + return p.cur.onInlineElement139(stack["id"]) } -func (c *current) onQuoteBlock3() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Quote), nil +func (c *current) onInlineElement56() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonQuoteBlock3() (bool, error) { +func (p *parser) callonInlineElement56() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlock3() + return p.cur.onInlineElement56() } -func (c *current) onQuoteBlock6() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineElement147() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonQuoteBlock6() (interface{}, error) { +func (p *parser) callonInlineElement147() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlock6() + return p.cur.onInlineElement147() } -func (c *current) onQuoteBlock9() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement51(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonQuoteBlock9() (interface{}, error) { +func (p *parser) callonInlineElement51() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlock9() + return p.cur.onInlineElement51(stack["element"]) } -func (c *current) onQuoteBlock16() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Quote) - return true, nil +func (c *current) onInlineElement152() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonQuoteBlock16() (bool, error) { +func (p *parser) callonInlineElement152() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlock16() + return p.cur.onInlineElement152() } -func (c *current) onQuoteBlock23() (interface{}, error) { +func (c *current) onInlineElement159() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonQuoteBlock23() (interface{}, error) { +func (p *parser) callonInlineElement159() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlock23() + return p.cur.onInlineElement159() } -func (c *current) onQuoteBlock26() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onInlineElement171() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonQuoteBlock26() (interface{}, error) { +func (p *parser) callonInlineElement171() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlock26() + return p.cur.onInlineElement171() } -func (c *current) onQuoteBlock1(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Quote, content.([]interface{})) +func (c *current) onInlineElement173() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonQuoteBlock1() (interface{}, error) { +func (p *parser) callonInlineElement173() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlock1(stack["content"]) + return p.cur.onInlineElement173() } -func (c *current) onQuoteBlockContent9() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineElement166(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonQuoteBlockContent9() (interface{}, error) { +func (p *parser) callonInlineElement166() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlockContent9() + return p.cur.onInlineElement166(stack["start"]) } -func (c *current) onQuoteBlockContent12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement155(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonQuoteBlockContent12() (interface{}, error) { +func (p *parser) callonInlineElement155() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlockContent12() + return p.cur.onInlineElement155(stack["name"], stack["start"]) } -func (c *current) onQuoteBlockContent30() (interface{}, error) { - // content is NOT mandatory +func (c *current) onInlineElement181() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonQuoteBlockContent30() (interface{}, error) { +func (p *parser) callonInlineElement181() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlockContent30() + return p.cur.onInlineElement181() } -func (c *current) onQuoteBlockContent34() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onInlineElement193() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonQuoteBlockContent34() (interface{}, error) { +func (p *parser) callonInlineElement193() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlockContent34() + return p.cur.onInlineElement193() } -func (c *current) onQuoteBlockContent24(content interface{}) (interface{}, error) { +func (c *current) onInlineElement195() (interface{}, error) { - return types.NewRawLine(content.(string)) + return strconv.Atoi(string(c.text)) } -func (p *parser) callonQuoteBlockContent24() (interface{}, error) { +func (p *parser) callonInlineElement195() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlockContent24(stack["content"]) + return p.cur.onInlineElement195() } -func (c *current) onQuoteBlockContent2(line interface{}) (interface{}, error) { - return line, nil +func (c *current) onInlineElement188(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonQuoteBlockContent2() (interface{}, error) { +func (p *parser) callonInlineElement188() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onQuoteBlockContent2(stack["line"]) + return p.cur.onInlineElement188(stack["start"]) } -func (c *current) onSidebarBlock3() (bool, error) { - // only accept if not already in a delimited block of this kind - return !c.isWithinDelimitedBlockOfKind(types.Sidebar), nil - +func (c *current) onInlineElement177(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonSidebarBlock3() (bool, error) { +func (p *parser) callonInlineElement177() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlock3() + return p.cur.onInlineElement177(stack["name"], stack["start"]) } -func (c *current) onSidebarBlock6() (interface{}, error) { +func (c *current) onInlineElement203() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonSidebarBlock6() (interface{}, error) { +func (p *parser) callonInlineElement203() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onInlineElement203() +} + +func (c *current) onInlineElement199(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) +} + +func (p *parser) callonInlineElement199() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlock6() + return p.cur.onInlineElement199(stack["name"]) } -func (c *current) onSidebarBlock9() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement150(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonSidebarBlock9() (interface{}, error) { +func (p *parser) callonInlineElement150() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlock9() + return p.cur.onInlineElement150(stack["element"]) } -func (c *current) onSidebarBlock16() (bool, error) { - // only accept if the delimiter matches the current delimited block or if no kind is registered yet - c.setWithinDelimitedBlockOfKind(types.Sidebar) - return true, nil +func (c *current) onInlineElement210() (interface{}, error) { + return types.NewStringElement("\u2019") } -func (p *parser) callonSidebarBlock16() (bool, error) { +func (p *parser) callonInlineElement210() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlock16() + return p.cur.onInlineElement210() } -func (c *current) onSidebarBlock23() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineElement212() (interface{}, error) { + return types.NewStringElement("\u00a9") } -func (p *parser) callonSidebarBlock23() (interface{}, error) { +func (p *parser) callonInlineElement212() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlock23() + return p.cur.onInlineElement212() } -func (c *current) onSidebarBlock26() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement214() (interface{}, error) { + return types.NewStringElement("\u2122") + } -func (p *parser) callonSidebarBlock26() (interface{}, error) { +func (p *parser) callonInlineElement214() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlock26() + return p.cur.onInlineElement214() } -func (c *current) onSidebarBlock1(content interface{}) (interface{}, error) { - c.unsetWithinDelimitedBlock() - return types.NewDelimitedBlock(types.Sidebar, content.([]interface{})) +func (c *current) onInlineElement216() (interface{}, error) { + return types.NewStringElement("\u00ae") } -func (p *parser) callonSidebarBlock1() (interface{}, error) { +func (p *parser) callonInlineElement216() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlock1(stack["content"]) + return p.cur.onInlineElement216() } -func (c *current) onSidebarBlockContent9() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineElement218() (interface{}, error) { + return types.NewStringElement("\u2026\u200b") } -func (p *parser) callonSidebarBlockContent9() (interface{}, error) { +func (p *parser) callonInlineElement218() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlockContent9() + return p.cur.onInlineElement218() } -func (c *current) onSidebarBlockContent12() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement220() (interface{}, error) { + return types.NewStringElement(string(c.text[:1]) + "\u2019") + } -func (p *parser) callonSidebarBlockContent12() (interface{}, error) { +func (p *parser) callonInlineElement220() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlockContent12() + return p.cur.onInlineElement220() } -func (c *current) onSidebarBlockContent30() (interface{}, error) { - // content is NOT mandatory +func (c *current) onInlineElement230() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonSidebarBlockContent30() (interface{}, error) { +func (p *parser) callonInlineElement230() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlockContent30() + return p.cur.onInlineElement230() } -func (c *current) onSidebarBlockContent34() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineElement226(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonSidebarBlockContent34() (interface{}, error) { +func (p *parser) callonInlineElement226() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlockContent34() + return p.cur.onInlineElement226(stack["ref"]) } -func (c *current) onSidebarBlockContent24(content interface{}) (interface{}, error) { +func (c *current) onInlineElement234() (interface{}, error) { - return types.NewRawLine(content.(string)) + return types.NewStringElement(string(c.text)) } -func (p *parser) callonSidebarBlockContent24() (interface{}, error) { +func (p *parser) callonInlineElement234() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlockContent24(stack["content"]) + return p.cur.onInlineElement234() } -func (c *current) onSidebarBlockContent2(line interface{}) (interface{}, error) { - return line, nil - +func (c *current) onInlineElement1(element interface{}) (interface{}, error) { + c.trackSpaceSuffix(element) + return element, nil } -func (p *parser) callonSidebarBlockContent2() (interface{}, error) { +func (p *parser) callonInlineElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onSidebarBlockContent2(stack["line"]) + return p.cur.onInlineElement1(stack["element"]) } -func (c *current) onFileInclusion3() (bool, error) { - // skip if disabled - return c.isRuleEnabled(FileInclusion) +func (c *current) onIndexTerm1(term interface{}) (interface{}, error) { + return types.NewIndexTerm(term.([]interface{})) } -func (p *parser) callonFileInclusion3() (bool, error) { +func (p *parser) callonIndexTerm1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion3() + return p.cur.onIndexTerm1(stack["term"]) } -func (c *current) onFileInclusion4() error { - // force/enable attribute substitution // TODO: why? - // log.Debug("entering FileInclusion rule") - return c.setCurrentSubstitution("attributes") +func (c *current) onIndexTermContent5() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileInclusion4() error { +func (p *parser) callonIndexTermContent5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion4() + return p.cur.onIndexTermContent5() } -func (c *current) onFileInclusion18() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]" +func (c *current) onIndexTermContent14() (interface{}, error) { + // allow ` return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileInclusion18() (interface{}, error) { +func (p *parser) callonIndexTermContent14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion18() + return p.cur.onIndexTermContent14() } -func (c *current) onFileInclusion23() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onIndexTermContent25() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileInclusion23() (bool, error) { +func (p *parser) callonIndexTermContent25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion23() + return p.cur.onIndexTermContent25() } -func (c *current) onFileInclusion30() (interface{}, error) { - return string(c.text), nil +func (c *current) onIndexTermContent29() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) } -func (p *parser) callonFileInclusion30() (interface{}, error) { +func (p *parser) callonIndexTermContent29() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion30() + return p.cur.onIndexTermContent29() } -func (c *current) onFileInclusion42() (interface{}, error) { +func (c *current) onIndexTermContent38() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil } -func (p *parser) callonFileInclusion42() (interface{}, error) { +func (p *parser) callonIndexTermContent38() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion42() + return p.cur.onIndexTermContent38() } -func (c *current) onFileInclusion44() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onIndexTermContent42() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileInclusion44() (interface{}, error) { +func (p *parser) callonIndexTermContent42() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion44() + return p.cur.onIndexTermContent42() } -func (c *current) onFileInclusion37(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onIndexTermContent48() (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) callonFileInclusion37() (interface{}, error) { +func (p *parser) callonIndexTermContent48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion37(stack["start"]) + return p.cur.onIndexTermContent48() } -func (c *current) onFileInclusion26(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onIndexTermContent55() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + } -func (p *parser) callonFileInclusion26() (interface{}, error) { +func (p *parser) callonIndexTermContent55() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion26(stack["name"], stack["start"]) + return p.cur.onIndexTermContent55() } -func (c *current) onFileInclusion52() (interface{}, error) { +func (c *current) onIndexTermContent62() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonFileInclusion52() (interface{}, error) { +func (p *parser) callonIndexTermContent62() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion52() + return p.cur.onIndexTermContent62() } -func (c *current) onFileInclusion64() (interface{}, error) { +func (c *current) onIndexTermContent74() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonFileInclusion64() (interface{}, error) { +func (p *parser) callonIndexTermContent74() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion64() + return p.cur.onIndexTermContent74() } -func (c *current) onFileInclusion66() (interface{}, error) { +func (c *current) onIndexTermContent76() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonFileInclusion66() (interface{}, error) { +func (p *parser) callonIndexTermContent76() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion66() + return p.cur.onIndexTermContent76() } -func (c *current) onFileInclusion59(start interface{}) (interface{}, error) { +func (c *current) onIndexTermContent69(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonFileInclusion59() (interface{}, error) { +func (p *parser) callonIndexTermContent69() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion59(stack["start"]) + return p.cur.onIndexTermContent69(stack["start"]) } -func (c *current) onFileInclusion48(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onIndexTermContent58(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonFileInclusion48() (interface{}, error) { +func (p *parser) callonIndexTermContent58() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion48(stack["name"], stack["start"]) + return p.cur.onIndexTermContent58(stack["name"], stack["start"]) } -func (c *current) onFileInclusion74() (interface{}, error) { +func (c *current) onIndexTermContent84() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonFileInclusion74() (interface{}, error) { +func (p *parser) callonIndexTermContent84() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion74() + return p.cur.onIndexTermContent84() } -func (c *current) onFileInclusion70(name interface{}) (interface{}, error) { +func (c *current) onIndexTermContent96() (interface{}, error) { + return string(c.text), nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonFileInclusion70() (interface{}, error) { +func (p *parser) callonIndexTermContent96() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion70(stack["name"]) + return p.cur.onIndexTermContent96() } -func (c *current) onFileInclusion21(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onIndexTermContent98() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonFileInclusion21() (interface{}, error) { +func (p *parser) callonIndexTermContent98() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion21(stack["element"]) + return p.cur.onIndexTermContent98() } -func (c *current) onFileInclusion82() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +func (c *current) onIndexTermContent91(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonFileInclusion82() (bool, error) { +func (p *parser) callonIndexTermContent91() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion82() + return p.cur.onIndexTermContent91(stack["start"]) } -func (c *current) onFileInclusion91() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil - +func (c *current) onIndexTermContent80(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonFileInclusion91() (interface{}, error) { +func (p *parser) callonIndexTermContent80() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion91() + return p.cur.onIndexTermContent80(stack["name"], stack["start"]) } -func (c *current) onFileInclusion95() (interface{}, error) { +func (c *current) onIndexTermContent106() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonFileInclusion95() (interface{}, error) { +func (p *parser) callonIndexTermContent106() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion95() + return p.cur.onIndexTermContent106() } -func (c *current) onFileInclusion101() (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) onIndexTermContent102(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonFileInclusion101() (interface{}, error) { +func (p *parser) callonIndexTermContent102() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion101() + return p.cur.onIndexTermContent102(stack["name"]) } -func (c *current) onFileInclusion108() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onIndexTermContent53(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonFileInclusion108() (bool, error) { +func (p *parser) callonIndexTermContent53() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion108() -} - -func (c *current) onFileInclusion115() (interface{}, error) { - return string(c.text), nil - + return p.cur.onIndexTermContent53(stack["element"]) } -func (p *parser) callonFileInclusion115() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onFileInclusion115() -} +func (c *current) onIndexTermContent112() (interface{}, error) { -func (c *current) onFileInclusion127() (interface{}, error) { - return string(c.text), nil + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileInclusion127() (interface{}, error) { +func (p *parser) callonIndexTermContent112() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion127() + return p.cur.onIndexTermContent112() } -func (c *current) onFileInclusion129() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onIndexTermContent34(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) } -func (p *parser) callonFileInclusion129() (interface{}, error) { +func (p *parser) callonIndexTermContent34() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion129() + return p.cur.onIndexTermContent34(stack["id"], stack["label"]) } -func (c *current) onFileInclusion122(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onIndexTermContent119() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil } -func (p *parser) callonFileInclusion122() (interface{}, error) { +func (p *parser) callonIndexTermContent119() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion122(stack["start"]) + return p.cur.onIndexTermContent119() } -func (c *current) onFileInclusion111(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onIndexTermContent115(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) + } -func (p *parser) callonFileInclusion111() (interface{}, error) { +func (p *parser) callonIndexTermContent115() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion111(stack["name"], stack["start"]) + return p.cur.onIndexTermContent115(stack["id"]) } -func (c *current) onFileInclusion137() (interface{}, error) { - return string(c.text), nil +func (c *current) onIndexTermContent32() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileInclusion137() (interface{}, error) { +func (p *parser) callonIndexTermContent32() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion137() + return p.cur.onIndexTermContent32() } -func (c *current) onFileInclusion149() (interface{}, error) { - return string(c.text), nil +func (c *current) onIndexTermContent123() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonFileInclusion149() (interface{}, error) { +func (p *parser) callonIndexTermContent123() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion149() + return p.cur.onIndexTermContent123() } -func (c *current) onFileInclusion151() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onIndexTermContent27(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonFileInclusion151() (interface{}, error) { +func (p *parser) callonIndexTermContent27() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion151() + return p.cur.onIndexTermContent27(stack["element"]) } -func (c *current) onFileInclusion144(start interface{}) (interface{}, error) { - return start, nil - +func (c *current) onIndexTermContent129() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileInclusion144() (interface{}, error) { +func (p *parser) callonIndexTermContent129() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion144(stack["start"]) + return p.cur.onIndexTermContent129() } -func (c *current) onFileInclusion133(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onIndexTermContent125(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonFileInclusion133() (interface{}, error) { +func (p *parser) callonIndexTermContent125() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion133(stack["name"], stack["start"]) + return p.cur.onIndexTermContent125(stack["ref"]) } -func (c *current) onFileInclusion159() (interface{}, error) { +func (c *current) onIndexTermContent133() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonFileInclusion159() (interface{}, error) { +func (p *parser) callonIndexTermContent133() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion159() + return p.cur.onIndexTermContent133() } -func (c *current) onFileInclusion155(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string)) +func (c *current) onIndexTermContent1(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonFileInclusion155() (interface{}, error) { +func (p *parser) callonIndexTermContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion155(stack["name"]) + return p.cur.onIndexTermContent1(stack["elements"]) } -func (c *current) onFileInclusion106(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onImageBlock3() (bool, error) { + // AttrPositional1 must not be set + return types.HasNotAttribute(c.globalStore.getAttributes(), types.AttrPositional1), nil } -func (p *parser) callonFileInclusion106() (interface{}, error) { +func (p *parser) callonImageBlock3() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion106(stack["element"]) + return p.cur.onImageBlock3() } -func (c *current) onFileInclusion165() (interface{}, error) { - +func (c *current) onImageBlock23() (interface{}, error) { + // not supported for now: EOL, space, "{", "[", "]" return types.NewStringElement(string(c.text)) } -func (p *parser) callonFileInclusion165() (interface{}, error) { +func (p *parser) callonImageBlock23() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion165() + return p.cur.onImageBlock23() } -func (c *current) onFileInclusion87(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onImageBlock28() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonFileInclusion87() (interface{}, error) { +func (p *parser) callonImageBlock28() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion87(stack["id"], stack["label"]) + return p.cur.onImageBlock28() } -func (c *current) onFileInclusion172() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onImageBlock35() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonFileInclusion172() (interface{}, error) { +func (p *parser) callonImageBlock35() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion172() + return p.cur.onImageBlock35() } -func (c *current) onFileInclusion168(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onImageBlock47() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileInclusion168() (interface{}, error) { +func (p *parser) callonImageBlock47() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion168(stack["id"]) + return p.cur.onImageBlock47() } -func (c *current) onFileInclusion85() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onImageBlock49() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonFileInclusion85() (interface{}, error) { +func (p *parser) callonImageBlock49() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion85() + return p.cur.onImageBlock49() } -func (c *current) onFileInclusion176() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onImageBlock42(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonFileInclusion176() (interface{}, error) { +func (p *parser) callonImageBlock42() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion176() + return p.cur.onImageBlock42(stack["start"]) } -func (c *current) onFileInclusion80(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onImageBlock31(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonFileInclusion80() (interface{}, error) { +func (p *parser) callonImageBlock31() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion80(stack["element"]) + return p.cur.onImageBlock31(stack["name"], stack["start"]) } -func (c *current) onFileInclusion178() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onImageBlock57() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileInclusion178() (interface{}, error) { +func (p *parser) callonImageBlock57() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion178() + return p.cur.onImageBlock57() } -func (c *current) onFileInclusion14(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +func (c *current) onImageBlock69() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileInclusion14() (interface{}, error) { +func (p *parser) callonImageBlock69() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion14(stack["elements"]) + return p.cur.onImageBlock69() } -func (c *current) onFileInclusion184() (interface{}, error) { - return string(c.text), nil +func (c *current) onImageBlock71() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + } -func (p *parser) callonFileInclusion184() (interface{}, error) { +func (p *parser) callonImageBlock71() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion184() + return p.cur.onImageBlock71() } -func (c *current) onFileInclusion180(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onImageBlock64(start interface{}) (interface{}, error) { + return start, nil + } -func (p *parser) callonFileInclusion180() (interface{}, error) { +func (p *parser) callonImageBlock64() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion180(stack["ref"]) + return p.cur.onImageBlock64(stack["start"]) } -func (c *current) onFileInclusion10(path interface{}) (interface{}, error) { - return types.NewLocation("", path.([]interface{})) - +func (c *current) onImageBlock53(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonFileInclusion10() (interface{}, error) { +func (p *parser) callonImageBlock53() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion10(stack["path"]) + return p.cur.onImageBlock53(stack["name"], stack["start"]) } -func (c *current) onFileInclusion6(path, inlineAttributes interface{}) (interface{}, error) { - - return types.NewFileInclusion(path.(*types.Location), inlineAttributes.(types.Attributes), string(c.text)) +func (c *current) onImageBlock79() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonFileInclusion6() (interface{}, error) { +func (p *parser) callonImageBlock79() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion6(stack["path"], stack["inlineAttributes"]) + return p.cur.onImageBlock79() } -func (c *current) onFileInclusion191() (interface{}, error) { - return string(c.text), nil +func (c *current) onImageBlock75(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonFileInclusion191() (interface{}, error) { +func (p *parser) callonImageBlock75() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion191() + return p.cur.onImageBlock75(stack["name"]) } -func (c *current) onFileInclusion194() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onImageBlock26(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonFileInclusion194() (interface{}, error) { +func (p *parser) callonImageBlock26() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion194() + return p.cur.onImageBlock26(stack["element"]) } -func (c *current) onFileInclusion1(incl interface{}) (interface{}, error) { - return incl.(*types.FileInclusion), nil +func (c *current) onImageBlock87() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) } -func (p *parser) callonFileInclusion1() (interface{}, error) { +func (p *parser) callonImageBlock87() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFileInclusion1(stack["incl"]) + return p.cur.onImageBlock87() } -func (c *current) onLineRanges17() (interface{}, error) { +func (c *current) onImageBlock96() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil } -func (p *parser) callonLineRanges17() (interface{}, error) { +func (p *parser) callonImageBlock96() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges17() + return p.cur.onImageBlock96() } -func (c *current) onLineRanges12() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onImageBlock100() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLineRanges12() (interface{}, error) { +func (p *parser) callonImageBlock100() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges12() + return p.cur.onImageBlock100() } -func (c *current) onLineRanges26() (interface{}, error) { - return string(c.text), nil +func (c *current) onImageBlock106() (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) callonLineRanges26() (interface{}, error) { +func (p *parser) callonImageBlock106() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges26() + return p.cur.onImageBlock106() } -func (c *current) onLineRanges21() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onImageBlock113() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonLineRanges21() (interface{}, error) { +func (p *parser) callonImageBlock113() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges21() + return p.cur.onImageBlock113() } -func (c *current) onLineRanges9(start, end interface{}) (interface{}, error) { - // eg: lines=12..14 - return types.NewLineRange(start.(int), end.(int)) - +func (c *current) onImageBlock120() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonLineRanges9() (interface{}, error) { +func (p *parser) callonImageBlock120() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges9(stack["start"], stack["end"]) + return p.cur.onImageBlock120() } -func (c *current) onLineRanges35() (interface{}, error) { +func (c *current) onImageBlock132() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLineRanges35() (interface{}, error) { +func (p *parser) callonImageBlock132() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges35() + return p.cur.onImageBlock132() } -func (c *current) onLineRanges30() (interface{}, error) { +func (c *current) onImageBlock134() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonLineRanges30() (interface{}, error) { +func (p *parser) callonImageBlock134() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges30() + return p.cur.onImageBlock134() } -func (c *current) onLineRanges28(singleline interface{}) (interface{}, error) { - // eg: lines=12 - return types.NewLineRange(singleline.(int), singleline.(int)) +func (c *current) onImageBlock127(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonLineRanges28() (interface{}, error) { +func (p *parser) callonImageBlock127() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges28(stack["singleline"]) + return p.cur.onImageBlock127(stack["start"]) } -func (c *current) onLineRanges52() (interface{}, error) { - return string(c.text), nil - +func (c *current) onImageBlock116(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonLineRanges52() (interface{}, error) { +func (p *parser) callonImageBlock116() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges52() + return p.cur.onImageBlock116(stack["name"], stack["start"]) } -func (c *current) onLineRanges47() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onImageBlock142() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonLineRanges47() (interface{}, error) { +func (p *parser) callonImageBlock142() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges47() + return p.cur.onImageBlock142() } -func (c *current) onLineRanges61() (interface{}, error) { +func (c *current) onImageBlock154() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLineRanges61() (interface{}, error) { +func (p *parser) callonImageBlock154() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges61() + return p.cur.onImageBlock154() } -func (c *current) onLineRanges56() (interface{}, error) { +func (c *current) onImageBlock156() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonLineRanges56() (interface{}, error) { +func (p *parser) callonImageBlock156() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges56() + return p.cur.onImageBlock156() } -func (c *current) onLineRanges44(start, end interface{}) (interface{}, error) { - // eg: lines=12..14 - return types.NewLineRange(start.(int), end.(int)) +func (c *current) onImageBlock149(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonLineRanges44() (interface{}, error) { +func (p *parser) callonImageBlock149() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges44(stack["start"], stack["end"]) + return p.cur.onImageBlock149(stack["start"]) } -func (c *current) onLineRanges70() (interface{}, error) { +func (c *current) onImageBlock138(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) +} + +func (p *parser) callonImageBlock138() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onImageBlock138(stack["name"], stack["start"]) +} + +func (c *current) onImageBlock164() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonLineRanges70() (interface{}, error) { +func (p *parser) callonImageBlock164() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges70() + return p.cur.onImageBlock164() } -func (c *current) onLineRanges65() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onImageBlock160(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonLineRanges65() (interface{}, error) { +func (p *parser) callonImageBlock160() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges65() + return p.cur.onImageBlock160(stack["name"]) } -func (c *current) onLineRanges63(singleline interface{}) (interface{}, error) { - // eg: lines=12 - return types.NewLineRange(singleline.(int), singleline.(int)) +func (c *current) onImageBlock111(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonLineRanges63() (interface{}, error) { +func (p *parser) callonImageBlock111() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges63(stack["singleline"]) + return p.cur.onImageBlock111(stack["element"]) } -func (c *current) onLineRanges39(other interface{}) (interface{}, error) { - return other, nil +func (c *current) onImageBlock170() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonLineRanges39() (interface{}, error) { +func (p *parser) callonImageBlock170() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges39(stack["other"]) + return p.cur.onImageBlock170() } -func (c *current) onLineRanges5(first, others interface{}) (interface{}, error) { - return append([]interface{}{first}, others.([]interface{})...), nil +func (c *current) onImageBlock92(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) } -func (p *parser) callonLineRanges5() (interface{}, error) { +func (p *parser) callonImageBlock92() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges5(stack["first"], stack["others"]) + return p.cur.onImageBlock92(stack["id"], stack["label"]) } -func (c *current) onLineRanges80() (interface{}, error) { +func (c *current) onImageBlock177() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil } -func (p *parser) callonLineRanges80() (interface{}, error) { +func (p *parser) callonImageBlock177() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges80() + return p.cur.onImageBlock177() } -func (c *current) onLineRanges75() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onImageBlock173(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) } -func (p *parser) callonLineRanges75() (interface{}, error) { +func (p *parser) callonImageBlock173() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges75() + return p.cur.onImageBlock173(stack["id"]) } -func (c *current) onLineRanges89() (interface{}, error) { - return string(c.text), nil +func (c *current) onImageBlock90() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonLineRanges89() (interface{}, error) { +func (p *parser) callonImageBlock90() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges89() + return p.cur.onImageBlock90() } -func (c *current) onLineRanges84() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onImageBlock181() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonLineRanges84() (interface{}, error) { +func (p *parser) callonImageBlock181() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges84() + return p.cur.onImageBlock181() } -func (c *current) onLineRanges72(start, end interface{}) (interface{}, error) { - // eg: lines=12..14 - return types.NewLineRange(start.(int), end.(int)) +func (c *current) onImageBlock85(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonLineRanges72() (interface{}, error) { +func (p *parser) callonImageBlock85() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges72(stack["start"], stack["end"]) + return p.cur.onImageBlock85(stack["element"]) } -func (c *current) onLineRanges98() (interface{}, error) { - return string(c.text), nil +func (c *current) onImageBlock183() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonLineRanges98() (interface{}, error) { +func (p *parser) callonImageBlock183() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges98() + return p.cur.onImageBlock183() } -func (c *current) onLineRanges93() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onImageBlock19(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonLineRanges93() (interface{}, error) { +func (p *parser) callonImageBlock19() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges93() + return p.cur.onImageBlock19(stack["elements"]) } -func (c *current) onLineRanges91(singleline interface{}) (interface{}, error) { - // eg: lines=12 - return types.NewLineRange(singleline.(int), singleline.(int)) +func (c *current) onImageBlock189() (interface{}, error) { + return string(c.text), nil +} +func (p *parser) callonImageBlock189() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onImageBlock189() } -func (p *parser) callonLineRanges91() (interface{}, error) { +func (c *current) onImageBlock185(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) +} + +func (p *parser) callonImageBlock185() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges91(stack["singleline"]) + return p.cur.onImageBlock185(stack["ref"]) } -func (c *current) onLineRanges1(value interface{}) (interface{}, error) { - // must make sure that the whole content is parsed - return value, nil +func (c *current) onImageBlock6(scheme, path interface{}) (interface{}, error) { + return types.NewLocation(scheme, path.([]interface{})) } -func (p *parser) callonLineRanges1() (interface{}, error) { +func (p *parser) callonImageBlock6() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onLineRanges1(stack["value"]) + return p.cur.onImageBlock6(stack["scheme"], stack["path"]) } -func (c *current) onTagRanges11() (interface{}, error) { +func (c *current) onImageBlock196() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonTagRanges11() (interface{}, error) { +func (p *parser) callonImageBlock196() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges11() + return p.cur.onImageBlock196() } -func (c *current) onTagRanges17() (interface{}, error) { +func (c *current) onImageBlock199() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonTagRanges17() (interface{}, error) { +func (p *parser) callonImageBlock199() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges17() + return p.cur.onImageBlock199() } -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 (c *current) onImageBlock1(path, inlineAttributes interface{}) (interface{}, error) { + // c.unsetCurrentSubstitution() + // 'imagesdir' attribute is added after applying the attribute substitutions on the image location + return types.NewImageBlock(path.(*types.Location), inlineAttributes.(types.Attributes), c.globalStore.getAttributes()) } -func (p *parser) callonTagRanges20() (bool, error) { +func (p *parser) callonImageBlock1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges20(stack["stars"]) + return p.cur.onImageBlock1(stack["path"], stack["inlineAttributes"]) } -func (c *current) onTagRanges14(stars interface{}) (interface{}, error) { - return stars, nil +func (c *current) onInlineImage24() (interface{}, error) { + // not supported for now: EOL, space, "{", "[", "]" + return types.NewStringElement(string(c.text)) } -func (p *parser) callonTagRanges14() (interface{}, error) { +func (p *parser) callonInlineImage24() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges14(stack["stars"]) + return p.cur.onInlineImage24() } -func (c *current) onTagRanges8(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), true) +func (c *current) onInlineImage29() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonTagRanges8() (interface{}, error) { +func (p *parser) callonInlineImage29() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges8(stack["tag"]) + return p.cur.onInlineImage29() } -func (c *current) onTagRanges26() (interface{}, error) { +func (c *current) onInlineImage36() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonTagRanges26() (interface{}, error) { +func (p *parser) callonInlineImage36() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges26() + return p.cur.onInlineImage36() } -func (c *current) onTagRanges32() (interface{}, error) { +func (c *current) onInlineImage48() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonTagRanges32() (interface{}, error) { +func (p *parser) callonInlineImage48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges32() + return p.cur.onInlineImage48() } -func (c *current) onTagRanges35(stars interface{}) (bool, error) { +func (c *current) onInlineImage50() (interface{}, error) { - // use a predicate to make sure that only `*` and `**` are allowed - return len(stars.(string)) <= 2, nil + return strconv.Atoi(string(c.text)) } -func (p *parser) callonTagRanges35() (bool, error) { +func (p *parser) callonInlineImage50() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges35(stack["stars"]) + return p.cur.onInlineImage50() } -func (c *current) onTagRanges29(stars interface{}) (interface{}, error) { - return stars, nil +func (c *current) onInlineImage43(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonTagRanges29() (interface{}, error) { +func (p *parser) callonInlineImage43() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges29(stack["stars"]) + return p.cur.onInlineImage43(stack["start"]) } -func (c *current) onTagRanges21(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), false) - +func (c *current) onInlineImage32(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonTagRanges21() (interface{}, error) { +func (p *parser) callonInlineImage32() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges21(stack["tag"]) + return p.cur.onInlineImage32(stack["name"], stack["start"]) } -func (c *current) onTagRanges46() (interface{}, error) { +func (c *current) onInlineImage58() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonTagRanges46() (interface{}, error) { +func (p *parser) callonInlineImage58() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges46() + return p.cur.onInlineImage58() } -func (c *current) onTagRanges52() (interface{}, error) { +func (c *current) onInlineImage70() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonTagRanges52() (interface{}, error) { +func (p *parser) callonInlineImage70() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges52() + return p.cur.onInlineImage70() } -func (c *current) onTagRanges55(stars interface{}) (bool, error) { +func (c *current) onInlineImage72() (interface{}, error) { - // use a predicate to make sure that only `*` and `**` are allowed - return len(stars.(string)) <= 2, nil + return strconv.Atoi(string(c.text)) } -func (p *parser) callonTagRanges55() (bool, error) { +func (p *parser) callonInlineImage72() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges55(stack["stars"]) + return p.cur.onInlineImage72() } -func (c *current) onTagRanges49(stars interface{}) (interface{}, error) { - return stars, nil +func (c *current) onInlineImage65(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonTagRanges49() (interface{}, error) { +func (p *parser) callonInlineImage65() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges49(stack["stars"]) + return p.cur.onInlineImage65(stack["start"]) } -func (c *current) onTagRanges43(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), true) - +func (c *current) onInlineImage54(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonTagRanges43() (interface{}, error) { +func (p *parser) callonInlineImage54() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges43(stack["tag"]) + return p.cur.onInlineImage54(stack["name"], stack["start"]) } -func (c *current) onTagRanges61() (interface{}, error) { +func (c *current) onInlineImage80() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonTagRanges61() (interface{}, error) { +func (p *parser) callonInlineImage80() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges61() + return p.cur.onInlineImage80() } -func (c *current) onTagRanges67() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineImage76(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonTagRanges67() (interface{}, error) { +func (p *parser) callonInlineImage76() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges67() + return p.cur.onInlineImage76(stack["name"]) } -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 (c *current) onInlineImage27(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonTagRanges70() (bool, error) { +func (p *parser) callonInlineImage27() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges70(stack["stars"]) + return p.cur.onInlineImage27(stack["element"]) } -func (c *current) onTagRanges64(stars interface{}) (interface{}, error) { - return stars, nil +func (c *current) onInlineImage88() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) } -func (p *parser) callonTagRanges64() (interface{}, error) { +func (p *parser) callonInlineImage88() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges64(stack["stars"]) + return p.cur.onInlineImage88() } -func (c *current) onTagRanges56(tag interface{}) (interface{}, error) { - return types.NewTagRange(tag.(string), false) +func (c *current) onInlineImage97() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil } -func (p *parser) callonTagRanges56() (interface{}, error) { +func (p *parser) callonInlineImage97() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges56(stack["tag"]) + return p.cur.onInlineImage97() } -func (c *current) onTagRanges38(other interface{}) (interface{}, error) { - return other, nil +func (c *current) onInlineImage101() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonTagRanges38() (interface{}, error) { +func (p *parser) callonInlineImage101() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges38(stack["other"]) + return p.cur.onInlineImage101() } -func (c *current) onTagRanges4(first, others interface{}) (interface{}, error) { - return append([]interface{}{first}, others.([]interface{})...), nil +func (c *current) onInlineImage107() (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) callonTagRanges4() (interface{}, error) { +func (p *parser) callonInlineImage107() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges4(stack["first"], stack["others"]) + return p.cur.onInlineImage107() } -func (c *current) onTagRanges1(value interface{}) (interface{}, error) { - // must make sure that the whole content is parsed - return value, nil +func (c *current) onInlineImage114() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonTagRanges1() (interface{}, error) { +func (p *parser) callonInlineImage114() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onTagRanges1(stack["value"]) + return p.cur.onInlineImage114() } -func (c *current) onIncludedFileLine11() (interface{}, error) { +func (c *current) onInlineImage121() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonIncludedFileLine11() (interface{}, error) { +func (p *parser) callonInlineImage121() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine11() + return p.cur.onInlineImage121() } -func (c *current) onIncludedFileLine10() (interface{}, error) { +func (c *current) onInlineImage133() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonIncludedFileLine10() (interface{}, error) { +func (p *parser) callonInlineImage133() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine10() + return p.cur.onInlineImage133() } -func (c *current) onIncludedFileLine6(tag interface{}) (interface{}, error) { - return types.NewIncludedFileStartTag(tag.(string)) +func (c *current) onInlineImage135() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonIncludedFileLine6() (interface{}, error) { +func (p *parser) callonInlineImage135() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine6(stack["tag"]) + return p.cur.onInlineImage135() } -func (c *current) onIncludedFileLine20() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineImage128(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonIncludedFileLine20() (interface{}, error) { +func (p *parser) callonInlineImage128() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine20() + return p.cur.onInlineImage128(stack["start"]) } -func (c *current) onIncludedFileLine19() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineImage117(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonIncludedFileLine19() (interface{}, error) { +func (p *parser) callonInlineImage117() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine19() + return p.cur.onInlineImage117(stack["name"], stack["start"]) } -func (c *current) onIncludedFileLine15(tag interface{}) (interface{}, error) { - return types.NewIncludedFileEndTag(tag.(string)) +func (c *current) onInlineImage143() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonIncludedFileLine15() (interface{}, error) { +func (p *parser) callonInlineImage143() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine15(stack["tag"]) + return p.cur.onInlineImage143() } -func (c *current) onIncludedFileLine24() (interface{}, error) { +func (c *current) onInlineImage155() (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) { +func (p *parser) callonInlineImage155() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine27() + return p.cur.onInlineImage155() } -func (c *current) onIncludedFileLine1(content interface{}) (interface{}, error) { - return types.NewIncludedFileLine(content.([]interface{})) +func (c *current) onInlineImage157() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonIncludedFileLine1() (interface{}, error) { +func (p *parser) callonInlineImage157() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIncludedFileLine1(stack["content"]) + return p.cur.onInlineImage157() } -func (c *current) onInlineElement9() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineImage150(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonInlineElement9() (interface{}, error) { +func (p *parser) callonInlineImage150() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement9() + return p.cur.onInlineImage150(stack["start"]) } -func (c *current) onInlineElement14() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineImage139(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonInlineElement14() (interface{}, error) { +func (p *parser) callonInlineImage139() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement14() + return p.cur.onInlineImage139(stack["name"], stack["start"]) } -func (c *current) onInlineElement4() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onInlineImage165() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement4() (interface{}, error) { +func (p *parser) callonInlineImage165() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement4() + return p.cur.onInlineImage165() } -func (c *current) onInlineElement21() (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onInlineImage161(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonInlineElement21() (interface{}, error) { +func (p *parser) callonInlineImage161() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement21() + return p.cur.onInlineImage161(stack["name"]) } -func (c *current) onInlineElement26() (bool, error) { - - return c.isPreceededBySpace(), nil +func (c *current) onInlineImage112(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonInlineElement26() (bool, error) { +func (p *parser) callonInlineImage112() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement26() + return p.cur.onInlineImage112(stack["element"]) } -func (c *current) onInlineElement29() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineImage171() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonInlineElement29() (interface{}, error) { +func (p *parser) callonInlineImage171() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement29() + return p.cur.onInlineImage171() } -func (c *current) onInlineElement33() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineImage93(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) + } -func (p *parser) callonInlineElement33() (interface{}, error) { +func (p *parser) callonInlineImage93() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement33() + return p.cur.onInlineImage93(stack["id"], stack["label"]) } -func (c *current) onInlineElement24() (interface{}, error) { - return types.NewLineBreak() +func (c *current) onInlineImage178() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil } -func (p *parser) callonInlineElement24() (interface{}, error) { +func (p *parser) callonInlineImage178() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement24() + return p.cur.onInlineImage178() } -func (c *current) onInlineElement43() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onInlineImage174(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) + } -func (p *parser) callonInlineElement43() (interface{}, error) { +func (p *parser) callonInlineImage174() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement43() + return p.cur.onInlineImage174(stack["id"]) } -func (c *current) onInlineElement53() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +func (c *current) onInlineImage91() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonInlineElement53() (bool, error) { +func (p *parser) callonInlineImage91() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement53() + return p.cur.onInlineImage91() } -func (c *current) onInlineElement62() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onInlineImage182() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonInlineElement62() (interface{}, error) { +func (p *parser) callonInlineImage182() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement62() + return p.cur.onInlineImage182() } -func (c *current) onInlineElement66() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineImage86(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonInlineElement66() (interface{}, error) { +func (p *parser) callonInlineImage86() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement66() + return p.cur.onInlineImage86(stack["element"]) } -func (c *current) onInlineElement72() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references +func (c *current) onInlineImage184() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonInlineElement72() (interface{}, error) { +func (p *parser) callonInlineImage184() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement72() + return p.cur.onInlineImage184() } -func (c *current) onInlineElement79() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onInlineImage20(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonInlineElement79() (bool, error) { +func (p *parser) callonInlineImage20() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement79() + return p.cur.onInlineImage20(stack["elements"]) } -func (c *current) onInlineElement86() (interface{}, error) { +func (c *current) onInlineImage190() (interface{}, error) { return string(c.text), nil - } -func (p *parser) callonInlineElement86() (interface{}, error) { +func (p *parser) callonInlineImage190() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement86() + return p.cur.onInlineImage190() } -func (c *current) onInlineElement98() (interface{}, error) { - return string(c.text), nil - +func (c *current) onInlineImage186(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonInlineElement98() (interface{}, error) { +func (p *parser) callonInlineImage186() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement98() + return p.cur.onInlineImage186(stack["ref"]) } -func (c *current) onInlineElement100() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onInlineImage7(scheme, path interface{}) (interface{}, error) { + return types.NewLocation(scheme, path.([]interface{})) } -func (p *parser) callonInlineElement100() (interface{}, error) { +func (p *parser) callonInlineImage7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement100() + return p.cur.onInlineImage7(stack["scheme"], stack["path"]) } -func (c *current) onInlineElement93(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onInlineImage1(path, inlineAttributes interface{}) (interface{}, error) { + return types.NewInlineImage(path.(*types.Location), inlineAttributes.(types.Attributes), c.globalStore["imagesdir"]) } -func (p *parser) callonInlineElement93() (interface{}, error) { +func (p *parser) callonInlineImage1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement93(stack["start"]) + return p.cur.onInlineImage1(stack["path"], stack["inlineAttributes"]) } -func (c *current) onInlineElement82(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onInlineIcon5() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement82() (interface{}, error) { +func (p *parser) callonInlineIcon5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement82(stack["name"], stack["start"]) + return p.cur.onInlineIcon5() } -func (c *current) onInlineElement108() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineIcon1(icon, attributes interface{}) (interface{}, error) { + return types.NewIcon(icon.(string), attributes) } -func (p *parser) callonInlineElement108() (interface{}, error) { +func (p *parser) callonInlineIcon1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement108() + return p.cur.onInlineIcon1(stack["icon"], stack["attributes"]) } -func (c *current) onInlineElement120() (interface{}, error) { - return string(c.text), nil +func (c *current) onInlineFootnote2(content interface{}) (interface{}, error) { + return types.NewFootnote("", content) } -func (p *parser) callonInlineElement120() (interface{}, error) { +func (p *parser) callonInlineFootnote2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement120() + return p.cur.onInlineFootnote2(stack["content"]) } -func (c *current) onInlineElement122() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onInlineFootnote12() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement122() (interface{}, error) { +func (p *parser) callonInlineFootnote12() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement122() + return p.cur.onInlineFootnote12() } -func (c *current) onInlineElement115(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onInlineFootnote8(ref, content interface{}) (interface{}, error) { + // TODO: use only this rule with `ref:(FootnoteRef)?` + return types.NewFootnote(ref.(string), content) } -func (p *parser) callonInlineElement115() (interface{}, error) { +func (p *parser) callonInlineFootnote8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement115(stack["start"]) + return p.cur.onInlineFootnote8(stack["ref"], stack["content"]) } -func (c *current) onInlineElement104(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onFootnoteContent1(elements interface{}) (interface{}, error) { + // footnote content may span multiple lines + return types.NewInlineElements(elements.([]interface{})) + } -func (p *parser) callonInlineElement104() (interface{}, error) { +func (p *parser) callonFootnoteContent1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement104(stack["name"], stack["start"]) + return p.cur.onFootnoteContent1(stack["elements"]) } -func (c *current) onInlineElement130() (interface{}, error) { - return string(c.text), nil +func (c *current) onPassthroughMacro7() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonInlineElement130() (interface{}, error) { +func (p *parser) callonPassthroughMacro7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement130() + return p.cur.onPassthroughMacro7() } -func (c *current) onInlineElement126(name interface{}) (interface{}, error) { +func (c *current) onPassthroughMacro2(content interface{}) (interface{}, error) { + return types.NewInlinePassthrough(types.PassthroughMacro, []interface{}{content}) - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonInlineElement126() (interface{}, error) { +func (p *parser) callonPassthroughMacro2() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement126(stack["name"]) + return p.cur.onPassthroughMacro2(stack["content"]) } -func (c *current) onInlineElement77(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onPassthroughMacro17() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonInlineElement77() (interface{}, error) { +func (p *parser) callonPassthroughMacro17() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement77(stack["element"]) + return p.cur.onPassthroughMacro17() } -func (c *current) onInlineElement136() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onPassthroughMacro10(content interface{}) (interface{}, error) { + return types.NewInlinePassthrough(types.PassthroughMacro, content.([]interface{})) } -func (p *parser) callonInlineElement136() (interface{}, error) { +func (p *parser) callonPassthroughMacro10() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement136() + return p.cur.onPassthroughMacro10(stack["content"]) } -func (c *current) onInlineElement58(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onRelativeLink22() (interface{}, error) { + // not supported for now: EOL, space, "{", "[", "]" + return types.NewStringElement(string(c.text)) } -func (p *parser) callonInlineElement58() (interface{}, error) { +func (p *parser) callonRelativeLink22() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement58(stack["id"], stack["label"]) + return p.cur.onRelativeLink22() } -func (c *current) onInlineElement143() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onRelativeLink27() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonInlineElement143() (interface{}, error) { +func (p *parser) callonRelativeLink27() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement143() + return p.cur.onRelativeLink27() } -func (c *current) onInlineElement139(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onRelativeLink34() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement139() (interface{}, error) { +func (p *parser) callonRelativeLink34() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement139(stack["id"]) + return p.cur.onRelativeLink34() } -func (c *current) onInlineElement56() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onRelativeLink46() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement56() (interface{}, error) { +func (p *parser) callonRelativeLink46() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement56() + return p.cur.onRelativeLink46() } -func (c *current) onInlineElement147() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onRelativeLink48() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonInlineElement147() (interface{}, error) { +func (p *parser) callonRelativeLink48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement147() + return p.cur.onRelativeLink48() } -func (c *current) onInlineElement51(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onRelativeLink41(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonInlineElement51() (interface{}, error) { +func (p *parser) callonRelativeLink41() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement51(stack["element"]) + return p.cur.onRelativeLink41(stack["start"]) } -func (c *current) onInlineElement152() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onRelativeLink30(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonInlineElement152() (bool, error) { +func (p *parser) callonRelativeLink30() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement152() + return p.cur.onRelativeLink30(stack["name"], stack["start"]) } -func (c *current) onInlineElement159() (interface{}, error) { +func (c *current) onRelativeLink56() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonInlineElement159() (interface{}, error) { +func (p *parser) callonRelativeLink56() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement159() + return p.cur.onRelativeLink56() } -func (c *current) onInlineElement171() (interface{}, error) { +func (c *current) onRelativeLink68() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonInlineElement171() (interface{}, error) { +func (p *parser) callonRelativeLink68() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement171() + return p.cur.onRelativeLink68() } -func (c *current) onInlineElement173() (interface{}, error) { +func (c *current) onRelativeLink70() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonInlineElement173() (interface{}, error) { +func (p *parser) callonRelativeLink70() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement173() + return p.cur.onRelativeLink70() } -func (c *current) onInlineElement166(start interface{}) (interface{}, error) { +func (c *current) onRelativeLink63(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonInlineElement166() (interface{}, error) { +func (p *parser) callonRelativeLink63() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement166(stack["start"]) + return p.cur.onRelativeLink63(stack["start"]) } -func (c *current) onInlineElement155(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onRelativeLink52(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonInlineElement155() (interface{}, error) { +func (p *parser) callonRelativeLink52() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement155(stack["name"], stack["start"]) + return p.cur.onRelativeLink52(stack["name"], stack["start"]) } -func (c *current) onInlineElement181() (interface{}, error) { +func (c *current) onRelativeLink78() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonInlineElement181() (interface{}, error) { +func (p *parser) callonRelativeLink78() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement181() + return p.cur.onRelativeLink78() } -func (c *current) onInlineElement193() (interface{}, error) { - return string(c.text), nil +func (c *current) onRelativeLink74(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonInlineElement193() (interface{}, error) { +func (p *parser) callonRelativeLink74() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement193() + return p.cur.onRelativeLink74(stack["name"]) } -func (c *current) onInlineElement195() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onRelativeLink25(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonInlineElement195() (interface{}, error) { +func (p *parser) callonRelativeLink25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement195() + return p.cur.onRelativeLink25(stack["element"]) } -func (c *current) onInlineElement188(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onRelativeLink86() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) } -func (p *parser) callonInlineElement188() (interface{}, error) { +func (p *parser) callonRelativeLink86() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement188(stack["start"]) + return p.cur.onRelativeLink86() } -func (c *current) onInlineElement177(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onRelativeLink95() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil + } -func (p *parser) callonInlineElement177() (interface{}, error) { +func (p *parser) callonRelativeLink95() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement177(stack["name"], stack["start"]) + return p.cur.onRelativeLink95() } -func (c *current) onInlineElement203() (interface{}, error) { +func (c *current) onRelativeLink99() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonInlineElement203() (interface{}, error) { +func (p *parser) callonRelativeLink99() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement203() + return p.cur.onRelativeLink99() } -func (c *current) onInlineElement199(name interface{}) (interface{}, error) { +func (c *current) onRelativeLink105() (interface{}, error) { + // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references + return types.NewStringElement(string(c.text)) - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonInlineElement199() (interface{}, error) { +func (p *parser) callonRelativeLink105() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement199(stack["name"]) + return p.cur.onRelativeLink105() } -func (c *current) onInlineElement150(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onRelativeLink112() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonInlineElement150() (interface{}, error) { +func (p *parser) callonRelativeLink112() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement150(stack["element"]) + return p.cur.onRelativeLink112() } -func (c *current) onInlineElement210() (interface{}, error) { - return types.NewStringElement("\u2019") +func (c *current) onRelativeLink119() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement210() (interface{}, error) { +func (p *parser) callonRelativeLink119() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement210() + return p.cur.onRelativeLink119() } -func (c *current) onInlineElement212() (interface{}, error) { - return types.NewStringElement("\u00a9") +func (c *current) onRelativeLink131() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement212() (interface{}, error) { +func (p *parser) callonRelativeLink131() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement212() + return p.cur.onRelativeLink131() } -func (c *current) onInlineElement214() (interface{}, error) { - return types.NewStringElement("\u2122") +func (c *current) onRelativeLink133() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonInlineElement214() (interface{}, error) { +func (p *parser) callonRelativeLink133() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement214() + return p.cur.onRelativeLink133() } -func (c *current) onInlineElement216() (interface{}, error) { - return types.NewStringElement("\u00ae") +func (c *current) onRelativeLink126(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonInlineElement216() (interface{}, error) { +func (p *parser) callonRelativeLink126() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement216() + return p.cur.onRelativeLink126(stack["start"]) } -func (c *current) onInlineElement218() (interface{}, error) { - return types.NewStringElement("\u2026\u200b") - +func (c *current) onRelativeLink115(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonInlineElement218() (interface{}, error) { +func (p *parser) callonRelativeLink115() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement218() + return p.cur.onRelativeLink115(stack["name"], stack["start"]) } -func (c *current) onInlineElement220() (interface{}, error) { - return types.NewStringElement(string(c.text[:1]) + "\u2019") +func (c *current) onRelativeLink141() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineElement220() (interface{}, error) { +func (p *parser) callonRelativeLink141() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement220() + return p.cur.onRelativeLink141() } -func (c *current) onInlineElement230() (interface{}, error) { +func (c *current) onRelativeLink153() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonInlineElement230() (interface{}, error) { +func (p *parser) callonRelativeLink153() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement230() + return p.cur.onRelativeLink153() } -func (c *current) onInlineElement226(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onRelativeLink155() (interface{}, error) { + + return strconv.Atoi(string(c.text)) + } -func (p *parser) callonInlineElement226() (interface{}, error) { +func (p *parser) callonRelativeLink155() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement226(stack["ref"]) + return p.cur.onRelativeLink155() } -func (c *current) onInlineElement234() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onRelativeLink148(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonInlineElement234() (interface{}, error) { +func (p *parser) callonRelativeLink148() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement234() + return p.cur.onRelativeLink148(stack["start"]) } -func (c *current) onInlineElement1(element interface{}) (interface{}, error) { - c.trackSpaceSuffix(element) - return element, nil +func (c *current) onRelativeLink137(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonInlineElement1() (interface{}, error) { +func (p *parser) callonRelativeLink137() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineElement1(stack["element"]) + return p.cur.onRelativeLink137(stack["name"], stack["start"]) } -func (c *current) onIndexTerm1(term interface{}) (interface{}, error) { - return types.NewIndexTerm(term.([]interface{})) +func (c *current) onRelativeLink163() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonIndexTerm1() (interface{}, error) { +func (p *parser) callonRelativeLink163() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTerm1(stack["term"]) + return p.cur.onRelativeLink163() } -func (c *current) onIndexTermContent5() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onRelativeLink159(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonIndexTermContent5() (interface{}, error) { +func (p *parser) callonRelativeLink159() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent5() + return p.cur.onRelativeLink159(stack["name"]) } -func (c *current) onIndexTermContent14() (interface{}, error) { - // allow ` - return types.NewStringElement(string(c.text)) +func (c *current) onRelativeLink110(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonIndexTermContent14() (interface{}, error) { +func (p *parser) callonRelativeLink110() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent14() + return p.cur.onRelativeLink110(stack["element"]) } -func (c *current) onIndexTermContent25() (interface{}, error) { - return string(c.text), nil +func (c *current) onRelativeLink169() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonIndexTermContent25() (interface{}, error) { +func (p *parser) callonRelativeLink169() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent25() + return p.cur.onRelativeLink169() } -func (c *current) onIndexTermContent29() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +func (c *current) onRelativeLink91(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) } -func (p *parser) callonIndexTermContent29() (bool, error) { +func (p *parser) callonRelativeLink91() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent29() + return p.cur.onRelativeLink91(stack["id"], stack["label"]) } -func (c *current) onIndexTermContent38() (interface{}, error) { +func (c *current) onRelativeLink176() (interface{}, error) { // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil } -func (p *parser) callonIndexTermContent38() (interface{}, error) { +func (p *parser) callonRelativeLink176() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent38() + return p.cur.onRelativeLink176() } -func (c *current) onIndexTermContent42() (interface{}, error) { - return string(c.text), nil +func (c *current) onRelativeLink172(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) } -func (p *parser) callonIndexTermContent42() (interface{}, error) { +func (p *parser) callonRelativeLink172() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent42() + return p.cur.onRelativeLink172(stack["id"]) } -func (c *current) onIndexTermContent48() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references +func (c *current) onRelativeLink89() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonIndexTermContent48() (interface{}, error) { +func (p *parser) callonRelativeLink89() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent48() + return p.cur.onRelativeLink89() } -func (c *current) onIndexTermContent55() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onRelativeLink180() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonIndexTermContent55() (bool, error) { +func (p *parser) callonRelativeLink180() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent55() + return p.cur.onRelativeLink180() } -func (c *current) onIndexTermContent62() (interface{}, error) { - return string(c.text), nil +func (c *current) onRelativeLink84(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonIndexTermContent62() (interface{}, error) { +func (p *parser) callonRelativeLink84() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent62() + return p.cur.onRelativeLink84(stack["element"]) } -func (c *current) onIndexTermContent74() (interface{}, error) { - return string(c.text), nil +func (c *current) onRelativeLink182() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonIndexTermContent74() (interface{}, error) { +func (p *parser) callonRelativeLink182() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent74() + return p.cur.onRelativeLink182() } -func (c *current) onIndexTermContent76() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onRelativeLink18(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonIndexTermContent76() (interface{}, error) { +func (p *parser) callonRelativeLink18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent76() + return p.cur.onRelativeLink18(stack["elements"]) } -func (c *current) onIndexTermContent69(start interface{}) (interface{}, error) { - return start, nil - +func (c *current) onRelativeLink188() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonIndexTermContent69() (interface{}, error) { +func (p *parser) callonRelativeLink188() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent69(stack["start"]) + return p.cur.onRelativeLink188() } -func (c *current) onIndexTermContent58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onRelativeLink184(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonIndexTermContent58() (interface{}, error) { +func (p *parser) callonRelativeLink184() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent58(stack["name"], stack["start"]) + return p.cur.onRelativeLink184(stack["ref"]) } -func (c *current) onIndexTermContent84() (interface{}, error) { - return string(c.text), nil +func (c *current) onRelativeLink5(scheme, path interface{}) (interface{}, error) { + return types.NewLocation(scheme, path.([]interface{})) } -func (p *parser) callonIndexTermContent84() (interface{}, error) { +func (p *parser) callonRelativeLink5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent84() + return p.cur.onRelativeLink5(stack["scheme"], stack["path"]) } -func (c *current) onIndexTermContent96() (interface{}, error) { - return string(c.text), nil +func (c *current) onRelativeLink1(url, inlineAttributes interface{}) (interface{}, error) { + return types.NewInlineLink(url.(*types.Location), inlineAttributes.(types.Attributes)) } -func (p *parser) callonIndexTermContent96() (interface{}, error) { +func (p *parser) callonRelativeLink1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent96() + return p.cur.onRelativeLink1(stack["url"], stack["inlineAttributes"]) } -func (c *current) onIndexTermContent98() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onExternalLink22() (interface{}, error) { + // not supported for now: EOL, space, "{", "[", "]" + return types.NewStringElement(string(c.text)) } -func (p *parser) callonIndexTermContent98() (interface{}, error) { +func (p *parser) callonExternalLink22() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent98() + return p.cur.onExternalLink22() } -func (c *current) onIndexTermContent91(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onExternalLink27() (bool, error) { + return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonIndexTermContent91() (interface{}, error) { +func (p *parser) callonExternalLink27() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent91(stack["start"]) + return p.cur.onExternalLink27() } -func (c *current) onIndexTermContent80(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onExternalLink34() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonIndexTermContent80() (interface{}, error) { +func (p *parser) callonExternalLink34() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent80(stack["name"], stack["start"]) + return p.cur.onExternalLink34() } -func (c *current) onIndexTermContent106() (interface{}, error) { +func (c *current) onExternalLink46() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonIndexTermContent106() (interface{}, error) { +func (p *parser) callonExternalLink46() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent106() + return p.cur.onExternalLink46() } -func (c *current) onIndexTermContent102(name interface{}) (interface{}, error) { +func (c *current) onExternalLink48() (interface{}, error) { + + return strconv.Atoi(string(c.text)) - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonIndexTermContent102() (interface{}, error) { +func (p *parser) callonExternalLink48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent102(stack["name"]) + return p.cur.onExternalLink48() } -func (c *current) onIndexTermContent53(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onExternalLink41(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonIndexTermContent53() (interface{}, error) { +func (p *parser) callonExternalLink41() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent53(stack["element"]) + return p.cur.onExternalLink41(stack["start"]) } -func (c *current) onIndexTermContent112() (interface{}, error) { - - return types.NewStringElement(string(c.text)) - +func (c *current) onExternalLink30(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonIndexTermContent112() (interface{}, error) { +func (p *parser) callonExternalLink30() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent112() + return p.cur.onExternalLink30(stack["name"], stack["start"]) } -func (c *current) onIndexTermContent34(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onExternalLink56() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonIndexTermContent34() (interface{}, error) { +func (p *parser) callonExternalLink56() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent34(stack["id"], stack["label"]) + return p.cur.onExternalLink56() } -func (c *current) onIndexTermContent119() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onExternalLink68() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonIndexTermContent119() (interface{}, error) { +func (p *parser) callonExternalLink68() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent119() + return p.cur.onExternalLink68() } -func (c *current) onIndexTermContent115(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onExternalLink70() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonIndexTermContent115() (interface{}, error) { +func (p *parser) callonExternalLink70() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent115(stack["id"]) + return p.cur.onExternalLink70() } -func (c *current) onIndexTermContent32() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onExternalLink63(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonIndexTermContent32() (interface{}, error) { +func (p *parser) callonExternalLink63() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent32() + return p.cur.onExternalLink63(stack["start"]) } -func (c *current) onIndexTermContent123() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - +func (c *current) onExternalLink52(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonIndexTermContent123() (interface{}, error) { +func (p *parser) callonExternalLink52() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent123() + return p.cur.onExternalLink52(stack["name"], stack["start"]) } -func (c *current) onIndexTermContent27(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onExternalLink78() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonIndexTermContent27() (interface{}, error) { +func (p *parser) callonExternalLink78() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent27(stack["element"]) + return p.cur.onExternalLink78() } -func (c *current) onIndexTermContent129() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalLink74(name interface{}) (interface{}, error) { + + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonIndexTermContent129() (interface{}, error) { +func (p *parser) callonExternalLink74() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent129() + return p.cur.onExternalLink74(stack["name"]) } -func (c *current) onIndexTermContent125(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onExternalLink25(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonIndexTermContent125() (interface{}, error) { +func (p *parser) callonExternalLink25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent125(stack["ref"]) + return p.cur.onExternalLink25(stack["element"]) } -func (c *current) onIndexTermContent133() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalLink86() (bool, error) { + return c.isSubstitutionEnabled(SpecialCharacters) + } -func (p *parser) callonIndexTermContent133() (interface{}, error) { +func (p *parser) callonExternalLink86() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent133() + return p.cur.onExternalLink86() } -func (c *current) onIndexTermContent1(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +func (c *current) onExternalLink95() (interface{}, error) { + // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ + return string(c.text), nil + } -func (p *parser) callonIndexTermContent1() (interface{}, error) { +func (p *parser) callonExternalLink95() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onIndexTermContent1(stack["elements"]) + return p.cur.onExternalLink95() } -func (c *current) onImageBlock3() (bool, error) { - // AttrPositional1 must not be set - return types.HasNotAttribute(c.globalStore.getAttributes(), types.AttrPositional1), nil +func (c *current) onExternalLink99() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonImageBlock3() (bool, error) { +func (p *parser) callonExternalLink99() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock3() + return p.cur.onExternalLink99() } -func (c *current) onImageBlock23() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]" +func (c *current) onExternalLink105() (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) callonImageBlock23() (interface{}, error) { +func (p *parser) callonExternalLink105() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock23() + return p.cur.onExternalLink105() } -func (c *current) onImageBlock28() (bool, error) { +func (c *current) onExternalLink112() (bool, error) { return c.isSubstitutionEnabled(Attributes) } -func (p *parser) callonImageBlock28() (bool, error) { +func (p *parser) callonExternalLink112() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock28() + return p.cur.onExternalLink112() } -func (c *current) onImageBlock35() (interface{}, error) { +func (c *current) onExternalLink119() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonImageBlock35() (interface{}, error) { +func (p *parser) callonExternalLink119() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock35() + return p.cur.onExternalLink119() } -func (c *current) onImageBlock47() (interface{}, error) { +func (c *current) onExternalLink131() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonImageBlock47() (interface{}, error) { +func (p *parser) callonExternalLink131() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock47() + return p.cur.onExternalLink131() } -func (c *current) onImageBlock49() (interface{}, error) { +func (c *current) onExternalLink133() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonImageBlock49() (interface{}, error) { +func (p *parser) callonExternalLink133() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock49() + return p.cur.onExternalLink133() } -func (c *current) onImageBlock42(start interface{}) (interface{}, error) { +func (c *current) onExternalLink126(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonImageBlock42() (interface{}, error) { +func (p *parser) callonExternalLink126() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock42(stack["start"]) + return p.cur.onExternalLink126(stack["start"]) } -func (c *current) onImageBlock31(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onExternalLink115(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonImageBlock31() (interface{}, error) { +func (p *parser) callonExternalLink115() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock31(stack["name"], stack["start"]) + return p.cur.onExternalLink115(stack["name"], stack["start"]) } -func (c *current) onImageBlock57() (interface{}, error) { +func (c *current) onExternalLink141() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonImageBlock57() (interface{}, error) { +func (p *parser) callonExternalLink141() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock57() + return p.cur.onExternalLink141() } -func (c *current) onImageBlock69() (interface{}, error) { +func (c *current) onExternalLink153() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonImageBlock69() (interface{}, error) { +func (p *parser) callonExternalLink153() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock69() + return p.cur.onExternalLink153() } -func (c *current) onImageBlock71() (interface{}, error) { +func (c *current) onExternalLink155() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonImageBlock71() (interface{}, error) { +func (p *parser) callonExternalLink155() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock71() + return p.cur.onExternalLink155() } -func (c *current) onImageBlock64(start interface{}) (interface{}, error) { +func (c *current) onExternalLink148(start interface{}) (interface{}, error) { return start, nil } -func (p *parser) callonImageBlock64() (interface{}, error) { +func (p *parser) callonExternalLink148() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock64(stack["start"]) + return p.cur.onExternalLink148(stack["start"]) } -func (c *current) onImageBlock53(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onExternalLink137(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonImageBlock53() (interface{}, error) { +func (p *parser) callonExternalLink137() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock53(stack["name"], stack["start"]) + return p.cur.onExternalLink137(stack["name"], stack["start"]) } -func (c *current) onImageBlock79() (interface{}, error) { +func (c *current) onExternalLink163() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonImageBlock79() (interface{}, error) { +func (p *parser) callonExternalLink163() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock79() + return p.cur.onExternalLink163() } -func (c *current) onImageBlock75(name interface{}) (interface{}, error) { +func (c *current) onExternalLink159(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonImageBlock75() (interface{}, error) { +func (p *parser) callonExternalLink159() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock75(stack["name"]) + return p.cur.onExternalLink159(stack["name"]) } -func (c *current) onImageBlock26(element interface{}) (interface{}, error) { +func (c *current) onExternalLink110(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonImageBlock26() (interface{}, error) { +func (p *parser) callonExternalLink110() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock26(stack["element"]) + return p.cur.onExternalLink110(stack["element"]) } -func (c *current) onImageBlock87() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +func (c *current) onExternalLink169() (interface{}, error) { + + return types.NewStringElement(string(c.text)) } -func (p *parser) callonImageBlock87() (bool, error) { +func (p *parser) callonExternalLink169() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock87() + return p.cur.onExternalLink169() } -func (c *current) onImageBlock96() (interface{}, error) { +func (c *current) onExternalLink91(id, label interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, label) + +} + +func (p *parser) callonExternalLink91() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExternalLink91(stack["id"], stack["label"]) +} + +func (c *current) onExternalLink176() (interface{}, error) { // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ return string(c.text), nil } -func (p *parser) callonImageBlock96() (interface{}, error) { +func (p *parser) callonExternalLink176() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock96() + return p.cur.onExternalLink176() } -func (c *current) onImageBlock100() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalLink172(id interface{}) (interface{}, error) { + return types.NewInternalCrossReference(id, nil) } -func (p *parser) callonImageBlock100() (interface{}, error) { +func (p *parser) callonExternalLink172() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock100() + return p.cur.onExternalLink172(stack["id"]) } -func (c *current) onImageBlock106() (interface{}, error) { - // `{`, `>` and `>` characters are not allowed as they are used for attribute substitutions and cross-references +func (c *current) onExternalLink89() (interface{}, error) { return types.NewStringElement(string(c.text)) } -func (p *parser) callonImageBlock106() (interface{}, error) { +func (p *parser) callonExternalLink89() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock106() + return p.cur.onExternalLink89() } -func (c *current) onImageBlock113() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onExternalLink180() (interface{}, error) { + return types.NewSpecialCharacter(string(c.text)) } -func (p *parser) callonImageBlock113() (bool, error) { +func (p *parser) callonExternalLink180() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock113() + return p.cur.onExternalLink180() } -func (c *current) onImageBlock120() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalLink84(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonImageBlock120() (interface{}, error) { +func (p *parser) callonExternalLink84() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock120() + return p.cur.onExternalLink84(stack["element"]) } -func (c *current) onImageBlock132() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalLink182() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonImageBlock132() (interface{}, error) { +func (p *parser) callonExternalLink182() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock132() + return p.cur.onExternalLink182() } -func (c *current) onImageBlock134() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onExternalLink18(elements interface{}) (interface{}, error) { + return types.NewInlineElements(elements.([]interface{})) } -func (p *parser) callonImageBlock134() (interface{}, error) { +func (p *parser) callonExternalLink18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock134() + return p.cur.onExternalLink18(stack["elements"]) } -func (c *current) onImageBlock127(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onExternalLink188() (interface{}, error) { + return string(c.text), nil +} + +func (p *parser) callonExternalLink188() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExternalLink188() +} +func (c *current) onExternalLink184(ref interface{}) (interface{}, error) { + return types.NewElementPlaceHolder(ref.(string)) } -func (p *parser) callonImageBlock127() (interface{}, error) { +func (p *parser) callonExternalLink184() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock127(stack["start"]) + return p.cur.onExternalLink184(stack["ref"]) } -func (c *current) onImageBlock116(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onExternalLink4(scheme, path interface{}) (interface{}, error) { + return types.NewLocation(scheme, path.([]interface{})) + } -func (p *parser) callonImageBlock116() (interface{}, error) { +func (p *parser) callonExternalLink4() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock116(stack["name"], stack["start"]) + return p.cur.onExternalLink4(stack["scheme"], stack["path"]) } -func (c *current) onImageBlock142() (interface{}, error) { - return string(c.text), nil +func (c *current) onExternalLink1(url, inlineAttributes interface{}) (interface{}, error) { + return types.NewInlineLink(url.(*types.Location), inlineAttributes) } -func (p *parser) callonImageBlock142() (interface{}, error) { +func (p *parser) callonExternalLink1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock142() + return p.cur.onExternalLink1(stack["url"], stack["inlineAttributes"]) } -func (c *current) onImageBlock154() (interface{}, error) { +func (c *current) onListElements11() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonImageBlock154() (interface{}, error) { +func (p *parser) callonListElements11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock154() + return p.cur.onListElements11() } -func (c *current) onImageBlock156() (interface{}, error) { +func (c *current) onListElements18() (interface{}, error) { - return strconv.Atoi(string(c.text)) + // `.` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonImageBlock156() (interface{}, error) { +func (p *parser) callonListElements18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock156() + return p.cur.onListElements18() } -func (c *current) onImageBlock149(start interface{}) (interface{}, error) { - return start, nil +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) callonImageBlock149() (interface{}, error) { +func (p *parser) callonListElements21() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock149(stack["start"]) + return p.cur.onListElements21(stack["depth"]) } -func (c *current) onImageBlock138(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +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) callonImageBlock138() (interface{}, error) { +func (p *parser) callonListElements15() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock138(stack["name"], stack["start"]) + return p.cur.onListElements15(stack["depth"]) } -func (c *current) onImageBlock164() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements22() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonImageBlock164() (interface{}, error) { +func (p *parser) callonListElements22() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock164() + return p.cur.onListElements22() } -func (c *current) onImageBlock160(name interface{}) (interface{}, error) { +func (c *current) onListElements27() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonImageBlock160() (interface{}, error) { +func (p *parser) callonListElements27() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock160(stack["name"]) + return p.cur.onListElements27() } -func (c *current) onImageBlock111(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElements31() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonImageBlock111() (interface{}, error) { +func (p *parser) callonListElements31() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock111(stack["element"]) + return p.cur.onListElements31() } -func (c *current) onImageBlock170() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onListElements35() (interface{}, error) { + // numbering style: "i)", etc. + return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonImageBlock170() (interface{}, error) { +func (p *parser) callonListElements35() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock170() + return p.cur.onListElements35() } -func (c *current) onImageBlock92(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onListElements40() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonImageBlock92() (interface{}, error) { +func (p *parser) callonListElements40() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock92(stack["id"], stack["label"]) + return p.cur.onListElements40() } -func (c *current) onImageBlock177() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onListElements45(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonImageBlock177() (interface{}, error) { +func (p *parser) callonListElements45() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock177() + return p.cur.onListElements45(stack["prefix"]) } -func (c *current) onImageBlock173(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) - +func (c *current) onListElements8(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonImageBlock173() (interface{}, error) { +func (p *parser) callonListElements8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock173(stack["id"]) + return p.cur.onListElements8(stack["prefix"]) } -func (c *current) onImageBlock90() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onListElements52() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonImageBlock90() (interface{}, error) { +func (p *parser) callonListElements52() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock90() + return p.cur.onListElements52() } -func (c *current) onImageBlock181() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) - +func (c *current) onListElements56() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonImageBlock181() (interface{}, error) { +func (p *parser) callonListElements56() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock181() + return p.cur.onListElements56() } -func (c *current) onImageBlock85(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElements49(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) } -func (p *parser) callonImageBlock85() (interface{}, error) { +func (p *parser) callonListElements49() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock85(stack["element"]) + return p.cur.onListElements49(stack["rawline"]) } -func (c *current) onImageBlock183() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onListElements5(prefix, content interface{}) (interface{}, error) { + return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) } -func (p *parser) callonImageBlock183() (interface{}, error) { +func (p *parser) callonListElements5() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock183() + return p.cur.onListElements5(stack["prefix"], stack["content"]) } -func (c *current) onImageBlock19(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +func (c *current) onListElements69() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonImageBlock19() (interface{}, error) { +func (p *parser) callonListElements69() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock19(stack["elements"]) + return p.cur.onListElements69() } -func (c *current) onImageBlock189() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements76() (interface{}, error) { + + // `*` is 1, etc. + return (len(c.text)), nil + } -func (p *parser) callonImageBlock189() (interface{}, error) { +func (p *parser) callonListElements76() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock189() + return p.cur.onListElements76() } -func (c *current) onImageBlock185(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +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) callonImageBlock185() (interface{}, error) { +func (p *parser) callonListElements79() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock185(stack["ref"]) + return p.cur.onListElements79(stack["depth"]) } -func (c *current) onImageBlock6(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) +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) callonImageBlock6() (interface{}, error) { +func (p *parser) callonListElements73() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock6(stack["scheme"], stack["path"]) + return p.cur.onListElements73(stack["depth"]) } -func (c *current) onImageBlock196() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements81() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonImageBlock196() (interface{}, error) { +func (p *parser) callonListElements81() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock196() + return p.cur.onListElements81() } -func (c *current) onImageBlock199() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElements83(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil + } -func (p *parser) callonImageBlock199() (interface{}, error) { +func (p *parser) callonListElements83() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock199() + return p.cur.onListElements83(stack["prefix"]) } -func (c *current) onImageBlock1(path, inlineAttributes interface{}) (interface{}, error) { - // c.unsetCurrentSubstitution() - // 'imagesdir' attribute is added after applying the attribute substitutions on the image location - return types.NewImageBlock(path.(*types.Location), inlineAttributes.(types.Attributes), c.globalStore.getAttributes()) - +func (c *current) onListElements66(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonImageBlock1() (interface{}, error) { +func (p *parser) callonListElements66() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onImageBlock1(stack["path"], stack["inlineAttributes"]) + return p.cur.onListElements66(stack["prefix"]) } -func (c *current) onInlineImage24() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]" - return types.NewStringElement(string(c.text)) - +func (c *current) onListElements94() (interface{}, error) { + return types.Unchecked, nil } -func (p *parser) callonInlineImage24() (interface{}, error) { +func (p *parser) callonListElements94() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage24() + return p.cur.onListElements94() } -func (c *current) onInlineImage29() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onListElements96() (interface{}, error) { + return types.Checked, nil } -func (p *parser) callonInlineImage29() (bool, error) { +func (p *parser) callonListElements96() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage29() + return p.cur.onListElements96() } -func (c *current) onInlineImage36() (interface{}, error) { - return string(c.text), nil - +func (c *current) onListElements98() (interface{}, error) { + return types.Checked, nil } -func (p *parser) callonInlineImage36() (interface{}, error) { +func (p *parser) callonListElements98() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage36() + return p.cur.onListElements98() } -func (c *current) onInlineImage48() (interface{}, error) { +func (c *current) onListElements100(style interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonInlineImage48() (interface{}, error) { +func (p *parser) callonListElements100() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage48() + return p.cur.onListElements100(stack["style"]) } -func (c *current) onInlineImage50() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onListElements88(style interface{}) (interface{}, error) { + return style, nil } -func (p *parser) callonInlineImage50() (interface{}, error) { +func (p *parser) callonListElements88() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage50() + return p.cur.onListElements88(stack["style"]) } -func (c *current) onInlineImage43(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElements107() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonInlineImage43() (interface{}, error) { +func (p *parser) callonListElements107() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage43(stack["start"]) + return p.cur.onListElements107() } -func (c *current) onInlineImage32(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onListElements111() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonInlineImage32() (interface{}, error) { +func (p *parser) callonListElements111() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage32(stack["name"], stack["start"]) + return p.cur.onListElements111() } -func (c *current) onInlineImage58() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements104(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) } -func (p *parser) callonInlineImage58() (interface{}, error) { +func (p *parser) callonListElements104() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage58() + return p.cur.onListElements104(stack["rawline"]) } -func (c *current) onInlineImage70() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements63(prefix, checkstyle, content interface{}) (interface{}, error) { + return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) } -func (p *parser) callonInlineImage70() (interface{}, error) { +func (p *parser) callonListElements63() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage70() + return p.cur.onListElements63(stack["prefix"], stack["checkstyle"], stack["content"]) } -func (c *current) onInlineImage72() (interface{}, error) { - +func (c *current) onListElements125() (interface{}, error) { return strconv.Atoi(string(c.text)) - } -func (p *parser) callonInlineImage72() (interface{}, error) { +func (p *parser) callonListElements125() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage72() + return p.cur.onListElements125() } -func (c *current) onInlineImage65(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElements129(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonInlineImage65() (interface{}, error) { +func (p *parser) callonListElements129() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage65(stack["start"]) + return p.cur.onListElements129(stack["ref"]) } -func (c *current) onInlineImage54(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onListElements121(ref interface{}) (interface{}, error) { + return ref, nil + } -func (p *parser) callonInlineImage54() (interface{}, error) { +func (p *parser) callonListElements121() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage54(stack["name"], stack["start"]) + return p.cur.onListElements121(stack["ref"]) } -func (c *current) onInlineImage80() (interface{}, error) { +func (c *current) onListElements136() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonInlineImage80() (interface{}, error) { +func (p *parser) callonListElements136() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage80() + return p.cur.onListElements136() } -func (c *current) onInlineImage76(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string)) +func (c *current) onListElements140() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonInlineImage76() (interface{}, error) { +func (p *parser) callonListElements140() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage76(stack["name"]) + return p.cur.onListElements140() } -func (c *current) onInlineImage27(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElements133(rawline interface{}) (interface{}, error) { + return types.NewRawLine(rawline.(string)) } -func (p *parser) callonInlineImage27() (interface{}, error) { +func (p *parser) callonListElements133() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage27(stack["element"]) + return p.cur.onListElements133(stack["rawline"]) } -func (c *current) onInlineImage88() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +func (c *current) onListElements118(ref, description interface{}) (interface{}, error) { + return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) } -func (p *parser) callonInlineImage88() (bool, error) { +func (p *parser) callonListElements118() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage88() + return p.cur.onListElements118(stack["ref"], stack["description"]) } -func (c *current) onInlineImage97() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onListElements157() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineImage97() (interface{}, error) { +func (p *parser) callonListElements157() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage97() + return p.cur.onListElements157() } -func (c *current) onInlineImage101() (interface{}, error) { - return string(c.text), nil +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) callonInlineImage101() (interface{}, error) { +func (p *parser) callonListElements160() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage101() + return p.cur.onListElements160(stack["separator"]) } -func (c *current) onInlineImage107() (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) onListElements154(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonInlineImage107() (interface{}, error) { +func (p *parser) callonListElements154() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage107() + return p.cur.onListElements154(stack["separator"]) } -func (c *current) onInlineImage114() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onListElements163() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonInlineImage114() (bool, error) { +func (p *parser) callonListElements163() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage114() + return p.cur.onListElements163() } -func (c *current) onInlineImage121() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements150() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonInlineImage121() (interface{}, error) { +func (p *parser) callonListElements150() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage121() + return p.cur.onListElements150() } -func (c *current) onInlineImage133() (interface{}, error) { +func (c *current) onListElements175() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineImage133() (interface{}, error) { +func (p *parser) callonListElements175() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage133() + return p.cur.onListElements175() } -func (c *current) onInlineImage135() (interface{}, error) { +func (c *current) onListElements178(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) callonInlineImage135() (interface{}, error) { +func (p *parser) callonListElements178() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage135() + return p.cur.onListElements178(stack["separator"]) } -func (c *current) onInlineImage128(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElements172(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonInlineImage128() (interface{}, error) { +func (p *parser) callonListElements172() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage128(stack["start"]) + return p.cur.onListElements172(stack["separator"]) } -func (c *current) onInlineImage117(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onListElements184() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonInlineImage117() (interface{}, error) { +func (p *parser) callonListElements184() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage117(stack["name"], stack["start"]) + return p.cur.onListElements184() } -func (c *current) onInlineImage143() (interface{}, error) { +func (c *current) onListElements187() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonInlineImage143() (interface{}, error) { +func (p *parser) callonListElements187() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage143() + return p.cur.onListElements187() } -func (c *current) onInlineImage155() (interface{}, error) { +func (c *current) onListElements201() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonInlineImage155() (interface{}, error) { +func (p *parser) callonListElements201() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage155() + return p.cur.onListElements201() } -func (c *current) onInlineImage157() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - +func (c *current) onListElements204() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonInlineImage157() (interface{}, error) { +func (p *parser) callonListElements204() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage157() + return p.cur.onListElements204() } -func (c *current) onInlineImage150(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElements195() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonInlineImage150() (interface{}, error) { +func (p *parser) callonListElements195() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage150(stack["start"]) + return p.cur.onListElements195() } -func (c *current) onInlineImage139(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onListElements222() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonInlineImage139() (interface{}, error) { +func (p *parser) callonListElements222() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage139(stack["name"], stack["start"]) + return p.cur.onListElements222() } -func (c *current) onInlineImage165() (interface{}, error) { +func (c *current) onListElements225() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonInlineImage165() (interface{}, error) { +func (p *parser) callonListElements225() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage165() + return p.cur.onListElements225() } -func (c *current) onInlineImage161(name interface{}) (interface{}, error) { +func (c *current) onListElements216() (interface{}, error) { + return types.NewBlankLine() - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonInlineImage161() (interface{}, error) { +func (p *parser) callonListElements216() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage161(stack["name"]) + return p.cur.onListElements216() } -func (c *current) onInlineImage112(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElements236() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineImage112() (interface{}, error) { +func (p *parser) callonListElements236() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage112(stack["element"]) + return p.cur.onListElements236() } -func (c *current) onInlineImage171() (interface{}, error) { +func (c *current) onListElements238() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} - return types.NewStringElement(string(c.text)) +func (p *parser) callonListElements238() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElements238() +} + +func (c *current) onListElements247() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineImage171() (interface{}, error) { +func (p *parser) callonListElements247() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage171() + return p.cur.onListElements247() } -func (c *current) onInlineImage93(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onListElements254() (interface{}, error) { + + // `.` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonInlineImage93() (interface{}, error) { +func (p *parser) callonListElements254() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage93(stack["id"], stack["label"]) + return p.cur.onListElements254() } -func (c *current) onInlineImage178() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onListElements257(depth interface{}) (bool, error) { + + // use a predicate to make sure that only `.` to `.....` are allowed + return depth.(int) <= 5, nil } -func (p *parser) callonInlineImage178() (interface{}, error) { +func (p *parser) callonListElements257() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage178() + return p.cur.onListElements257(stack["depth"]) } -func (c *current) onInlineImage174(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onListElements251(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) callonInlineImage174() (interface{}, error) { +func (p *parser) callonListElements251() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage174(stack["id"]) + return p.cur.onListElements251(stack["depth"]) } -func (c *current) onInlineImage91() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onListElements258() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonInlineImage91() (interface{}, error) { +func (p *parser) callonListElements258() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage91() + return p.cur.onListElements258() } -func (c *current) onInlineImage182() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onListElements263() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonInlineImage182() (interface{}, error) { +func (p *parser) callonListElements263() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage182() + return p.cur.onListElements263() } -func (c *current) onInlineImage86(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElements267() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonInlineImage86() (interface{}, error) { +func (p *parser) callonListElements267() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage86(stack["element"]) + return p.cur.onListElements267() } -func (c *current) onInlineImage184() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onListElements271() (interface{}, error) { + // numbering style: "i)", etc. + return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonInlineImage184() (interface{}, error) { +func (p *parser) callonListElements271() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage184() + return p.cur.onListElements271() } -func (c *current) onInlineImage20(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +func (c *current) onListElements276() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonInlineImage20() (interface{}, error) { +func (p *parser) callonListElements276() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage20(stack["elements"]) + return p.cur.onListElements276() } -func (c *current) onInlineImage190() (interface{}, error) { +func (c *current) onListElements281(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil + } -func (p *parser) callonInlineImage190() (interface{}, error) { +func (p *parser) callonListElements281() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage190() + return p.cur.onListElements281(stack["prefix"]) } -func (c *current) onInlineImage186(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onListElements244(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonInlineImage186() (interface{}, error) { +func (p *parser) callonListElements244() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage186(stack["ref"]) + return p.cur.onListElements244(stack["prefix"]) } -func (c *current) onInlineImage7(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) +func (c *current) onListElements288() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonInlineImage7() (interface{}, error) { +func (p *parser) callonListElements288() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage7(stack["scheme"], stack["path"]) + return p.cur.onListElements288() } -func (c *current) onInlineImage1(path, inlineAttributes interface{}) (interface{}, error) { - return types.NewInlineImage(path.(*types.Location), inlineAttributes.(types.Attributes), c.globalStore["imagesdir"]) +func (c *current) onListElements295() (interface{}, error) { + + // `*` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonInlineImage1() (interface{}, error) { +func (p *parser) callonListElements295() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineImage1(stack["path"], stack["inlineAttributes"]) + return p.cur.onListElements295() } -func (c *current) onInlineIcon5() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements298(depth interface{}) (bool, error) { + + // use a predicate to make sure that only `*` to `*****` are allowed + return depth.(int) <= 5, nil + } -func (p *parser) callonInlineIcon5() (interface{}, error) { +func (p *parser) callonListElements298() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineIcon5() + return p.cur.onListElements298(stack["depth"]) } -func (c *current) onInlineIcon1(icon, attributes interface{}) (interface{}, error) { - return types.NewIcon(icon.(string), attributes) +func (c *current) onListElements292(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) callonInlineIcon1() (interface{}, error) { +func (p *parser) callonListElements292() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineIcon1(stack["icon"], stack["attributes"]) + return p.cur.onListElements292(stack["depth"]) } -func (c *current) onInlineFootnote2(content interface{}) (interface{}, error) { - return types.NewFootnote("", content) - +func (c *current) onListElements300() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) + } -func (p *parser) callonInlineFootnote2() (interface{}, error) { +func (p *parser) callonListElements300() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineFootnote2(stack["content"]) + return p.cur.onListElements300() } -func (c *current) onInlineFootnote12() (interface{}, error) { +func (c *current) onListElements302(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonInlineFootnote12() (interface{}, error) { +func (p *parser) callonListElements302() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineFootnote12() + return p.cur.onListElements302(stack["prefix"]) } -func (c *current) onInlineFootnote8(ref, content interface{}) (interface{}, error) { - // TODO: use only this rule with `ref:(FootnoteRef)?` - return types.NewFootnote(ref.(string), content) - +func (c *current) onListElements285(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonInlineFootnote8() (interface{}, error) { +func (p *parser) callonListElements285() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onInlineFootnote8(stack["ref"], stack["content"]) + return p.cur.onListElements285(stack["prefix"]) } -func (c *current) onFootnoteContent1(elements interface{}) (interface{}, error) { - // footnote content may span multiple lines - return types.NewInlineElements(elements.([]interface{})) - +func (c *current) onListElements310() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonFootnoteContent1() (interface{}, error) { +func (p *parser) callonListElements310() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onFootnoteContent1(stack["elements"]) + return p.cur.onListElements310() } -func (c *current) onPassthroughMacro7() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onListElements314(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonPassthroughMacro7() (interface{}, error) { +func (p *parser) callonListElements314() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughMacro7() + return p.cur.onListElements314(stack["ref"]) } -func (c *current) onPassthroughMacro2(content interface{}) (interface{}, error) { - return types.NewInlinePassthrough(types.PassthroughMacro, []interface{}{content}) +func (c *current) onListElements306(ref interface{}) (interface{}, error) { + return ref, nil } -func (p *parser) callonPassthroughMacro2() (interface{}, error) { +func (p *parser) callonListElements306() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughMacro2(stack["content"]) + return p.cur.onListElements306(stack["ref"]) } -func (c *current) onPassthroughMacro17() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onListElements326() (interface{}, error) { + + return string(c.text), nil } -func (p *parser) callonPassthroughMacro17() (interface{}, error) { +func (p *parser) callonListElements326() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughMacro17() + return p.cur.onListElements326() } -func (c *current) onPassthroughMacro10(content interface{}) (interface{}, error) { - return types.NewInlinePassthrough(types.PassthroughMacro, content.([]interface{})) +func (c *current) onListElements329(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) callonPassthroughMacro10() (interface{}, error) { +func (p *parser) callonListElements329() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onPassthroughMacro10(stack["content"]) + return p.cur.onListElements329(stack["separator"]) } -func (c *current) onRelativeLink22() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]" - return types.NewStringElement(string(c.text)) +func (c *current) onListElements323(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonRelativeLink22() (interface{}, error) { +func (p *parser) callonListElements323() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink22() + return p.cur.onListElements323(stack["separator"]) } -func (c *current) onRelativeLink27() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onListElements332() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonRelativeLink27() (bool, error) { +func (p *parser) callonListElements332() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink27() + return p.cur.onListElements332() } -func (c *current) onRelativeLink34() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElements319() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonRelativeLink34() (interface{}, error) { +func (p *parser) callonListElements319() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink34() + return p.cur.onListElements319() } -func (c *current) onRelativeLink46() (interface{}, error) { +func (c *current) onListElements343() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonRelativeLink46() (interface{}, error) { +func (p *parser) callonListElements343() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink46() + return p.cur.onListElements343() } -func (c *current) onRelativeLink48() (interface{}, error) { +func (c *current) onListElements346(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) callonRelativeLink48() (interface{}, error) { +func (p *parser) callonListElements346() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink48() + return p.cur.onListElements346(stack["separator"]) } -func (c *current) onRelativeLink41(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElements340(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonRelativeLink41() (interface{}, error) { +func (p *parser) callonListElements340() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink41(stack["start"]) + return p.cur.onListElements340(stack["separator"]) } -func (c *current) onRelativeLink30(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onListElements358() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonRelativeLink30() (interface{}, error) { +func (p *parser) callonListElements358() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink30(stack["name"], stack["start"]) + return p.cur.onListElements358() } -func (c *current) onRelativeLink56() (interface{}, error) { +func (c *current) onListElements361() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonRelativeLink56() (interface{}, error) { +func (p *parser) callonListElements361() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink56() + return p.cur.onListElements361() } -func (c *current) onRelativeLink68() (interface{}, error) { - return string(c.text), nil - +func (c *current) onListElements354() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonRelativeLink68() (interface{}, error) { +func (p *parser) callonListElements354() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink68() + return p.cur.onListElements354() } -func (c *current) onRelativeLink70() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onListElements372() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonRelativeLink70() (interface{}, error) { +func (p *parser) callonListElements372() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink70() + return p.cur.onListElements372() } -func (c *current) onRelativeLink63(start interface{}) (interface{}, error) { - return start, nil - +func (c *current) onListElements375() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonRelativeLink63() (interface{}, error) { +func (p *parser) callonListElements375() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink63(stack["start"]) + return p.cur.onListElements375() } -func (c *current) onRelativeLink52(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onListElements368() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) } -func (p *parser) callonRelativeLink52() (interface{}, error) { +func (p *parser) callonListElements368() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink52(stack["name"], stack["start"]) + return p.cur.onListElements368() } -func (c *current) onRelativeLink78() (interface{}, error) { +func (c *current) onListElements386() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonRelativeLink78() (interface{}, error) { +func (p *parser) callonListElements386() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink78() + return p.cur.onListElements386() } -func (c *current) onRelativeLink74(name interface{}) (interface{}, error) { - - return types.NewAttributeSubstitution(name.(string)) +func (c *current) onListElements389() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonRelativeLink74() (interface{}, error) { +func (p *parser) callonListElements389() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink74(stack["name"]) + return p.cur.onListElements389() } -func (c *current) onRelativeLink25(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onListElements382() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonRelativeLink25() (interface{}, error) { +func (p *parser) callonListElements382() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink25(stack["element"]) + return p.cur.onListElements382() } -func (c *current) onRelativeLink86() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +func (c *current) onListElements400() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonRelativeLink86() (bool, error) { +func (p *parser) callonListElements400() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink86() + return p.cur.onListElements400() } -func (c *current) onRelativeLink95() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onListElements403() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil +} +func (p *parser) callonListElements403() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElements403() } -func (p *parser) callonRelativeLink95() (interface{}, error) { +func (c *current) onListElements396() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) +} + +func (p *parser) callonListElements396() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink95() + return p.cur.onListElements396() } -func (c *current) onRelativeLink99() (interface{}, error) { +func (c *current) onListElements414() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonRelativeLink99() (interface{}, error) { +func (p *parser) callonListElements414() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink99() + return p.cur.onListElements414() } -func (c *current) onRelativeLink105() (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) onListElements417() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonRelativeLink105() (interface{}, error) { +func (p *parser) callonListElements417() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink105() + return p.cur.onListElements417() } -func (c *current) onRelativeLink112() (bool, error) { - return c.isSubstitutionEnabled(Attributes) - +func (c *current) onListElements410() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonRelativeLink112() (bool, error) { +func (p *parser) callonListElements410() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink112() + return p.cur.onListElements410() } -func (c *current) onRelativeLink119() (interface{}, error) { +func (c *current) onListElements428() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonRelativeLink119() (interface{}, error) { +func (p *parser) callonListElements428() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink119() + return p.cur.onListElements428() } -func (c *current) onRelativeLink131() (interface{}, error) { +func (c *current) onListElements431() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonRelativeLink131() (interface{}, error) { +func (p *parser) callonListElements431() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink131() + return p.cur.onListElements431() } -func (c *current) onRelativeLink133() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - +func (c *current) onListElements424() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonRelativeLink133() (interface{}, error) { +func (p *parser) callonListElements424() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink133() + return p.cur.onListElements424() } -func (c *current) onRelativeLink126(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElements442() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonRelativeLink126() (interface{}, error) { +func (p *parser) callonListElements442() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink126(stack["start"]) + return p.cur.onListElements442() } -func (c *current) onRelativeLink115(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onListElements445() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonRelativeLink115() (interface{}, error) { +func (p *parser) callonListElements445() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink115(stack["name"], stack["start"]) + return p.cur.onListElements445() } -func (c *current) onRelativeLink141() (interface{}, error) { - return string(c.text), nil - +func (c *current) onListElements438() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonRelativeLink141() (interface{}, error) { +func (p *parser) callonListElements438() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink141() + return p.cur.onListElements438() } -func (c *current) onRelativeLink153() (interface{}, error) { +func (c *current) onListElements456() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonRelativeLink153() (interface{}, error) { +func (p *parser) callonListElements456() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink153() + return p.cur.onListElements456() } -func (c *current) onRelativeLink155() (interface{}, error) { +func (c *current) onListElements459() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} - return strconv.Atoi(string(c.text)) +func (p *parser) callonListElements459() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElements459() +} +func (c *current) onListElements452() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonRelativeLink155() (interface{}, error) { +func (p *parser) callonListElements452() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink155() + return p.cur.onListElements452() } -func (c *current) onRelativeLink148(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElements348(delimiter interface{}) (interface{}, error) { + return delimiter, nil } -func (p *parser) callonRelativeLink148() (interface{}, error) { +func (p *parser) callonListElements348() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink148(stack["start"]) + return p.cur.onListElements348(stack["delimiter"]) } -func (c *current) onRelativeLink137(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onListElements467() (interface{}, error) { + return strings.TrimSpace(string(c.text)), nil + } -func (p *parser) callonRelativeLink137() (interface{}, error) { +func (p *parser) callonListElements467() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink137(stack["name"], stack["start"]) + return p.cur.onListElements467() } -func (c *current) onRelativeLink163() (interface{}, error) { +func (c *current) onListElements471() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonRelativeLink163() (interface{}, error) { +func (p *parser) callonListElements471() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink163() + return p.cur.onListElements471() } -func (c *current) onRelativeLink159(name interface{}) (interface{}, error) { +func (c *current) onListElements213(content interface{}) (interface{}, error) { + // do not retain the EOL chars + return types.NewRawLine(content.(string)) - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonRelativeLink159() (interface{}, error) { +func (p *parser) callonListElements213() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink159(stack["name"]) + return p.cur.onListElements213(stack["content"]) } -func (c *current) onRelativeLink110(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElements181(content interface{}) (interface{}, error) { + if content == nil { + return nil, nil + } + return types.NewParagraph(content) } -func (p *parser) callonRelativeLink110() (interface{}, error) { +func (p *parser) callonListElements181() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink110(stack["element"]) + return p.cur.onListElements181(stack["content"]) } -func (c *current) onRelativeLink169() (interface{}, error) { - - return types.NewStringElement(string(c.text)) +func (c *current) onListElements480() (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonRelativeLink169() (interface{}, error) { +func (p *parser) callonListElements480() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink169() + return p.cur.onListElements480() } -func (c *current) onRelativeLink91(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +func (c *current) onListElements484() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonRelativeLink91() (interface{}, error) { +func (p *parser) callonListElements484() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink91(stack["id"], stack["label"]) + return p.cur.onListElements484() } -func (c *current) onRelativeLink176() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ +func (c *current) onListElements488() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonRelativeLink176() (interface{}, error) { +func (p *parser) callonListElements488() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink176() + return p.cur.onListElements488() } -func (c *current) onRelativeLink172(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onListElements478(content interface{}) (interface{}, error) { + return types.NewParagraph(content) } -func (p *parser) callonRelativeLink172() (interface{}, error) { +func (p *parser) callonListElements478() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink172(stack["id"]) + return p.cur.onListElements478(stack["content"]) } -func (c *current) onRelativeLink89() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onListElements147(term, separator, description interface{}) (interface{}, error) { + return types.NewLabeledListElement(len(separator.(string))-1, term, description) } -func (p *parser) callonRelativeLink89() (interface{}, error) { +func (p *parser) callonListElements147() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink89() + return p.cur.onListElements147(stack["term"], stack["separator"], stack["description"]) } -func (c *current) onRelativeLink180() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +func (c *current) onListElements1(firstElement, extraElements interface{}) (interface{}, error) { + return types.NewListElements(append([]interface{}{firstElement}, extraElements.([]interface{})...)) } -func (p *parser) callonRelativeLink180() (interface{}, error) { +func (p *parser) callonListElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink180() + return p.cur.onListElements1(stack["firstElement"], stack["extraElements"]) } -func (c *current) onRelativeLink84(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onExtraListElements1(elements interface{}) (interface{}, error) { + return types.Flatten(elements.([]interface{})), nil } -func (p *parser) callonRelativeLink84() (interface{}, error) { +func (p *parser) callonExtraListElements1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink84(stack["element"]) + return p.cur.onExtraListElements1(stack["elements"]) } -func (c *current) onRelativeLink182() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onExtraListElement17() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonRelativeLink182() (interface{}, error) { +func (p *parser) callonExtraListElement17() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink182() + return p.cur.onExtraListElement17() } -func (c *current) onRelativeLink18(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +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) callonRelativeLink18() (interface{}, error) { +func (p *parser) callonExtraListElement11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink18(stack["elements"]) + return p.cur.onExtraListElement11() } -func (c *current) onRelativeLink188() (interface{}, error) { +func (c *current) onExtraListElement34() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonRelativeLink188() (interface{}, error) { +func (p *parser) callonExtraListElement34() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink188() + return p.cur.onExtraListElement34() } -func (c *current) onRelativeLink184(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onExtraListElement41() (interface{}, error) { + + // `.` is 1, etc. + return (len(c.text)), nil + } -func (p *parser) callonRelativeLink184() (interface{}, error) { +func (p *parser) callonExtraListElement41() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink184(stack["ref"]) + return p.cur.onExtraListElement41() } -func (c *current) onRelativeLink5(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) +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) callonRelativeLink5() (interface{}, error) { +func (p *parser) callonExtraListElement44() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink5(stack["scheme"], stack["path"]) + return p.cur.onExtraListElement44(stack["depth"]) } -func (c *current) onRelativeLink1(url, inlineAttributes interface{}) (interface{}, error) { - return types.NewInlineLink(url.(*types.Location), inlineAttributes.(types.Attributes)) +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) callonRelativeLink1() (interface{}, error) { +func (p *parser) callonExtraListElement38() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onRelativeLink1(stack["url"], stack["inlineAttributes"]) + return p.cur.onExtraListElement38(stack["depth"]) } -func (c *current) onExternalLink22() (interface{}, error) { - // not supported for now: EOL, space, "{", "[", "]" - return types.NewStringElement(string(c.text)) +func (c *current) onExtraListElement45() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonExternalLink22() (interface{}, error) { +func (p *parser) callonExtraListElement45() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink22() + return p.cur.onExtraListElement45() } -func (c *current) onExternalLink27() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onExtraListElement50() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonExternalLink27() (bool, error) { +func (p *parser) callonExtraListElement50() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink27() + return p.cur.onExtraListElement50() } -func (c *current) onExternalLink34() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement54() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonExternalLink34() (interface{}, error) { +func (p *parser) callonExtraListElement54() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink34() + return p.cur.onExtraListElement54() } -func (c *current) onExternalLink46() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement58() (interface{}, error) { + // numbering style: "i)", etc. + return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonExternalLink46() (interface{}, error) { +func (p *parser) callonExtraListElement58() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink46() + return p.cur.onExtraListElement58() } -func (c *current) onExternalLink48() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onExtraListElement63() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonExternalLink48() (interface{}, error) { +func (p *parser) callonExtraListElement63() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink48() + return p.cur.onExtraListElement63() } -func (c *current) onExternalLink41(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onExtraListElement68(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExternalLink41() (interface{}, error) { +func (p *parser) callonExtraListElement68() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink41(stack["start"]) + return p.cur.onExtraListElement68(stack["prefix"]) } -func (c *current) onExternalLink30(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onExtraListElement31(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonExternalLink30() (interface{}, error) { +func (p *parser) callonExtraListElement31() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink30(stack["name"], stack["start"]) + return p.cur.onExtraListElement31(stack["prefix"]) } -func (c *current) onExternalLink56() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement75() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExternalLink56() (interface{}, error) { +func (p *parser) callonExtraListElement75() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink56() + return p.cur.onExtraListElement75() } -func (c *current) onExternalLink68() (interface{}, error) { +func (c *current) onExtraListElement79() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonExternalLink68() (interface{}, error) { +func (p *parser) callonExtraListElement79() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink68() + return p.cur.onExtraListElement79() } -func (c *current) onExternalLink70() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onExtraListElement72(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) } -func (p *parser) callonExternalLink70() (interface{}, error) { +func (p *parser) callonExtraListElement72() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink70() + return p.cur.onExtraListElement72(stack["rawline"]) } -func (c *current) onExternalLink63(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onExtraListElement28(prefix, content interface{}) (interface{}, error) { + return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) } -func (p *parser) callonExternalLink63() (interface{}, error) { +func (p *parser) callonExtraListElement28() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink63(stack["start"]) + return p.cur.onExtraListElement28(stack["prefix"], stack["content"]) } -func (c *current) onExternalLink52(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onExtraListElement8(element interface{}) (interface{}, error) { + return element, nil + } -func (p *parser) callonExternalLink52() (interface{}, error) { +func (p *parser) callonExtraListElement8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink52(stack["name"], stack["start"]) + return p.cur.onExtraListElement8(stack["element"]) } -func (c *current) onExternalLink78() (interface{}, error) { +func (c *current) onExtraListElement98() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExternalLink78() (interface{}, error) { +func (p *parser) callonExtraListElement98() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink78() + return p.cur.onExtraListElement98() } -func (c *current) onExternalLink74(name interface{}) (interface{}, error) { +func (c *current) onExtraListElement105() (interface{}, error) { + + // `.` is 1, etc. + return (len(c.text)), nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonExternalLink74() (interface{}, error) { +func (p *parser) callonExtraListElement105() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink74(stack["name"]) + return p.cur.onExtraListElement105() } -func (c *current) onExternalLink25(element interface{}) (interface{}, error) { - return element, nil +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) callonExternalLink25() (interface{}, error) { +func (p *parser) callonExtraListElement108() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink25(stack["element"]) + return p.cur.onExtraListElement108(stack["depth"]) } -func (c *current) onExternalLink86() (bool, error) { - return c.isSubstitutionEnabled(SpecialCharacters) +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) callonExternalLink86() (bool, error) { +func (p *parser) callonExtraListElement102() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink86() + return p.cur.onExtraListElement102(stack["depth"]) } -func (c *current) onExternalLink95() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onExtraListElement109() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonExternalLink95() (interface{}, error) { +func (p *parser) callonExtraListElement109() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink95() + return p.cur.onExtraListElement109() } -func (c *current) onExternalLink99() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement114() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonExternalLink99() (interface{}, error) { +func (p *parser) callonExtraListElement114() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink99() + return p.cur.onExtraListElement114() } -func (c *current) onExternalLink105() (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) onExtraListElement118() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonExternalLink105() (interface{}, error) { +func (p *parser) callonExtraListElement118() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink105() + return p.cur.onExtraListElement118() } -func (c *current) onExternalLink112() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onExtraListElement122() (interface{}, error) { + // numbering style: "i)", etc. + return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonExternalLink112() (bool, error) { +func (p *parser) callonExtraListElement122() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink112() + return p.cur.onExtraListElement122() } -func (c *current) onExternalLink119() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement127() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonExternalLink119() (interface{}, error) { +func (p *parser) callonExtraListElement127() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink119() + return p.cur.onExtraListElement127() } -func (c *current) onExternalLink131() (interface{}, error) { +func (c *current) onExtraListElement132(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExternalLink131() (interface{}, error) { +func (p *parser) callonExtraListElement132() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink131() + return p.cur.onExtraListElement132(stack["prefix"]) } -func (c *current) onExternalLink133() (interface{}, error) { - - return strconv.Atoi(string(c.text)) - +func (c *current) onExtraListElement95(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonExternalLink133() (interface{}, error) { +func (p *parser) callonExtraListElement95() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink133() + return p.cur.onExtraListElement95(stack["prefix"]) } -func (c *current) onExternalLink126(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onExtraListElement139() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExternalLink126() (interface{}, error) { +func (p *parser) callonExtraListElement139() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink126(stack["start"]) + return p.cur.onExtraListElement139() } -func (c *current) onExternalLink115(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onExtraListElement143() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExternalLink115() (interface{}, error) { +func (p *parser) callonExtraListElement143() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink115(stack["name"], stack["start"]) + return p.cur.onExtraListElement143() } -func (c *current) onExternalLink141() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement136(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) } -func (p *parser) callonExternalLink141() (interface{}, error) { +func (p *parser) callonExtraListElement136() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink141() + return p.cur.onExtraListElement136(stack["rawline"]) } -func (c *current) onExternalLink153() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement92(prefix, content interface{}) (interface{}, error) { + return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) } -func (p *parser) callonExternalLink153() (interface{}, error) { +func (p *parser) callonExtraListElement92() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink153() + return p.cur.onExtraListElement92(stack["prefix"], stack["content"]) } -func (c *current) onExternalLink155() (interface{}, error) { - - return strconv.Atoi(string(c.text)) +func (c *current) onExtraListElement86(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil } -func (p *parser) callonExternalLink155() (interface{}, error) { +func (p *parser) callonExtraListElement86() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink155() + return p.cur.onExtraListElement86(stack["attributes"], stack["element"]) } -func (c *current) onExternalLink148(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onExtraListElement159() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExternalLink148() (interface{}, error) { +func (p *parser) callonExtraListElement159() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink148(stack["start"]) + return p.cur.onExtraListElement159() } -func (c *current) onExternalLink137(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onExtraListElement162() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExternalLink137() (interface{}, error) { +func (p *parser) callonExtraListElement162() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink137(stack["name"], stack["start"]) + return p.cur.onExtraListElement162() } -func (c *current) onExternalLink163() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement153() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonExternalLink163() (interface{}, error) { +func (p *parser) callonExtraListElement153() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink163() + return p.cur.onExtraListElement153() } -func (c *current) onExternalLink159(name interface{}) (interface{}, error) { +func (c *current) onExtraListElement176() (interface{}, error) { + return string(c.text), nil - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonExternalLink159() (interface{}, error) { +func (p *parser) callonExtraListElement176() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink159(stack["name"]) + return p.cur.onExtraListElement176() } -func (c *current) onExternalLink110(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onExtraListElement183() (interface{}, error) { + + // `*` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonExternalLink110() (interface{}, error) { +func (p *parser) callonExtraListElement183() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink110(stack["element"]) + return p.cur.onExtraListElement183() } -func (c *current) onExternalLink169() (interface{}, error) { +func (c *current) onExtraListElement186(depth interface{}) (bool, error) { - return types.NewStringElement(string(c.text)) + // use a predicate to make sure that only `*` to `*****` are allowed + return depth.(int) <= 5, nil } -func (p *parser) callonExternalLink169() (interface{}, error) { +func (p *parser) callonExtraListElement186() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink169() + return p.cur.onExtraListElement186(stack["depth"]) } -func (c *current) onExternalLink91(id, label interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, label) +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) callonExternalLink91() (interface{}, error) { +func (p *parser) callonExtraListElement180() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink91(stack["id"], stack["label"]) + return p.cur.onExtraListElement180(stack["depth"]) } -func (c *current) onExternalLink176() (interface{}, error) { - // previously: (Alphanums / (!Newline !Space !"[" !"]" !"<<" !">>" !"," .))+ - return string(c.text), nil +func (c *current) onExtraListElement188() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonExternalLink176() (interface{}, error) { +func (p *parser) callonExtraListElement188() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink176() + return p.cur.onExtraListElement188() } -func (c *current) onExternalLink172(id interface{}) (interface{}, error) { - return types.NewInternalCrossReference(id, nil) +func (c *current) onExtraListElement190(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExternalLink172() (interface{}, error) { +func (p *parser) callonExtraListElement190() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink172(stack["id"]) + return p.cur.onExtraListElement190(stack["prefix"]) } -func (c *current) onExternalLink89() (interface{}, error) { - return types.NewStringElement(string(c.text)) +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 (p *parser) callonExternalLink89() (interface{}, error) { +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.onExternalLink89() + return p.cur.onExtraListElement201() } -func (c *current) onExternalLink180() (interface{}, error) { - return types.NewSpecialCharacter(string(c.text)) +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 (p *parser) callonExternalLink180() (interface{}, error) { +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.onExternalLink180() + return p.cur.onExtraListElement205() } -func (c *current) onExternalLink84(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onExtraListElement207(style interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExternalLink84() (interface{}, error) { +func (p *parser) callonExtraListElement207() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink84(stack["element"]) + return p.cur.onExtraListElement207(stack["style"]) } -func (c *current) onExternalLink182() (interface{}, error) { - return types.NewStringElement(string(c.text)) +func (c *current) onExtraListElement195(style interface{}) (interface{}, error) { + return style, nil } -func (p *parser) callonExternalLink182() (interface{}, error) { +func (p *parser) callonExtraListElement195() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink182() + return p.cur.onExtraListElement195(stack["style"]) } -func (c *current) onExternalLink18(elements interface{}) (interface{}, error) { - return types.NewInlineElements(elements.([]interface{})) +func (c *current) onExtraListElement214() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExternalLink18() (interface{}, error) { +func (p *parser) callonExtraListElement214() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink18(stack["elements"]) + return p.cur.onExtraListElement214() } -func (c *current) onExternalLink188() (interface{}, error) { +func (c *current) onExtraListElement218() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExternalLink188() (interface{}, error) { +func (p *parser) callonExtraListElement218() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink188() + return p.cur.onExtraListElement218() } -func (c *current) onExternalLink184(ref interface{}) (interface{}, error) { - return types.NewElementPlaceHolder(ref.(string)) +func (c *current) onExtraListElement211(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) + } -func (p *parser) callonExternalLink184() (interface{}, error) { +func (p *parser) callonExtraListElement211() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink184(stack["ref"]) + return p.cur.onExtraListElement211(stack["rawline"]) } -func (c *current) onExternalLink4(scheme, path interface{}) (interface{}, error) { - return types.NewLocation(scheme, path.([]interface{})) +func (c *current) onExtraListElement170(prefix, checkstyle, content interface{}) (interface{}, error) { + return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) } -func (p *parser) callonExternalLink4() (interface{}, error) { +func (p *parser) callonExtraListElement170() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink4(stack["scheme"], stack["path"]) + return p.cur.onExtraListElement170(stack["prefix"], stack["checkstyle"], stack["content"]) } -func (c *current) onExternalLink1(url, inlineAttributes interface{}) (interface{}, error) { - return types.NewInlineLink(url.(*types.Location), inlineAttributes) +func (c *current) onExtraListElement150(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonExternalLink1() (interface{}, error) { +func (p *parser) callonExtraListElement150() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExternalLink1(stack["url"], stack["inlineAttributes"]) + return p.cur.onExtraListElement150(stack["element"]) } -func (c *current) onListElements11() (interface{}, error) { +func (c *current) onExtraListElement237() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements11() (interface{}, error) { +func (p *parser) callonExtraListElement237() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements11() + return p.cur.onExtraListElement237() } -func (c *current) onListElements18() (interface{}, error) { +func (c *current) onExtraListElement244() (interface{}, error) { - // `.` is 1, etc. + // `*` is 1, etc. return (len(c.text)), nil } -func (p *parser) callonListElements18() (interface{}, error) { +func (p *parser) callonExtraListElement244() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements18() + return p.cur.onExtraListElement244() } -func (c *current) onListElements21(depth interface{}) (bool, error) { +func (c *current) onExtraListElement247(depth interface{}) (bool, error) { - // use a predicate to make sure that only `.` to `.....` are allowed + // use a predicate to make sure that only `*` to `*****` are allowed return depth.(int) <= 5, nil } -func (p *parser) callonListElements21() (bool, error) { +func (p *parser) callonExtraListElement247() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements21(stack["depth"]) + return p.cur.onExtraListElement247(stack["depth"]) } -func (c *current) onListElements15(depth interface{}) (interface{}, error) { +func (c *current) onExtraListElement241(depth interface{}) (interface{}, error) { switch depth.(int) { case 1: - return types.NewOrderedListElementPrefix(types.Arabic) + return types.NewUnorderedListElementPrefix(types.OneAsterisk) case 2: - return types.NewOrderedListElementPrefix(types.LowerAlpha) + return types.NewUnorderedListElementPrefix(types.TwoAsterisks) case 3: - return types.NewOrderedListElementPrefix(types.LowerRoman) + return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) case 4: - return types.NewOrderedListElementPrefix(types.UpperAlpha) + return types.NewUnorderedListElementPrefix(types.FourAsterisks) default: - return types.NewOrderedListElementPrefix(types.UpperRoman) + return types.NewUnorderedListElementPrefix(types.FiveAsterisks) } } -func (p *parser) callonListElements15() (interface{}, error) { +func (p *parser) callonExtraListElement241() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements15(stack["depth"]) + return p.cur.onExtraListElement241(stack["depth"]) } -func (c *current) onListElements22() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) +func (c *current) onExtraListElement249() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonListElements22() (interface{}, error) { +func (p *parser) callonExtraListElement249() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements22() + return p.cur.onExtraListElement249() } -func (c *current) onListElements27() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) +func (c *current) onExtraListElement251(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonListElements27() (interface{}, error) { +func (p *parser) callonExtraListElement251() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements27() + return p.cur.onExtraListElement251(stack["prefix"]) } -func (c *current) onListElements31() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - +func (c *current) onExtraListElement234(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonListElements31() (interface{}, error) { +func (p *parser) callonExtraListElement234() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements31() + return p.cur.onExtraListElement234(stack["prefix"]) } -func (c *current) onListElements35() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - +func (c *current) onExtraListElement262() (interface{}, error) { + return types.Unchecked, nil } -func (p *parser) callonListElements35() (interface{}, error) { +func (p *parser) callonExtraListElement262() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements35() + return p.cur.onExtraListElement262() } -func (c *current) onListElements40() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) +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) callonListElements40() (interface{}, error) { +func (p *parser) callonExtraListElement266() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements40() + return p.cur.onExtraListElement266() } -func (c *current) onListElements45(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement268(style interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonListElements45() (interface{}, error) { +func (p *parser) callonExtraListElement268() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements45(stack["prefix"]) + return p.cur.onExtraListElement268(stack["style"]) } -func (c *current) onListElements8(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onExtraListElement256(style interface{}) (interface{}, error) { + return style, nil + } -func (p *parser) callonListElements8() (interface{}, error) { +func (p *parser) callonExtraListElement256() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements8(stack["prefix"]) + return p.cur.onExtraListElement256(stack["style"]) } -func (c *current) onListElements52() (interface{}, error) { +func (c *current) onExtraListElement275() (interface{}, error) { return types.NewRawLine(string(c.text)) } -func (p *parser) callonListElements52() (interface{}, error) { +func (p *parser) callonExtraListElement275() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements52() + return p.cur.onExtraListElement275() } -func (c *current) onListElements56() (interface{}, error) { +func (c *current) onExtraListElement279() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements56() (interface{}, error) { +func (p *parser) callonExtraListElement279() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements56() + return p.cur.onExtraListElement279() } -func (c *current) onListElements49(rawline interface{}) (interface{}, error) { +func (c *current) onExtraListElement272(rawline interface{}) (interface{}, error) { return types.NewParagraph(rawline) } -func (p *parser) callonListElements49() (interface{}, error) { +func (p *parser) callonExtraListElement272() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements49(stack["rawline"]) + return p.cur.onExtraListElement272(stack["rawline"]) } -func (c *current) onListElements5(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) +func (c *current) onExtraListElement231(prefix, checkstyle, content interface{}) (interface{}, error) { + return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) } -func (p *parser) callonListElements5() (interface{}, error) { +func (p *parser) callonExtraListElement231() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements5(stack["prefix"], stack["content"]) + return p.cur.onExtraListElement231(stack["prefix"], stack["checkstyle"], stack["content"]) } -func (c *current) onListElements69() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement225(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil } -func (p *parser) callonListElements69() (interface{}, error) { +func (p *parser) callonExtraListElement225() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements69() + return p.cur.onExtraListElement225(stack["attributes"], stack["element"]) } -func (c *current) onListElements76() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil +func (c *current) onExtraListElement295() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElements76() (interface{}, error) { +func (p *parser) callonExtraListElement295() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements76() + return p.cur.onExtraListElement295() } -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 (c *current) onExtraListElement298() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElements79() (bool, error) { +func (p *parser) callonExtraListElement298() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements79(stack["depth"]) + return p.cur.onExtraListElement298() } -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 (c *current) onExtraListElement289() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonListElements73() (interface{}, error) { +func (p *parser) callonExtraListElement289() (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) + return p.cur.onExtraListElement289() +} +func (c *current) onExtraListElement313() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonListElements81() (interface{}, error) { +func (p *parser) callonExtraListElement313() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements81() + return p.cur.onExtraListElement313() } -func (c *current) onListElements83(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement317(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonListElements83() (interface{}, error) { +func (p *parser) callonExtraListElement317() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements83(stack["prefix"]) + return p.cur.onExtraListElement317(stack["ref"]) } -func (c *current) onListElements66(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onExtraListElement309(ref interface{}) (interface{}, error) { + return ref, nil + } -func (p *parser) callonListElements66() (interface{}, error) { +func (p *parser) callonExtraListElement309() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements66(stack["prefix"]) + return p.cur.onExtraListElement309(stack["ref"]) } -func (c *current) onListElements94() (interface{}, error) { - return types.Unchecked, nil +func (c *current) onExtraListElement324() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonListElements94() (interface{}, error) { +func (p *parser) callonExtraListElement324() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements94() + return p.cur.onExtraListElement324() } -func (c *current) onListElements96() (interface{}, error) { - return types.Checked, nil +func (c *current) onExtraListElement328() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElements96() (interface{}, error) { +func (p *parser) callonExtraListElement328() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements96() + return p.cur.onExtraListElement328() } -func (c *current) onListElements98() (interface{}, error) { - return types.Checked, nil +func (c *current) onExtraListElement321(rawline interface{}) (interface{}, error) { + return types.NewRawLine(rawline.(string)) + } -func (p *parser) callonListElements98() (interface{}, error) { +func (p *parser) callonExtraListElement321() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements98() + return p.cur.onExtraListElement321(stack["rawline"]) } -func (c *current) onListElements100(style interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onExtraListElement306(ref, description interface{}) (interface{}, error) { + return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) } -func (p *parser) callonListElements100() (interface{}, error) { +func (p *parser) callonExtraListElement306() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements100(stack["style"]) + return p.cur.onExtraListElement306(stack["ref"], stack["description"]) } -func (c *current) onListElements88(style interface{}) (interface{}, error) { - return style, nil +func (c *current) onExtraListElement286(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonListElements88() (interface{}, error) { +func (p *parser) callonExtraListElement286() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements88(stack["style"]) + return p.cur.onExtraListElement286(stack["element"]) } -func (c *current) onListElements107() (interface{}, error) { - return types.NewRawLine(string(c.text)) - +func (c *current) onExtraListElement348() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonListElements107() (interface{}, error) { +func (p *parser) callonExtraListElement348() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements107() + return p.cur.onExtraListElement348() } -func (c *current) onListElements111() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement352(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil + } -func (p *parser) callonListElements111() (interface{}, error) { +func (p *parser) callonExtraListElement352() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements111() + return p.cur.onExtraListElement352(stack["ref"]) } -func (c *current) onListElements104(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) +func (c *current) onExtraListElement344(ref interface{}) (interface{}, error) { + return ref, nil } -func (p *parser) callonListElements104() (interface{}, error) { +func (p *parser) callonExtraListElement344() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements104(stack["rawline"]) + return p.cur.onExtraListElement344(stack["ref"]) } -func (c *current) onListElements63(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) +func (c *current) onExtraListElement359() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElements63() (interface{}, error) { +func (p *parser) callonExtraListElement359() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements63(stack["prefix"], stack["checkstyle"], stack["content"]) + return p.cur.onExtraListElement359() } -func (c *current) onListElements125() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onExtraListElement363() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElements125() (interface{}, error) { +func (p *parser) callonExtraListElement363() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements125() + return p.cur.onExtraListElement363() } -func (c *current) onListElements129(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onExtraListElement356(rawline interface{}) (interface{}, error) { + return types.NewRawLine(rawline.(string)) } -func (p *parser) callonListElements129() (interface{}, error) { +func (p *parser) callonExtraListElement356() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements129(stack["ref"]) + return p.cur.onExtraListElement356(stack["rawline"]) } -func (c *current) onListElements121(ref interface{}) (interface{}, error) { - return ref, nil +func (c *current) onExtraListElement341(ref, description interface{}) (interface{}, error) { + return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) } -func (p *parser) callonListElements121() (interface{}, error) { +func (p *parser) callonExtraListElement341() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements121(stack["ref"]) + return p.cur.onExtraListElement341(stack["ref"], stack["description"]) } -func (c *current) onListElements136() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement335(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil } -func (p *parser) callonListElements136() (interface{}, error) { +func (p *parser) callonExtraListElement335() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements136() + return p.cur.onExtraListElement335(stack["attributes"], stack["element"]) } -func (c *current) onListElements140() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement380() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonListElements140() (interface{}, error) { +func (p *parser) callonExtraListElement380() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements140() + return p.cur.onExtraListElement380() } -func (c *current) onListElements133(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) - +func (c *current) onExtraListElement383() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElements133() (interface{}, error) { +func (p *parser) callonExtraListElement383() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements133(stack["rawline"]) + return p.cur.onExtraListElement383() } -func (c *current) onListElements118(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) +func (c *current) onExtraListElement374() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonListElements118() (interface{}, error) { +func (p *parser) callonExtraListElement374() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements118(stack["ref"], stack["description"]) + return p.cur.onExtraListElement374() } -func (c *current) onListElements157() (interface{}, error) { +func (c *current) onExtraListElement401() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements157() (interface{}, error) { +func (p *parser) callonExtraListElement401() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements157() + return p.cur.onExtraListElement401() } -func (c *current) onListElements160(separator interface{}) (bool, error) { +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) callonListElements160() (bool, error) { +func (p *parser) callonExtraListElement404() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements160(stack["separator"]) + return p.cur.onExtraListElement404(stack["separator"]) } -func (c *current) onListElements154(separator interface{}) (interface{}, error) { +func (c *current) onExtraListElement398(separator interface{}) (interface{}, error) { return separator, nil } -func (p *parser) callonListElements154() (interface{}, error) { +func (p *parser) callonExtraListElement398() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements154(stack["separator"]) + return p.cur.onExtraListElement398(stack["separator"]) } -func (c *current) onListElements163() (interface{}, error) { +func (c *current) onExtraListElement407() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements163() (interface{}, error) { +func (p *parser) callonExtraListElement407() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements163() + return p.cur.onExtraListElement407() } -func (c *current) onListElements150() (interface{}, error) { +func (c *current) onExtraListElement394() (interface{}, error) { return types.NewRawLine(string(c.text)) } -func (p *parser) callonListElements150() (interface{}, error) { +func (p *parser) callonExtraListElement394() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements150() + return p.cur.onExtraListElement394() } -func (c *current) onListElements175() (interface{}, error) { +func (c *current) onExtraListElement419() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements175() (interface{}, error) { +func (p *parser) callonExtraListElement419() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements175() + return p.cur.onExtraListElement419() } -func (c *current) onListElements178(separator interface{}) (bool, error) { +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) callonListElements178() (bool, error) { +func (p *parser) callonExtraListElement422() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements178(stack["separator"]) + return p.cur.onExtraListElement422(stack["separator"]) } -func (c *current) onListElements172(separator interface{}) (interface{}, error) { +func (c *current) onExtraListElement416(separator interface{}) (interface{}, error) { return separator, nil } -func (p *parser) callonListElements172() (interface{}, error) { +func (p *parser) callonExtraListElement416() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements172(stack["separator"]) + return p.cur.onExtraListElement416(stack["separator"]) } -func (c *current) onListElements184() (interface{}, error) { +func (c *current) onExtraListElement428() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements184() (interface{}, error) { +func (p *parser) callonExtraListElement428() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements184() + return p.cur.onExtraListElement428() } -func (c *current) onListElements187() (interface{}, error) { +func (c *current) onExtraListElement431() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements187() (interface{}, error) { +func (p *parser) callonExtraListElement431() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements187() + return p.cur.onExtraListElement431() } -func (c *current) onListElements201() (interface{}, error) { +func (c *current) onExtraListElement445() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements201() (interface{}, error) { +func (p *parser) callonExtraListElement445() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements201() + return p.cur.onExtraListElement445() } -func (c *current) onListElements204() (interface{}, error) { +func (c *current) onExtraListElement448() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements204() (interface{}, error) { +func (p *parser) callonExtraListElement448() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements204() + return p.cur.onExtraListElement448() } -func (c *current) onListElements195() (interface{}, error) { +func (c *current) onExtraListElement439() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonListElements195() (interface{}, error) { +func (p *parser) callonExtraListElement439() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements195() + return p.cur.onExtraListElement439() } -func (c *current) onListElements222() (interface{}, error) { +func (c *current) onExtraListElement466() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements222() (interface{}, error) { +func (p *parser) callonExtraListElement466() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements222() + return p.cur.onExtraListElement466() } -func (c *current) onListElements225() (interface{}, error) { +func (c *current) onExtraListElement469() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements225() (interface{}, error) { +func (p *parser) callonExtraListElement469() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements225() + return p.cur.onExtraListElement469() } -func (c *current) onListElements216() (interface{}, error) { +func (c *current) onExtraListElement460() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonListElements216() (interface{}, error) { +func (p *parser) callonExtraListElement460() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements216() + return p.cur.onExtraListElement460() } -func (c *current) onListElements236() (interface{}, error) { +func (c *current) onExtraListElement480() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements236() (interface{}, error) { +func (p *parser) callonExtraListElement480() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements236() + return p.cur.onExtraListElement480() } -func (c *current) onListElements238() (interface{}, error) { +func (c *current) onExtraListElement482() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements238() (interface{}, error) { +func (p *parser) callonExtraListElement482() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements238() + return p.cur.onExtraListElement482() } -func (c *current) onListElements247() (interface{}, error) { +func (c *current) onExtraListElement491() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements247() (interface{}, error) { +func (p *parser) callonExtraListElement491() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements247() + return p.cur.onExtraListElement491() } -func (c *current) onListElements254() (interface{}, error) { +func (c *current) onExtraListElement498() (interface{}, error) { // `.` is 1, etc. return (len(c.text)), nil } -func (p *parser) callonListElements254() (interface{}, error) { +func (p *parser) callonExtraListElement498() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements254() + return p.cur.onExtraListElement498() } -func (c *current) onListElements257(depth interface{}) (bool, error) { +func (c *current) onExtraListElement501(depth interface{}) (bool, error) { // use a predicate to make sure that only `.` to `.....` are allowed return depth.(int) <= 5, nil } -func (p *parser) callonListElements257() (bool, error) { +func (p *parser) callonExtraListElement501() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements257(stack["depth"]) + return p.cur.onExtraListElement501(stack["depth"]) } -func (c *current) onListElements251(depth interface{}) (interface{}, error) { +func (c *current) onExtraListElement495(depth interface{}) (interface{}, error) { switch depth.(int) { case 1: return types.NewOrderedListElementPrefix(types.Arabic) @@ -79397,132 +86917,132 @@ func (c *current) onListElements251(depth interface{}) (interface{}, error) { } -func (p *parser) callonListElements251() (interface{}, error) { +func (p *parser) callonExtraListElement495() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements251(stack["depth"]) + return p.cur.onExtraListElement495(stack["depth"]) } -func (c *current) onListElements258() (interface{}, error) { +func (c *current) onExtraListElement502() (interface{}, error) { // numbering style: "1.", etc. return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonListElements258() (interface{}, error) { +func (p *parser) callonExtraListElement502() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements258() + return p.cur.onExtraListElement502() } -func (c *current) onListElements263() (interface{}, error) { +func (c *current) onExtraListElement507() (interface{}, error) { // numbering style: "a.", etc. return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonListElements263() (interface{}, error) { +func (p *parser) callonExtraListElement507() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements263() + return p.cur.onExtraListElement507() } -func (c *current) onListElements267() (interface{}, error) { +func (c *current) onExtraListElement511() (interface{}, error) { // numbering style: "A.", etc. return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonListElements267() (interface{}, error) { +func (p *parser) callonExtraListElement511() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements267() + return p.cur.onExtraListElement511() } -func (c *current) onListElements271() (interface{}, error) { +func (c *current) onExtraListElement515() (interface{}, error) { // numbering style: "i)", etc. return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonListElements271() (interface{}, error) { +func (p *parser) callonExtraListElement515() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements271() + return p.cur.onExtraListElement515() } -func (c *current) onListElements276() (interface{}, error) { +func (c *current) onExtraListElement520() (interface{}, error) { // numbering style: "I)", etc. return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonListElements276() (interface{}, error) { +func (p *parser) callonExtraListElement520() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements276() + return p.cur.onExtraListElement520() } -func (c *current) onListElements281(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement525(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonListElements281() (interface{}, error) { +func (p *parser) callonExtraListElement525() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements281(stack["prefix"]) + return p.cur.onExtraListElement525(stack["prefix"]) } -func (c *current) onListElements244(prefix interface{}) (interface{}, error) { +func (c *current) onExtraListElement488(prefix interface{}) (interface{}, error) { return prefix, nil } -func (p *parser) callonListElements244() (interface{}, error) { +func (p *parser) callonExtraListElement488() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements244(stack["prefix"]) + return p.cur.onExtraListElement488(stack["prefix"]) } -func (c *current) onListElements288() (interface{}, error) { +func (c *current) onExtraListElement532() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements288() (interface{}, error) { +func (p *parser) callonExtraListElement532() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements288() + return p.cur.onExtraListElement532() } -func (c *current) onListElements295() (interface{}, error) { +func (c *current) onExtraListElement539() (interface{}, error) { // `*` is 1, etc. return (len(c.text)), nil } -func (p *parser) callonListElements295() (interface{}, error) { +func (p *parser) callonExtraListElement539() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements295() + return p.cur.onExtraListElement539() } -func (c *current) onListElements298(depth interface{}) (bool, error) { +func (c *current) onExtraListElement542(depth interface{}) (bool, error) { // use a predicate to make sure that only `*` to `*****` are allowed return depth.(int) <= 5, nil } -func (p *parser) callonListElements298() (bool, error) { +func (p *parser) callonExtraListElement542() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements298(stack["depth"]) + return p.cur.onExtraListElement542(stack["depth"]) } -func (c *current) onListElements292(depth interface{}) (interface{}, error) { +func (c *current) onExtraListElement536(depth interface{}) (interface{}, error) { switch depth.(int) { case 1: return types.NewUnorderedListElementPrefix(types.OneAsterisk) @@ -79533,1185 +87053,942 @@ func (c *current) onListElements292(depth interface{}) (interface{}, error) { case 4: return types.NewUnorderedListElementPrefix(types.FourAsterisks) default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) - } - -} - -func (p *parser) callonListElements292() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements292(stack["depth"]) -} - -func (c *current) onListElements300() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - -} - -func (p *parser) callonListElements300() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements300() -} - -func (c *current) onListElements302(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements302() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements302(stack["prefix"]) -} - -func (c *current) onListElements285(prefix interface{}) (interface{}, error) { - return prefix, nil -} - -func (p *parser) callonListElements285() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements285(stack["prefix"]) -} - -func (c *current) onListElements310() (interface{}, error) { - return strconv.Atoi(string(c.text)) -} - -func (p *parser) callonListElements310() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements310() -} - -func (c *current) onListElements314(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil - -} - -func (p *parser) callonListElements314() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements314(stack["ref"]) -} - -func (c *current) onListElements306(ref interface{}) (interface{}, error) { - return ref, nil - -} - -func (p *parser) callonListElements306() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements306(stack["ref"]) -} - -func (c *current) onListElements326() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElements326() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements326() -} - -func (c *current) onListElements329(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) callonListElements329() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements329(stack["separator"]) -} - -func (c *current) onListElements323(separator interface{}) (interface{}, error) { - return separator, nil - -} - -func (p *parser) callonListElements323() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements323(stack["separator"]) -} - -func (c *current) onListElements332() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil -} - -func (p *parser) callonListElements332() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements332() -} - -func (c *current) onListElements319() (interface{}, error) { - return types.NewRawLine(string(c.text)) - -} - -func (p *parser) callonListElements319() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements319() -} - -func (c *current) onListElements343() (interface{}, error) { - - return string(c.text), nil - -} - -func (p *parser) callonListElements343() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements343() -} - -func (c *current) onListElements346(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) callonListElements346() (bool, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElements346(stack["separator"]) -} - -func (c *current) onListElements340(separator interface{}) (interface{}, error) { - return separator, nil + return types.NewUnorderedListElementPrefix(types.FiveAsterisks) + } } -func (p *parser) callonListElements340() (interface{}, error) { +func (p *parser) callonExtraListElement536() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements340(stack["separator"]) + return p.cur.onExtraListElement536(stack["depth"]) } -func (c *current) onListElements357() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement544() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonListElements357() (interface{}, error) { +func (p *parser) callonExtraListElement544() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements357() + return p.cur.onExtraListElement544() } -func (c *current) onListElements360() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement546(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil + } -func (p *parser) callonListElements360() (interface{}, error) { +func (p *parser) callonExtraListElement546() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements360() + return p.cur.onExtraListElement546(stack["prefix"]) } -func (c *current) onListElements370() (interface{}, error) { - return string(c.text), nil - +func (c *current) onExtraListElement529(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonListElements370() (interface{}, error) { +func (p *parser) callonExtraListElement529() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements370() + return p.cur.onExtraListElement529(stack["prefix"]) } -func (c *current) onListElements373() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement554() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonListElements373() (interface{}, error) { +func (p *parser) callonExtraListElement554() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements373() + return p.cur.onExtraListElement554() } -func (c *current) onListElements383() (interface{}, error) { +func (c *current) onExtraListElement558(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonListElements383() (interface{}, error) { +func (p *parser) callonExtraListElement558() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements383() + return p.cur.onExtraListElement558(stack["ref"]) } -func (c *current) onListElements386() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement550(ref interface{}) (interface{}, error) { + return ref, nil + } -func (p *parser) callonListElements386() (interface{}, error) { +func (p *parser) callonExtraListElement550() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements386() + return p.cur.onExtraListElement550(stack["ref"]) } -func (c *current) onListElements396() (interface{}, error) { +func (c *current) onExtraListElement570() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElements396() (interface{}, error) { +func (p *parser) callonExtraListElement570() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements396() + return p.cur.onExtraListElement570() } -func (c *current) onListElements399() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement573(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) callonListElements399() (interface{}, error) { +func (p *parser) callonExtraListElement573() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements399() + return p.cur.onExtraListElement573(stack["separator"]) } -func (c *current) onListElements409() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement567(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonListElements409() (interface{}, error) { +func (p *parser) callonExtraListElement567() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements409() + return p.cur.onExtraListElement567(stack["separator"]) } -func (c *current) onListElements412() (interface{}, error) { +func (c *current) onExtraListElement576() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements412() (interface{}, error) { +func (p *parser) callonExtraListElement576() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements412() + return p.cur.onExtraListElement576() } -func (c *current) onListElements422() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement563() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonListElements422() (interface{}, error) { +func (p *parser) callonExtraListElement563() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements422() + return p.cur.onExtraListElement563() } -func (c *current) onListElements425() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement587() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonListElements425() (interface{}, error) { +func (p *parser) callonExtraListElement587() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements425() + return p.cur.onExtraListElement587() } -func (c *current) onListElements435() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement590(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) callonListElements435() (interface{}, error) { +func (p *parser) callonExtraListElement590() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements435() + return p.cur.onExtraListElement590(stack["separator"]) } -func (c *current) onListElements438() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement584(separator interface{}) (interface{}, error) { + return separator, nil + } -func (p *parser) callonListElements438() (interface{}, error) { +func (p *parser) callonExtraListElement584() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements438() + return p.cur.onExtraListElement584(stack["separator"]) } -func (c *current) onListElements448() (interface{}, error) { +func (c *current) onExtraListElement602() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElements448() (interface{}, error) { +func (p *parser) callonExtraListElement602() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements448() + return p.cur.onExtraListElement602() } -func (c *current) onListElements451() (interface{}, error) { +func (c *current) onExtraListElement605() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements451() (interface{}, error) { +func (p *parser) callonExtraListElement605() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements451() + return p.cur.onExtraListElement605() } -func (c *current) onListElements348(delimiter interface{}) (interface{}, error) { - return delimiter, nil - +func (c *current) onExtraListElement598() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonListElements348() (interface{}, error) { +func (p *parser) callonExtraListElement598() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements348(stack["delimiter"]) + return p.cur.onExtraListElement598() } -func (c *current) onListElements459() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil +func (c *current) onExtraListElement616() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElements459() (interface{}, error) { +func (p *parser) callonExtraListElement616() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements459() + return p.cur.onExtraListElement616() } -func (c *current) onListElements463() (interface{}, error) { +func (c *current) onExtraListElement619() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements463() (interface{}, error) { +func (p *parser) callonExtraListElement619() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements463() + return p.cur.onExtraListElement619() } -func (c *current) onListElements213(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) - +func (c *current) onExtraListElement612() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) } -func (p *parser) callonListElements213() (interface{}, error) { +func (p *parser) callonExtraListElement612() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements213(stack["content"]) + return p.cur.onExtraListElement612() } -func (c *current) onListElements181(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) +func (c *current) onExtraListElement630() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElements181() (interface{}, error) { +func (p *parser) callonExtraListElement630() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements181(stack["content"]) + return p.cur.onExtraListElement630() } -func (c *current) onListElements472() (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement633() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil +} + +func (p *parser) callonExtraListElement633() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement633() +} +func (c *current) onExtraListElement626() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonListElements472() (interface{}, error) { +func (p *parser) callonExtraListElement626() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements472() + return p.cur.onExtraListElement626() } -func (c *current) onListElements476() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onExtraListElement644() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElements476() (interface{}, error) { +func (p *parser) callonExtraListElement644() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements476() + return p.cur.onExtraListElement644() } -func (c *current) onListElements480() (interface{}, error) { +func (c *current) onExtraListElement647() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElements480() (interface{}, error) { +func (p *parser) callonExtraListElement647() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements480() + return p.cur.onExtraListElement647() } -func (c *current) onListElements470(content interface{}) (interface{}, error) { - return types.NewParagraph(content) - +func (c *current) onExtraListElement640() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonListElements470() (interface{}, error) { +func (p *parser) callonExtraListElement640() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements470(stack["content"]) + return p.cur.onExtraListElement640() } -func (c *current) onListElements147(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) +func (c *current) onExtraListElement658() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElements147() (interface{}, error) { +func (p *parser) callonExtraListElement658() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements147(stack["term"], stack["separator"], stack["description"]) + return p.cur.onExtraListElement658() } -func (c *current) onListElements1(firstElement, extraElements interface{}) (interface{}, error) { - return types.NewListElements(append([]interface{}{firstElement}, extraElements.([]interface{})...)) - +func (c *current) onExtraListElement661() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElements1() (interface{}, error) { +func (p *parser) callonExtraListElement661() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElements1(stack["firstElement"], stack["extraElements"]) + return p.cur.onExtraListElement661() } -func (c *current) onExtraListElements1(elements interface{}) (interface{}, error) { - return types.Flatten(elements.([]interface{})), nil +func (c *current) onExtraListElement654() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonExtraListElements1() (interface{}, error) { +func (p *parser) callonExtraListElement654() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElements1(stack["elements"]) + return p.cur.onExtraListElement654() } -func (c *current) onExtraListElement17() (interface{}, error) { +func (c *current) onExtraListElement672() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement17() (interface{}, error) { +func (p *parser) callonExtraListElement672() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement17() + return p.cur.onExtraListElement672() } -func (c *current) onExtraListElement20() (interface{}, error) { +func (c *current) onExtraListElement675() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement20() (interface{}, error) { +func (p *parser) callonExtraListElement675() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement20() + return p.cur.onExtraListElement675() } -func (c *current) onExtraListElement11() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onExtraListElement668() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonExtraListElement11() (interface{}, error) { +func (p *parser) callonExtraListElement668() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement11() + return p.cur.onExtraListElement668() } -func (c *current) onExtraListElement34() (interface{}, error) { +func (c *current) onExtraListElement686() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement34() (interface{}, error) { +func (p *parser) callonExtraListElement686() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement34() + return p.cur.onExtraListElement686() } -func (c *current) onExtraListElement41() (interface{}, error) { +func (c *current) onExtraListElement689() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} - // `.` is 1, etc. - return (len(c.text)), nil +func (p *parser) callonExtraListElement689() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement689() +} +func (c *current) onExtraListElement682() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonExtraListElement41() (interface{}, error) { +func (p *parser) callonExtraListElement682() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement41() + return p.cur.onExtraListElement682() } -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 (c *current) onExtraListElement700() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement44() (bool, error) { +func (p *parser) callonExtraListElement700() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement44(stack["depth"]) + return p.cur.onExtraListElement700() } -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 (c *current) onExtraListElement703() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement38() (interface{}, error) { +func (p *parser) callonExtraListElement703() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement38(stack["depth"]) + return p.cur.onExtraListElement703() } -func (c *current) onExtraListElement45() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) - +func (c *current) onExtraListElement696() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonExtraListElement45() (interface{}, error) { +func (p *parser) callonExtraListElement696() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement45() + return p.cur.onExtraListElement696() } -func (c *current) onExtraListElement50() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) +func (c *current) onExtraListElement592(delimiter interface{}) (interface{}, error) { + return delimiter, nil } -func (p *parser) callonExtraListElement50() (interface{}, error) { +func (p *parser) callonExtraListElement592() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement50() + return p.cur.onExtraListElement592(stack["delimiter"]) } -func (c *current) onExtraListElement54() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) +func (c *current) onExtraListElement711() (interface{}, error) { + return strings.TrimSpace(string(c.text)), nil } -func (p *parser) callonExtraListElement54() (interface{}, error) { +func (p *parser) callonExtraListElement711() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement54() + return p.cur.onExtraListElement711() } -func (c *current) onExtraListElement58() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - +func (c *current) onExtraListElement715() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement58() (interface{}, error) { +func (p *parser) callonExtraListElement715() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement58() + return p.cur.onExtraListElement715() } -func (c *current) onExtraListElement63() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) +func (c *current) onExtraListElement457(content interface{}) (interface{}, error) { + // do not retain the EOL chars + return types.NewRawLine(content.(string)) } -func (p *parser) callonExtraListElement63() (interface{}, error) { +func (p *parser) callonExtraListElement457() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement63() + return p.cur.onExtraListElement457(stack["content"]) } -func (c *current) onExtraListElement68(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onExtraListElement425(content interface{}) (interface{}, error) { + if content == nil { + return nil, nil + } + return types.NewParagraph(content) } -func (p *parser) callonExtraListElement68() (interface{}, error) { +func (p *parser) callonExtraListElement425() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement68(stack["prefix"]) + return p.cur.onExtraListElement425(stack["content"]) } -func (c *current) onExtraListElement31(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onExtraListElement724() (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + } -func (p *parser) callonExtraListElement31() (interface{}, error) { +func (p *parser) callonExtraListElement724() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement31(stack["prefix"]) + return p.cur.onExtraListElement724() } -func (c *current) onExtraListElement75() (interface{}, error) { +func (c *current) onExtraListElement728() (interface{}, error) { return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement75() (interface{}, error) { +func (p *parser) callonExtraListElement728() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement75() + return p.cur.onExtraListElement728() } -func (c *current) onExtraListElement79() (interface{}, error) { +func (c *current) onExtraListElement732() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement79() (interface{}, error) { +func (p *parser) callonExtraListElement732() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement79() + return p.cur.onExtraListElement732() } -func (c *current) onExtraListElement72(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) +func (c *current) onExtraListElement722(content interface{}) (interface{}, error) { + return types.NewParagraph(content) } -func (p *parser) callonExtraListElement72() (interface{}, error) { +func (p *parser) callonExtraListElement722() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement72(stack["rawline"]) + return p.cur.onExtraListElement722(stack["content"]) } -func (c *current) onExtraListElement28(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) +func (c *current) onExtraListElement391(term, separator, description interface{}) (interface{}, error) { + return types.NewLabeledListElement(len(separator.(string))-1, term, description) } -func (p *parser) callonExtraListElement28() (interface{}, error) { +func (p *parser) callonExtraListElement391() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement28(stack["prefix"], stack["content"]) + return p.cur.onExtraListElement391(stack["term"], stack["separator"], stack["description"]) } -func (c *current) onExtraListElement8(element interface{}) (interface{}, error) { +func (c *current) onExtraListElement371(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonExtraListElement8() (interface{}, error) { +func (p *parser) callonExtraListElement371() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement8(stack["element"]) + return p.cur.onExtraListElement371(stack["element"]) } -func (c *current) onExtraListElement98() (interface{}, error) { +func (c *current) onExtraListElement755() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement98() (interface{}, error) { +func (p *parser) callonExtraListElement755() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement98() + return p.cur.onExtraListElement755() } -func (c *current) onExtraListElement105() (interface{}, error) { +func (c *current) onExtraListElement758(separator interface{}) (bool, error) { - // `.` is 1, etc. - return (len(c.text)), nil + // use a predicate to make sure that separator is `::`, `:::` or `::::` + return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil } -func (p *parser) callonExtraListElement105() (interface{}, error) { +func (p *parser) callonExtraListElement758() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement105() + return p.cur.onExtraListElement758(stack["separator"]) } -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 (c *current) onExtraListElement752(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonExtraListElement108() (bool, error) { +func (p *parser) callonExtraListElement752() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement108(stack["depth"]) + return p.cur.onExtraListElement752(stack["separator"]) } -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 (c *current) onExtraListElement761() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement102() (interface{}, error) { +func (p *parser) callonExtraListElement761() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement102(stack["depth"]) + return p.cur.onExtraListElement761() } -func (c *current) onExtraListElement109() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) +func (c *current) onExtraListElement748() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement109() (interface{}, error) { +func (p *parser) callonExtraListElement748() (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) - + return p.cur.onExtraListElement748() } -func (p *parser) callonExtraListElement114() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement114() -} +func (c *current) onExtraListElement773() (interface{}, error) { -func (c *current) onExtraListElement118() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) + return string(c.text), nil } -func (p *parser) callonExtraListElement118() (interface{}, error) { +func (p *parser) callonExtraListElement773() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement118() + return p.cur.onExtraListElement773() } -func (c *current) onExtraListElement122() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) +func (c *current) onExtraListElement776(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) callonExtraListElement122() (interface{}, error) { +func (p *parser) callonExtraListElement776() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement122() + return p.cur.onExtraListElement776(stack["separator"]) } -func (c *current) onExtraListElement127() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) +func (c *current) onExtraListElement770(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonExtraListElement127() (interface{}, error) { +func (p *parser) callonExtraListElement770() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement127() + return p.cur.onExtraListElement770(stack["separator"]) } -func (c *current) onExtraListElement132(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement782() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement132() (interface{}, error) { +func (p *parser) callonExtraListElement782() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement132(stack["prefix"]) + return p.cur.onExtraListElement782() } -func (c *current) onExtraListElement95(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onExtraListElement785() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement95() (interface{}, error) { +func (p *parser) callonExtraListElement785() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement95(stack["prefix"]) + return p.cur.onExtraListElement785() } -func (c *current) onExtraListElement139() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onExtraListElement799() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement139() (interface{}, error) { +func (p *parser) callonExtraListElement799() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement139() + return p.cur.onExtraListElement799() } -func (c *current) onExtraListElement143() (interface{}, error) { +func (c *current) onExtraListElement802() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement143() (interface{}, error) { +func (p *parser) callonExtraListElement802() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement143() + return p.cur.onExtraListElement802() } -func (c *current) onExtraListElement136(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) +func (c *current) onExtraListElement793() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonExtraListElement136() (interface{}, error) { +func (p *parser) callonExtraListElement793() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement136(stack["rawline"]) + return p.cur.onExtraListElement793() } -func (c *current) onExtraListElement92(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) +func (c *current) onExtraListElement820() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement92() (interface{}, error) { +func (p *parser) callonExtraListElement820() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement92(stack["prefix"], stack["content"]) + return p.cur.onExtraListElement820() } -func (c *current) onExtraListElement86(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil - +func (c *current) onExtraListElement823() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement86() (interface{}, error) { +func (p *parser) callonExtraListElement823() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement86(stack["attributes"], stack["element"]) + return p.cur.onExtraListElement823() } -func (c *current) onExtraListElement159() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement814() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonExtraListElement159() (interface{}, error) { +func (p *parser) callonExtraListElement814() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement159() + return p.cur.onExtraListElement814() } -func (c *current) onExtraListElement162() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement834() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement162() (interface{}, error) { +func (p *parser) callonExtraListElement834() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement162() + return p.cur.onExtraListElement834() } -func (c *current) onExtraListElement153() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onExtraListElement836() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement153() (interface{}, error) { +func (p *parser) callonExtraListElement836() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement153() + return p.cur.onExtraListElement836() } -func (c *current) onExtraListElement176() (interface{}, error) { +func (c *current) onExtraListElement845() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement176() (interface{}, error) { +func (p *parser) callonExtraListElement845() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement176() + return p.cur.onExtraListElement845() } -func (c *current) onExtraListElement183() (interface{}, error) { +func (c *current) onExtraListElement852() (interface{}, error) { - // `*` is 1, etc. + // `.` is 1, etc. return (len(c.text)), nil } -func (p *parser) callonExtraListElement183() (interface{}, error) { +func (p *parser) callonExtraListElement852() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement183() + return p.cur.onExtraListElement852() } -func (c *current) onExtraListElement186(depth interface{}) (bool, error) { +func (c *current) onExtraListElement855(depth interface{}) (bool, error) { - // use a predicate to make sure that only `*` to `*****` are allowed + // use a predicate to make sure that only `.` to `.....` are allowed return depth.(int) <= 5, nil } -func (p *parser) callonExtraListElement186() (bool, error) { +func (p *parser) callonExtraListElement855() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement186(stack["depth"]) + return p.cur.onExtraListElement855(stack["depth"]) } -func (c *current) onExtraListElement180(depth interface{}) (interface{}, error) { +func (c *current) onExtraListElement849(depth interface{}) (interface{}, error) { switch depth.(int) { case 1: - return types.NewUnorderedListElementPrefix(types.OneAsterisk) + return types.NewOrderedListElementPrefix(types.Arabic) case 2: - return types.NewUnorderedListElementPrefix(types.TwoAsterisks) + return types.NewOrderedListElementPrefix(types.LowerAlpha) case 3: - return types.NewUnorderedListElementPrefix(types.ThreeAsterisks) + return types.NewOrderedListElementPrefix(types.LowerRoman) case 4: - return types.NewUnorderedListElementPrefix(types.FourAsterisks) + return types.NewOrderedListElementPrefix(types.UpperAlpha) default: - return types.NewUnorderedListElementPrefix(types.FiveAsterisks) + return types.NewOrderedListElementPrefix(types.UpperRoman) } } -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) { +func (p *parser) callonExtraListElement849() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement205() + return p.cur.onExtraListElement849(stack["depth"]) } -func (c *current) onExtraListElement207(style interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onExtraListElement856() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonExtraListElement207() (interface{}, error) { +func (p *parser) callonExtraListElement856() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement207(stack["style"]) + return p.cur.onExtraListElement856() } -func (c *current) onExtraListElement195(style interface{}) (interface{}, error) { - return style, nil +func (c *current) onExtraListElement861() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonExtraListElement195() (interface{}, error) { +func (p *parser) callonExtraListElement861() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement195(stack["style"]) + return p.cur.onExtraListElement861() } -func (c *current) onExtraListElement214() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onExtraListElement865() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonExtraListElement214() (interface{}, error) { +func (p *parser) callonExtraListElement865() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement214() + return p.cur.onExtraListElement865() } -func (c *current) onExtraListElement218() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement869() (interface{}, error) { + // numbering style: "i)", etc. + return types.NewOrderedListElementPrefix(types.LowerRoman) + } -func (p *parser) callonExtraListElement218() (interface{}, error) { +func (p *parser) callonExtraListElement869() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement218() + return p.cur.onExtraListElement869() } -func (c *current) onExtraListElement211(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) +func (c *current) onExtraListElement874() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonExtraListElement211() (interface{}, error) { +func (p *parser) callonExtraListElement874() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement211(stack["rawline"]) + return p.cur.onExtraListElement874() } -func (c *current) onExtraListElement170(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) +func (c *current) onExtraListElement879(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExtraListElement170() (interface{}, error) { +func (p *parser) callonExtraListElement879() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement170(stack["prefix"], stack["checkstyle"], stack["content"]) + return p.cur.onExtraListElement879(stack["prefix"]) } -func (c *current) onExtraListElement150(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onExtraListElement842(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonExtraListElement150() (interface{}, error) { +func (p *parser) callonExtraListElement842() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement150(stack["element"]) + return p.cur.onExtraListElement842(stack["prefix"]) } -func (c *current) onExtraListElement237() (interface{}, error) { +func (c *current) onExtraListElement886() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement237() (interface{}, error) { +func (p *parser) callonExtraListElement886() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement237() + return p.cur.onExtraListElement886() } -func (c *current) onExtraListElement244() (interface{}, error) { +func (c *current) onExtraListElement893() (interface{}, error) { // `*` is 1, etc. return (len(c.text)), nil } -func (p *parser) callonExtraListElement244() (interface{}, error) { +func (p *parser) callonExtraListElement893() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement244() + return p.cur.onExtraListElement893() } -func (c *current) onExtraListElement247(depth interface{}) (bool, error) { +func (c *current) onExtraListElement896(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) { +func (p *parser) callonExtraListElement896() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement247(stack["depth"]) + return p.cur.onExtraListElement896(stack["depth"]) } -func (c *current) onExtraListElement241(depth interface{}) (interface{}, error) { +func (c *current) onExtraListElement890(depth interface{}) (interface{}, error) { switch depth.(int) { case 1: return types.NewUnorderedListElementPrefix(types.OneAsterisk) @@ -80727,637 +88004,680 @@ func (c *current) onExtraListElement241(depth interface{}) (interface{}, error) } -func (p *parser) callonExtraListElement241() (interface{}, error) { +func (p *parser) callonExtraListElement890() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement241(stack["depth"]) + return p.cur.onExtraListElement890(stack["depth"]) } -func (c *current) onExtraListElement249() (interface{}, error) { +func (c *current) onExtraListElement898() (interface{}, error) { return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonExtraListElement249() (interface{}, error) { +func (p *parser) callonExtraListElement898() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement249() + return p.cur.onExtraListElement898() } -func (c *current) onExtraListElement251(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement900(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement251() (interface{}, error) { +func (p *parser) callonExtraListElement900() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement251(stack["prefix"]) + return p.cur.onExtraListElement900(stack["prefix"]) } -func (c *current) onExtraListElement234(prefix interface{}) (interface{}, error) { +func (c *current) onExtraListElement883(prefix interface{}) (interface{}, error) { return prefix, nil } -func (p *parser) callonExtraListElement234() (interface{}, error) { +func (p *parser) callonExtraListElement883() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement234(stack["prefix"]) + return p.cur.onExtraListElement883(stack["prefix"]) } -func (c *current) onExtraListElement262() (interface{}, error) { - return types.Unchecked, nil +func (c *current) onExtraListElement908() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonExtraListElement262() (interface{}, error) { +func (p *parser) callonExtraListElement908() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement262() + return p.cur.onExtraListElement908() } -func (c *current) onExtraListElement264() (interface{}, error) { - return types.Checked, nil +func (c *current) onExtraListElement912(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil + } -func (p *parser) callonExtraListElement264() (interface{}, error) { +func (p *parser) callonExtraListElement912() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement264() + return p.cur.onExtraListElement912(stack["ref"]) } -func (c *current) onExtraListElement266() (interface{}, error) { - return types.Checked, nil +func (c *current) onExtraListElement904(ref interface{}) (interface{}, error) { + return ref, nil + } -func (p *parser) callonExtraListElement266() (interface{}, error) { +func (p *parser) callonExtraListElement904() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement266() + return p.cur.onExtraListElement904(stack["ref"]) } -func (c *current) onExtraListElement268(style interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement924() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement268() (interface{}, error) { +func (p *parser) callonExtraListElement924() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement268(stack["style"]) + return p.cur.onExtraListElement924() } -func (c *current) onExtraListElement256(style interface{}) (interface{}, error) { - return style, nil +func (c *current) onExtraListElement927(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) callonExtraListElement256() (interface{}, error) { +func (p *parser) callonExtraListElement927() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement256(stack["style"]) + return p.cur.onExtraListElement927(stack["separator"]) } -func (c *current) onExtraListElement275() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onExtraListElement921(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonExtraListElement275() (interface{}, error) { +func (p *parser) callonExtraListElement921() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement275() + return p.cur.onExtraListElement921(stack["separator"]) } -func (c *current) onExtraListElement279() (interface{}, error) { +func (c *current) onExtraListElement930() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement279() (interface{}, error) { +func (p *parser) callonExtraListElement930() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement279() + return p.cur.onExtraListElement930() } -func (c *current) onExtraListElement272(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) +func (c *current) onExtraListElement917() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement272() (interface{}, error) { +func (p *parser) callonExtraListElement917() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement272(stack["rawline"]) + return p.cur.onExtraListElement917() } -func (c *current) onExtraListElement231(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) +func (c *current) onExtraListElement941() (interface{}, error) { + + return string(c.text), nil } -func (p *parser) callonExtraListElement231() (interface{}, error) { +func (p *parser) callonExtraListElement941() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement231(stack["prefix"], stack["checkstyle"], stack["content"]) + return p.cur.onExtraListElement941() } -func (c *current) onExtraListElement225(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil +func (c *current) onExtraListElement944(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) callonExtraListElement225() (interface{}, error) { +func (p *parser) callonExtraListElement944() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement225(stack["attributes"], stack["element"]) + return p.cur.onExtraListElement944(stack["separator"]) } -func (c *current) onExtraListElement295() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement938(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonExtraListElement295() (interface{}, error) { +func (p *parser) callonExtraListElement938() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement295() + return p.cur.onExtraListElement938(stack["separator"]) } -func (c *current) onExtraListElement298() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement956() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement298() (interface{}, error) { +func (p *parser) callonExtraListElement956() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement298() + return p.cur.onExtraListElement956() } -func (c *current) onExtraListElement289() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onExtraListElement959() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement289() (interface{}, error) { +func (p *parser) callonExtraListElement959() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement289() + return p.cur.onExtraListElement959() } -func (c *current) onExtraListElement313() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onExtraListElement952() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonExtraListElement313() (interface{}, error) { +func (p *parser) callonExtraListElement952() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement313() + return p.cur.onExtraListElement952() } -func (c *current) onExtraListElement317(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement970() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement317() (interface{}, error) { +func (p *parser) callonExtraListElement970() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement317(stack["ref"]) + return p.cur.onExtraListElement970() } -func (c *current) onExtraListElement309(ref interface{}) (interface{}, error) { - return ref, nil +func (c *current) onExtraListElement973() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} +func (p *parser) callonExtraListElement973() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement973() } -func (p *parser) callonExtraListElement309() (interface{}, error) { +func (c *current) onExtraListElement966() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) +} + +func (p *parser) callonExtraListElement966() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement309(stack["ref"]) + return p.cur.onExtraListElement966() } -func (c *current) onExtraListElement324() (interface{}, error) { +func (c *current) onExtraListElement984() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement324() (interface{}, error) { +func (p *parser) callonExtraListElement984() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement324() + return p.cur.onExtraListElement984() } -func (c *current) onExtraListElement328() (interface{}, error) { +func (c *current) onExtraListElement987() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement328() (interface{}, error) { +func (p *parser) callonExtraListElement987() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement328() + return p.cur.onExtraListElement987() } -func (c *current) onExtraListElement321(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) - +func (c *current) onExtraListElement980() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonExtraListElement321() (interface{}, error) { +func (p *parser) callonExtraListElement980() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement321(stack["rawline"]) + return p.cur.onExtraListElement980() } -func (c *current) onExtraListElement306(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) +func (c *current) onExtraListElement998() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement306() (interface{}, error) { +func (p *parser) callonExtraListElement998() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement306(stack["ref"], stack["description"]) + return p.cur.onExtraListElement998() } -func (c *current) onExtraListElement286(element interface{}) (interface{}, error) { - return element, nil - +func (c *current) onExtraListElement1001() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement286() (interface{}, error) { +func (p *parser) callonExtraListElement1001() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement286(stack["element"]) + return p.cur.onExtraListElement1001() } -func (c *current) onExtraListElement348() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onExtraListElement994() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonExtraListElement348() (interface{}, error) { +func (p *parser) callonExtraListElement994() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement348() + return p.cur.onExtraListElement994() } -func (c *current) onExtraListElement352(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement1012() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement352() (interface{}, error) { +func (p *parser) callonExtraListElement1012() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement352(stack["ref"]) + return p.cur.onExtraListElement1012() } -func (c *current) onExtraListElement344(ref interface{}) (interface{}, error) { - return ref, nil +func (c *current) onExtraListElement1015() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonExtraListElement1015() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1015() +} +func (c *current) onExtraListElement1008() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonExtraListElement344() (interface{}, error) { +func (p *parser) callonExtraListElement1008() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement344(stack["ref"]) + return p.cur.onExtraListElement1008() } -func (c *current) onExtraListElement359() (interface{}, error) { +func (c *current) onExtraListElement1026() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement359() (interface{}, error) { +func (p *parser) callonExtraListElement1026() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement359() + return p.cur.onExtraListElement1026() } -func (c *current) onExtraListElement363() (interface{}, error) { +func (c *current) onExtraListElement1029() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement363() (interface{}, error) { +func (p *parser) callonExtraListElement1029() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement363() + return p.cur.onExtraListElement1029() } -func (c *current) onExtraListElement356(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) - +func (c *current) onExtraListElement1022() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonExtraListElement356() (interface{}, error) { +func (p *parser) callonExtraListElement1022() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement356(stack["rawline"]) + return p.cur.onExtraListElement1022() } -func (c *current) onExtraListElement341(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) +func (c *current) onExtraListElement1040() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement341() (interface{}, error) { +func (p *parser) callonExtraListElement1040() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement341(stack["ref"], stack["description"]) + return p.cur.onExtraListElement1040() } -func (c *current) onExtraListElement335(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil +func (c *current) onExtraListElement1043() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonExtraListElement1043() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1043() +} +func (c *current) onExtraListElement1036() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonExtraListElement335() (interface{}, error) { +func (p *parser) callonExtraListElement1036() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement335(stack["attributes"], stack["element"]) + return p.cur.onExtraListElement1036() } -func (c *current) onExtraListElement380() (interface{}, error) { +func (c *current) onExtraListElement1054() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement380() (interface{}, error) { +func (p *parser) callonExtraListElement1054() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement380() + return p.cur.onExtraListElement1054() } -func (c *current) onExtraListElement383() (interface{}, error) { +func (c *current) onExtraListElement1057() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement383() (interface{}, error) { +func (p *parser) callonExtraListElement1057() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement383() + return p.cur.onExtraListElement1057() } -func (c *current) onExtraListElement374() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onExtraListElement1050() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonExtraListElement374() (interface{}, error) { +func (p *parser) callonExtraListElement1050() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement374() + return p.cur.onExtraListElement1050() } -func (c *current) onExtraListElement401() (interface{}, error) { - - return string(c.text), nil +func (c *current) onExtraListElement946(delimiter interface{}) (interface{}, error) { + return delimiter, nil } -func (p *parser) callonExtraListElement401() (interface{}, error) { +func (p *parser) callonExtraListElement946() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement401() + return p.cur.onExtraListElement946(stack["delimiter"]) } -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 (c *current) onExtraListElement1065() (interface{}, error) { + return strings.TrimSpace(string(c.text)), nil } -func (p *parser) callonExtraListElement404() (bool, error) { +func (p *parser) callonExtraListElement1065() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement404(stack["separator"]) + return p.cur.onExtraListElement1065() } -func (c *current) onExtraListElement398(separator interface{}) (interface{}, error) { - return separator, nil - +func (c *current) onExtraListElement1069() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement398() (interface{}, error) { +func (p *parser) callonExtraListElement1069() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement398(stack["separator"]) + return p.cur.onExtraListElement1069() } -func (c *current) onExtraListElement407() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement811(content interface{}) (interface{}, error) { + // do not retain the EOL chars + return types.NewRawLine(content.(string)) + } -func (p *parser) callonExtraListElement407() (interface{}, error) { +func (p *parser) callonExtraListElement811() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement407() + return p.cur.onExtraListElement811(stack["content"]) } -func (c *current) onExtraListElement394() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onExtraListElement779(content interface{}) (interface{}, error) { + if content == nil { + return nil, nil + } + return types.NewParagraph(content) } -func (p *parser) callonExtraListElement394() (interface{}, error) { +func (p *parser) callonExtraListElement779() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement394() + return p.cur.onExtraListElement779(stack["content"]) } -func (c *current) onExtraListElement419() (interface{}, error) { - +func (c *current) onExtraListElement1078() (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement419() (interface{}, error) { +func (p *parser) callonExtraListElement1078() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement419() + return p.cur.onExtraListElement1078() } -func (c *current) onExtraListElement422(separator interface{}) (bool, error) { +func (c *current) onExtraListElement1082() (interface{}, error) { + return types.NewRawLine(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) callonExtraListElement1082() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1082() } -func (p *parser) callonExtraListElement422() (bool, error) { +func (c *current) onExtraListElement1086() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} + +func (p *parser) callonExtraListElement1086() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement422(stack["separator"]) + return p.cur.onExtraListElement1086() } -func (c *current) onExtraListElement416(separator interface{}) (interface{}, error) { - return separator, nil +func (c *current) onExtraListElement1076(content interface{}) (interface{}, error) { + return types.NewParagraph(content) } -func (p *parser) callonExtraListElement416() (interface{}, error) { +func (p *parser) callonExtraListElement1076() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement416(stack["separator"]) + return p.cur.onExtraListElement1076(stack["content"]) } -func (c *current) onExtraListElement428() (interface{}, error) { - return string(c.text), nil +func (c *current) onExtraListElement745(term, separator, description interface{}) (interface{}, error) { + return types.NewLabeledListElement(len(separator.(string))-1, term, description) } -func (p *parser) callonExtraListElement428() (interface{}, error) { +func (p *parser) callonExtraListElement745() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement428() + return p.cur.onExtraListElement745(stack["term"], stack["separator"], stack["description"]) } -func (c *current) onExtraListElement431() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement739(attributes, element interface{}) (interface{}, error) { + return append(attributes.([]interface{}), element), nil + } -func (p *parser) callonExtraListElement431() (interface{}, error) { +func (p *parser) callonExtraListElement739() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement431() + return p.cur.onExtraListElement739(stack["attributes"], stack["element"]) } -func (c *current) onExtraListElement445() (interface{}, error) { +func (c *current) onExtraListElement1099() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement445() (interface{}, error) { +func (p *parser) callonExtraListElement1099() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement445() + return p.cur.onExtraListElement1099() } -func (c *current) onExtraListElement448() (interface{}, error) { +func (c *current) onExtraListElement1103() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement448() (interface{}, error) { +func (p *parser) callonExtraListElement1103() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement448() + return p.cur.onExtraListElement1103() } -func (c *current) onExtraListElement439() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onExtraListElement1093(content interface{}) (interface{}, error) { + return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonExtraListElement439() (interface{}, error) { +func (p *parser) callonExtraListElement1093() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement439() + return p.cur.onExtraListElement1093(stack["content"]) } -func (c *current) onExtraListElement466() (interface{}, error) { +func (c *current) onExtraListElement1121() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement466() (interface{}, error) { +func (p *parser) callonExtraListElement1121() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement466() + return p.cur.onExtraListElement1121() } -func (c *current) onExtraListElement469() (interface{}, error) { +func (c *current) onExtraListElement1124() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement469() (interface{}, error) { +func (p *parser) callonExtraListElement1124() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement469() + return p.cur.onExtraListElement1124() } -func (c *current) onExtraListElement460() (interface{}, error) { +func (c *current) onExtraListElement1115() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonExtraListElement460() (interface{}, error) { +func (p *parser) callonExtraListElement1115() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement460() + return p.cur.onExtraListElement1115() } -func (c *current) onExtraListElement480() (interface{}, error) { +func (c *current) onExtraListElement1135() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement480() (interface{}, error) { +func (p *parser) callonExtraListElement1135() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement480() + return p.cur.onExtraListElement1135() } -func (c *current) onExtraListElement482() (interface{}, error) { +func (c *current) onExtraListElement1137() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement482() (interface{}, error) { +func (p *parser) callonExtraListElement1137() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement482() + return p.cur.onExtraListElement1137() } -func (c *current) onExtraListElement491() (interface{}, error) { +func (c *current) onExtraListElement1146() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement491() (interface{}, error) { +func (p *parser) callonExtraListElement1146() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement491() + return p.cur.onExtraListElement1146() } -func (c *current) onExtraListElement498() (interface{}, error) { +func (c *current) onExtraListElement1153() (interface{}, error) { // `.` is 1, etc. return (len(c.text)), nil } -func (p *parser) callonExtraListElement498() (interface{}, error) { +func (p *parser) callonExtraListElement1153() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement498() + return p.cur.onExtraListElement1153() } -func (c *current) onExtraListElement501(depth interface{}) (bool, error) { +func (c *current) onExtraListElement1156(depth interface{}) (bool, error) { // use a predicate to make sure that only `.` to `.....` are allowed return depth.(int) <= 5, nil } -func (p *parser) callonExtraListElement501() (bool, error) { +func (p *parser) callonExtraListElement1156() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement501(stack["depth"]) + return p.cur.onExtraListElement1156(stack["depth"]) } -func (c *current) onExtraListElement495(depth interface{}) (interface{}, error) { +func (c *current) onExtraListElement1150(depth interface{}) (interface{}, error) { switch depth.(int) { case 1: return types.NewOrderedListElementPrefix(types.Arabic) @@ -81373,132 +88693,132 @@ func (c *current) onExtraListElement495(depth interface{}) (interface{}, error) } -func (p *parser) callonExtraListElement495() (interface{}, error) { +func (p *parser) callonExtraListElement1150() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement495(stack["depth"]) + return p.cur.onExtraListElement1150(stack["depth"]) } -func (c *current) onExtraListElement502() (interface{}, error) { +func (c *current) onExtraListElement1157() (interface{}, error) { // numbering style: "1.", etc. return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonExtraListElement502() (interface{}, error) { +func (p *parser) callonExtraListElement1157() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement502() + return p.cur.onExtraListElement1157() } -func (c *current) onExtraListElement507() (interface{}, error) { +func (c *current) onExtraListElement1162() (interface{}, error) { // numbering style: "a.", etc. return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonExtraListElement507() (interface{}, error) { +func (p *parser) callonExtraListElement1162() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement507() + return p.cur.onExtraListElement1162() } -func (c *current) onExtraListElement511() (interface{}, error) { +func (c *current) onExtraListElement1166() (interface{}, error) { // numbering style: "A.", etc. return types.NewOrderedListElementPrefix(types.UpperAlpha) } -func (p *parser) callonExtraListElement511() (interface{}, error) { +func (p *parser) callonExtraListElement1166() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement511() + return p.cur.onExtraListElement1166() } -func (c *current) onExtraListElement515() (interface{}, error) { +func (c *current) onExtraListElement1170() (interface{}, error) { // numbering style: "i)", etc. return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonExtraListElement515() (interface{}, error) { +func (p *parser) callonExtraListElement1170() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement515() + return p.cur.onExtraListElement1170() } -func (c *current) onExtraListElement520() (interface{}, error) { +func (c *current) onExtraListElement1175() (interface{}, error) { // numbering style: "I)", etc. return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonExtraListElement520() (interface{}, error) { +func (p *parser) callonExtraListElement1175() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement520() + return p.cur.onExtraListElement1175() } -func (c *current) onExtraListElement525(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement1180(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement525() (interface{}, error) { +func (p *parser) callonExtraListElement1180() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement525(stack["prefix"]) + return p.cur.onExtraListElement1180(stack["prefix"]) } -func (c *current) onExtraListElement488(prefix interface{}) (interface{}, error) { +func (c *current) onExtraListElement1143(prefix interface{}) (interface{}, error) { return prefix, nil } -func (p *parser) callonExtraListElement488() (interface{}, error) { +func (p *parser) callonExtraListElement1143() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement488(stack["prefix"]) + return p.cur.onExtraListElement1143(stack["prefix"]) } -func (c *current) onExtraListElement532() (interface{}, error) { +func (c *current) onExtraListElement1187() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement532() (interface{}, error) { +func (p *parser) callonExtraListElement1187() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement532() + return p.cur.onExtraListElement1187() } -func (c *current) onExtraListElement539() (interface{}, error) { +func (c *current) onExtraListElement1194() (interface{}, error) { // `*` is 1, etc. return (len(c.text)), nil } -func (p *parser) callonExtraListElement539() (interface{}, error) { +func (p *parser) callonExtraListElement1194() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement539() + return p.cur.onExtraListElement1194() } -func (c *current) onExtraListElement542(depth interface{}) (bool, error) { +func (c *current) onExtraListElement1197(depth interface{}) (bool, error) { // use a predicate to make sure that only `*` to `*****` are allowed return depth.(int) <= 5, nil } -func (p *parser) callonExtraListElement542() (bool, error) { +func (p *parser) callonExtraListElement1197() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement542(stack["depth"]) + return p.cur.onExtraListElement1197(stack["depth"]) } -func (c *current) onExtraListElement536(depth interface{}) (interface{}, error) { +func (c *current) onExtraListElement1191(depth interface{}) (interface{}, error) { switch depth.(int) { case 1: return types.NewUnorderedListElementPrefix(types.OneAsterisk) @@ -81514,4778 +88834,4942 @@ func (c *current) onExtraListElement536(depth interface{}) (interface{}, error) } -func (p *parser) callonExtraListElement536() (interface{}, error) { +func (p *parser) callonExtraListElement1191() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement536(stack["depth"]) + return p.cur.onExtraListElement1191(stack["depth"]) } -func (c *current) onExtraListElement544() (interface{}, error) { +func (c *current) onExtraListElement1199() (interface{}, error) { return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonExtraListElement544() (interface{}, error) { +func (p *parser) callonExtraListElement1199() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement544() + return p.cur.onExtraListElement1199() } -func (c *current) onExtraListElement546(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement1201(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement546() (interface{}, error) { +func (p *parser) callonExtraListElement1201() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement546(stack["prefix"]) + return p.cur.onExtraListElement1201(stack["prefix"]) } -func (c *current) onExtraListElement529(prefix interface{}) (interface{}, error) { +func (c *current) onExtraListElement1184(prefix interface{}) (interface{}, error) { return prefix, nil } -func (p *parser) callonExtraListElement529() (interface{}, error) { +func (p *parser) callonExtraListElement1184() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement529(stack["prefix"]) + return p.cur.onExtraListElement1184(stack["prefix"]) } -func (c *current) onExtraListElement554() (interface{}, error) { +func (c *current) onExtraListElement1209() (interface{}, error) { return strconv.Atoi(string(c.text)) } -func (p *parser) callonExtraListElement554() (interface{}, error) { +func (p *parser) callonExtraListElement1209() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement554() + return p.cur.onExtraListElement1209() } -func (c *current) onExtraListElement558(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onExtraListElement1213(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement558() (interface{}, error) { +func (p *parser) callonExtraListElement1213() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement558(stack["ref"]) + return p.cur.onExtraListElement1213(stack["ref"]) } -func (c *current) onExtraListElement550(ref interface{}) (interface{}, error) { +func (c *current) onExtraListElement1205(ref interface{}) (interface{}, error) { return ref, nil } -func (p *parser) callonExtraListElement550() (interface{}, error) { +func (p *parser) callonExtraListElement1205() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement550(stack["ref"]) + return p.cur.onExtraListElement1205(stack["ref"]) } -func (c *current) onExtraListElement570() (interface{}, error) { +func (c *current) onExtraListElement1225() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement570() (interface{}, error) { +func (p *parser) callonExtraListElement1225() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement570() + return p.cur.onExtraListElement1225() } -func (c *current) onExtraListElement573(separator interface{}) (bool, error) { +func (c *current) onExtraListElement1228(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) callonExtraListElement573() (bool, error) { +func (p *parser) callonExtraListElement1228() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement573(stack["separator"]) + return p.cur.onExtraListElement1228(stack["separator"]) } -func (c *current) onExtraListElement567(separator interface{}) (interface{}, error) { +func (c *current) onExtraListElement1222(separator interface{}) (interface{}, error) { return separator, nil } -func (p *parser) callonExtraListElement567() (interface{}, error) { +func (p *parser) callonExtraListElement1222() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement567(stack["separator"]) + return p.cur.onExtraListElement1222(stack["separator"]) } -func (c *current) onExtraListElement576() (interface{}, error) { +func (c *current) onExtraListElement1231() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement576() (interface{}, error) { +func (p *parser) callonExtraListElement1231() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement576() + return p.cur.onExtraListElement1231() } -func (c *current) onExtraListElement563() (interface{}, error) { +func (c *current) onExtraListElement1218() (interface{}, error) { return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement563() (interface{}, error) { +func (p *parser) callonExtraListElement1218() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement563() + return p.cur.onExtraListElement1218() } -func (c *current) onExtraListElement587() (interface{}, error) { +func (c *current) onExtraListElement1242() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement587() (interface{}, error) { +func (p *parser) callonExtraListElement1242() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement587() + return p.cur.onExtraListElement1242() } -func (c *current) onExtraListElement590(separator interface{}) (bool, error) { +func (c *current) onExtraListElement1245(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) callonExtraListElement590() (bool, error) { +func (p *parser) callonExtraListElement1245() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement590(stack["separator"]) + return p.cur.onExtraListElement1245(stack["separator"]) } -func (c *current) onExtraListElement584(separator interface{}) (interface{}, error) { +func (c *current) onExtraListElement1239(separator interface{}) (interface{}, error) { return separator, nil } -func (p *parser) callonExtraListElement584() (interface{}, error) { +func (p *parser) callonExtraListElement1239() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement584(stack["separator"]) + return p.cur.onExtraListElement1239(stack["separator"]) } -func (c *current) onExtraListElement601() (interface{}, error) { +func (c *current) onExtraListElement1257() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement601() (interface{}, error) { +func (p *parser) callonExtraListElement1257() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement601() + return p.cur.onExtraListElement1257() } -func (c *current) onExtraListElement604() (interface{}, error) { +func (c *current) onExtraListElement1260() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement604() (interface{}, error) { +func (p *parser) callonExtraListElement1260() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement604() + return p.cur.onExtraListElement1260() } -func (c *current) onExtraListElement614() (interface{}, error) { +func (c *current) onExtraListElement1253() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} + +func (p *parser) callonExtraListElement1253() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1253() +} + +func (c *current) onExtraListElement1271() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement614() (interface{}, error) { +func (p *parser) callonExtraListElement1271() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement614() + return p.cur.onExtraListElement1271() } -func (c *current) onExtraListElement617() (interface{}, error) { +func (c *current) onExtraListElement1274() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement617() (interface{}, error) { +func (p *parser) callonExtraListElement1274() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1274() +} + +func (c *current) onExtraListElement1267() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) +} + +func (p *parser) callonExtraListElement1267() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement617() + return p.cur.onExtraListElement1267() } -func (c *current) onExtraListElement627() (interface{}, error) { +func (c *current) onExtraListElement1285() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement627() (interface{}, error) { +func (p *parser) callonExtraListElement1285() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement627() + return p.cur.onExtraListElement1285() } -func (c *current) onExtraListElement630() (interface{}, error) { +func (c *current) onExtraListElement1288() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement630() (interface{}, error) { +func (p *parser) callonExtraListElement1288() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement630() + return p.cur.onExtraListElement1288() } -func (c *current) onExtraListElement640() (interface{}, error) { +func (c *current) onExtraListElement1281() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) +} + +func (p *parser) callonExtraListElement1281() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1281() +} + +func (c *current) onExtraListElement1299() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonExtraListElement1299() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1299() +} + +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) onExtraListElement1295() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) +} + +func (p *parser) callonExtraListElement1295() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1295() +} + +func (c *current) onExtraListElement1313() (interface{}, error) { + return string(c.text), nil + +} + +func (p *parser) callonExtraListElement1313() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1313() +} + +func (c *current) onExtraListElement1316() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil +} + +func (p *parser) callonExtraListElement1316() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onExtraListElement1316() +} +func (c *current) onExtraListElement1309() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonExtraListElement640() (interface{}, error) { +func (p *parser) callonExtraListElement1309() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement640() + return p.cur.onExtraListElement1309() } -func (c *current) onExtraListElement643() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement1327() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement643() (interface{}, error) { +func (p *parser) callonExtraListElement1327() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement643() + return p.cur.onExtraListElement1327() } -func (c *current) onExtraListElement653() (interface{}, error) { +func (c *current) onExtraListElement1330() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonExtraListElement653() (interface{}, error) { +func (p *parser) callonExtraListElement1330() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement653() + return p.cur.onExtraListElement1330() } -func (c *current) onExtraListElement656() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement1323() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonExtraListElement656() (interface{}, error) { +func (p *parser) callonExtraListElement1323() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement656() + return p.cur.onExtraListElement1323() } -func (c *current) onExtraListElement666() (interface{}, error) { +func (c *current) onExtraListElement1341() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement666() (interface{}, error) { +func (p *parser) callonExtraListElement1341() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement666() + return p.cur.onExtraListElement1341() } -func (c *current) onExtraListElement669() (interface{}, error) { +func (c *current) onExtraListElement1344() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement669() (interface{}, error) { +func (p *parser) callonExtraListElement1344() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement669() + return p.cur.onExtraListElement1344() } -func (c *current) onExtraListElement679() (interface{}, error) { - return string(c.text), nil - +func (c *current) onExtraListElement1337() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonExtraListElement679() (interface{}, error) { +func (p *parser) callonExtraListElement1337() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement679() + return p.cur.onExtraListElement1337() } -func (c *current) onExtraListElement682() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onExtraListElement1355() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement682() (interface{}, error) { +func (p *parser) callonExtraListElement1355() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement682() + return p.cur.onExtraListElement1355() } -func (c *current) onExtraListElement692() (interface{}, error) { +func (c *current) onExtraListElement1358() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonExtraListElement692() (interface{}, error) { +func (p *parser) callonExtraListElement1358() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement692() + return p.cur.onExtraListElement1358() } -func (c *current) onExtraListElement695() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onExtraListElement1351() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonExtraListElement695() (interface{}, error) { +func (p *parser) callonExtraListElement1351() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement695() + return p.cur.onExtraListElement1351() } -func (c *current) onExtraListElement592(delimiter interface{}) (interface{}, error) { +func (c *current) onExtraListElement1247(delimiter interface{}) (interface{}, error) { return delimiter, nil } -func (p *parser) callonExtraListElement592() (interface{}, error) { +func (p *parser) callonExtraListElement1247() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement592(stack["delimiter"]) + return p.cur.onExtraListElement1247(stack["delimiter"]) } -func (c *current) onExtraListElement703() (interface{}, error) { +func (c *current) onExtraListElement1366() (interface{}, error) { return strings.TrimSpace(string(c.text)), nil } -func (p *parser) callonExtraListElement703() (interface{}, error) { +func (p *parser) callonExtraListElement1366() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement703() + return p.cur.onExtraListElement1366() } -func (c *current) onExtraListElement707() (interface{}, error) { +func (c *current) onExtraListElement1370() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement707() (interface{}, error) { +func (p *parser) callonExtraListElement1370() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement707() + return p.cur.onExtraListElement1370() } -func (c *current) onExtraListElement457(content interface{}) (interface{}, error) { +func (c *current) onExtraListElement1112(content interface{}) (interface{}, error) { // do not retain the EOL chars return types.NewRawLine(content.(string)) } -func (p *parser) callonExtraListElement457() (interface{}, error) { +func (p *parser) callonExtraListElement1112() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement457(stack["content"]) + return p.cur.onExtraListElement1112(stack["content"]) } -func (c *current) onExtraListElement425(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) +func (c *current) onExtraListElement1110(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonExtraListElement425() (interface{}, error) { +func (p *parser) callonExtraListElement1110() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement425(stack["content"]) + return p.cur.onExtraListElement1110(stack["element"]) } -func (c *current) onExtraListElement716() (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onExtraListElement1(element interface{}) (interface{}, error) { + return element, nil } -func (p *parser) callonExtraListElement716() (interface{}, error) { +func (p *parser) callonExtraListElement1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement716() + return p.cur.onExtraListElement1(stack["element"]) } -func (c *current) onExtraListElement720() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onListElementContinuation7() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement720() (interface{}, error) { +func (p *parser) callonListElementContinuation7() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement720() + return p.cur.onListElementContinuation7() } -func (c *current) onExtraListElement724() (interface{}, error) { +func (c *current) onListElementContinuation9() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement724() (interface{}, error) { +func (p *parser) callonListElementContinuation9() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement724() + return p.cur.onListElementContinuation9() } -func (c *current) onExtraListElement714(content interface{}) (interface{}, error) { - return types.NewParagraph(content) +func (c *current) onListElementContinuation16() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement714() (interface{}, error) { +func (p *parser) callonListElementContinuation16() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement714(stack["content"]) + return p.cur.onListElementContinuation16() } -func (c *current) onExtraListElement391(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) - +func (c *current) onListElementContinuation18(offset interface{}) (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement391() (interface{}, error) { +func (p *parser) callonListElementContinuation18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement391(stack["term"], stack["separator"], stack["description"]) + return p.cur.onListElementContinuation18(stack["offset"]) } -func (c *current) onExtraListElement371(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElementContinuation1(offset, element interface{}) (interface{}, error) { + return types.NewListElementContinuation(len(offset.([]interface{})), element) } -func (p *parser) callonExtraListElement371() (interface{}, error) { +func (p *parser) callonListElementContinuation1() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement371(stack["element"]) + return p.cur.onListElementContinuation1(stack["offset"], stack["element"]) } -func (c *current) onExtraListElement747() (interface{}, error) { - +func (c *current) onListElementContinuationElement14() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement747() (interface{}, error) { +func (p *parser) callonListElementContinuationElement14() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement747() + return p.cur.onListElementContinuationElement14() } -func (c *current) onExtraListElement750(separator interface{}) (bool, error) { +func (c *current) onListElementContinuationElement21() (interface{}, error) { - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil + // `.` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonExtraListElement750() (bool, error) { +func (p *parser) callonListElementContinuationElement21() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement750(stack["separator"]) + return p.cur.onListElementContinuationElement21() } -func (c *current) onExtraListElement744(separator interface{}) (interface{}, error) { - return separator, nil +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) callonExtraListElement744() (interface{}, error) { +func (p *parser) callonListElementContinuationElement24() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement744(stack["separator"]) + return p.cur.onListElementContinuationElement24(stack["depth"]) } -func (c *current) onExtraListElement753() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +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) callonExtraListElement753() (interface{}, error) { +func (p *parser) callonListElementContinuationElement18() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement753() + return p.cur.onListElementContinuationElement18(stack["depth"]) } -func (c *current) onExtraListElement740() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onListElementContinuationElement25() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) } -func (p *parser) callonExtraListElement740() (interface{}, error) { +func (p *parser) callonListElementContinuationElement25() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement740() + return p.cur.onListElementContinuationElement25() } -func (c *current) onExtraListElement765() (interface{}, error) { - - return string(c.text), nil +func (c *current) onListElementContinuationElement30() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonExtraListElement765() (interface{}, error) { +func (p *parser) callonListElementContinuationElement30() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement765() + return p.cur.onListElementContinuationElement30() } -func (c *current) onExtraListElement768(separator interface{}) (bool, error) { +func (c *current) onListElementContinuationElement34() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil +} + +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) callonExtraListElement768() (bool, error) { +func (p *parser) callonListElementContinuationElement38() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement768(stack["separator"]) + return p.cur.onListElementContinuationElement38() } -func (c *current) onExtraListElement762(separator interface{}) (interface{}, error) { - return separator, nil +func (c *current) onListElementContinuationElement43() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) } -func (p *parser) callonExtraListElement762() (interface{}, error) { +func (p *parser) callonListElementContinuationElement43() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement762(stack["separator"]) + return p.cur.onListElementContinuationElement43() } -func (c *current) onExtraListElement774() (interface{}, error) { +func (c *current) onListElementContinuationElement48(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement774() (interface{}, error) { +func (p *parser) callonListElementContinuationElement48() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement774() + return p.cur.onListElementContinuationElement48(stack["prefix"]) } -func (c *current) onExtraListElement777() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement11(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonExtraListElement777() (interface{}, error) { +func (p *parser) callonListElementContinuationElement11() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement777() + return p.cur.onListElementContinuationElement11(stack["prefix"]) } -func (c *current) onExtraListElement791() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement55() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement791() (interface{}, error) { +func (p *parser) callonListElementContinuationElement55() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement791() + return p.cur.onListElementContinuationElement55() } -func (c *current) onExtraListElement794() (interface{}, error) { +func (c *current) onListElementContinuationElement59() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement794() (interface{}, error) { +func (p *parser) callonListElementContinuationElement59() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement794() + return p.cur.onListElementContinuationElement59() } -func (c *current) onExtraListElement785() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onListElementContinuationElement52(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) } -func (p *parser) callonExtraListElement785() (interface{}, error) { +func (p *parser) callonListElementContinuationElement52() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement785() + return p.cur.onListElementContinuationElement52(stack["rawline"]) } -func (c *current) onExtraListElement812() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement8(prefix, content interface{}) (interface{}, error) { + return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) } -func (p *parser) callonExtraListElement812() (interface{}, error) { +func (p *parser) callonListElementContinuationElement8() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement812() + return p.cur.onListElementContinuationElement8(stack["prefix"], stack["content"]) } -func (c *current) onExtraListElement815() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement72() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement815() (interface{}, error) { +func (p *parser) callonListElementContinuationElement72() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement815() + return p.cur.onListElementContinuationElement72() } -func (c *current) onExtraListElement806() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onListElementContinuationElement79() (interface{}, error) { + + // `*` is 1, etc. + return (len(c.text)), nil } -func (p *parser) callonExtraListElement806() (interface{}, error) { +func (p *parser) callonListElementContinuationElement79() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement806() + return p.cur.onListElementContinuationElement79() } -func (c *current) onExtraListElement826() (interface{}, error) { - return string(c.text), nil +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) callonExtraListElement826() (interface{}, error) { +func (p *parser) callonListElementContinuationElement82() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement826() + return p.cur.onListElementContinuationElement82(stack["depth"]) } -func (c *current) onExtraListElement828() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +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) callonExtraListElement828() (interface{}, error) { +func (p *parser) callonListElementContinuationElement76() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement828() + return p.cur.onListElementContinuationElement76(stack["depth"]) } -func (c *current) onExtraListElement837() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement84() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonExtraListElement837() (interface{}, error) { +func (p *parser) callonListElementContinuationElement84() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement837() + return p.cur.onListElementContinuationElement84() } -func (c *current) onExtraListElement844() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil +func (c *current) onListElementContinuationElement86(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExtraListElement844() (interface{}, error) { +func (p *parser) callonListElementContinuationElement86() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement844() + return p.cur.onListElementContinuationElement86(stack["prefix"]) } -func (c *current) onExtraListElement847(depth interface{}) (bool, error) { +func (c *current) onListElementContinuationElement69(prefix interface{}) (interface{}, error) { + return prefix, nil +} - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, 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) callonExtraListElement847() (bool, error) { +func (p *parser) callonListElementContinuationElement97() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement847(stack["depth"]) + return p.cur.onListElementContinuationElement97() } -func (c *current) onExtraListElement841(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 (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) callonExtraListElement841() (interface{}, error) { +func (p *parser) callonListElementContinuationElement101() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement841(stack["depth"]) + return p.cur.onListElementContinuationElement101() } -func (c *current) onExtraListElement848() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) +func (c *current) onListElementContinuationElement103(style interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExtraListElement848() (interface{}, error) { +func (p *parser) callonListElementContinuationElement103() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement848() + return p.cur.onListElementContinuationElement103(stack["style"]) } -func (c *current) onExtraListElement853() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) +func (c *current) onListElementContinuationElement91(style interface{}) (interface{}, error) { + return style, nil } -func (p *parser) callonExtraListElement853() (interface{}, error) { +func (p *parser) callonListElementContinuationElement91() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement853() + return p.cur.onListElementContinuationElement91(stack["style"]) } -func (c *current) onExtraListElement857() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) +func (c *current) onListElementContinuationElement110() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement857() (interface{}, error) { +func (p *parser) callonListElementContinuationElement110() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement857() + return p.cur.onListElementContinuationElement110() } -func (c *current) onExtraListElement861() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - +func (c *current) onListElementContinuationElement114() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement861() (interface{}, error) { +func (p *parser) callonListElementContinuationElement114() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement861() + return p.cur.onListElementContinuationElement114() } -func (c *current) onExtraListElement866() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) +func (c *current) onListElementContinuationElement107(rawline interface{}) (interface{}, error) { + return types.NewParagraph(rawline) } -func (p *parser) callonExtraListElement866() (interface{}, error) { +func (p *parser) callonListElementContinuationElement107() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement866() + return p.cur.onListElementContinuationElement107(stack["rawline"]) } -func (c *current) onExtraListElement871(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onListElementContinuationElement66(prefix, checkstyle, content interface{}) (interface{}, error) { + return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) } -func (p *parser) callonExtraListElement871() (interface{}, error) { +func (p *parser) callonListElementContinuationElement66() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement871(stack["prefix"]) + return p.cur.onListElementContinuationElement66(stack["prefix"], stack["checkstyle"], stack["content"]) } -func (c *current) onExtraListElement834(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onListElementContinuationElement128() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonExtraListElement834() (interface{}, error) { +func (p *parser) callonListElementContinuationElement128() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement834(stack["prefix"]) + return p.cur.onListElementContinuationElement128() } -func (c *current) onExtraListElement878() (interface{}, error) { +func (c *current) onListElementContinuationElement132(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement878() (interface{}, error) { +func (p *parser) callonListElementContinuationElement132() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement878() + return p.cur.onListElementContinuationElement132(stack["ref"]) } -func (c *current) onExtraListElement885() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil +func (c *current) onListElementContinuationElement124(ref interface{}) (interface{}, error) { + return ref, nil } -func (p *parser) callonExtraListElement885() (interface{}, error) { +func (p *parser) callonListElementContinuationElement124() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement885() + return p.cur.onListElementContinuationElement124(stack["ref"]) } -func (c *current) onExtraListElement888(depth interface{}) (bool, error) { +func (c *current) onListElementContinuationElement139() (interface{}, error) { + return string(c.text), nil + +} - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, 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) callonExtraListElement888() (bool, error) { +func (p *parser) callonListElementContinuationElement143() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement888(stack["depth"]) + return p.cur.onListElementContinuationElement143() } -func (c *current) onExtraListElement882(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 (c *current) onListElementContinuationElement136(rawline interface{}) (interface{}, error) { + return types.NewRawLine(rawline.(string)) } -func (p *parser) callonExtraListElement882() (interface{}, error) { +func (p *parser) callonListElementContinuationElement136() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement882(stack["depth"]) + return p.cur.onListElementContinuationElement136(stack["rawline"]) } -func (c *current) onExtraListElement890() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) +func (c *current) onListElementContinuationElement121(ref, description interface{}) (interface{}, error) { + return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) } -func (p *parser) callonExtraListElement890() (interface{}, error) { +func (p *parser) callonListElementContinuationElement121() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement890() + return p.cur.onListElementContinuationElement121(stack["ref"], stack["description"]) } -func (c *current) onExtraListElement892(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement160() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement892() (interface{}, error) { +func (p *parser) callonListElementContinuationElement160() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement892(stack["prefix"]) + return p.cur.onListElementContinuationElement160() } -func (c *current) onExtraListElement875(prefix interface{}) (interface{}, error) { - return prefix, nil +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) callonExtraListElement875() (interface{}, error) { +func (p *parser) callonListElementContinuationElement163() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement875(stack["prefix"]) + return p.cur.onListElementContinuationElement163(stack["separator"]) } -func (c *current) onExtraListElement900() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onListElementContinuationElement157(separator interface{}) (interface{}, error) { + return separator, nil + } -func (p *parser) callonExtraListElement900() (interface{}, error) { +func (p *parser) callonListElementContinuationElement157() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement900() + return p.cur.onListElementContinuationElement157(stack["separator"]) } -func (c *current) onExtraListElement904(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement166() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonExtraListElement904() (interface{}, error) { +func (p *parser) callonListElementContinuationElement166() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement904(stack["ref"]) + return p.cur.onListElementContinuationElement166() } -func (c *current) onExtraListElement896(ref interface{}) (interface{}, error) { - return ref, nil +func (c *current) onListElementContinuationElement153() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement896() (interface{}, error) { +func (p *parser) callonListElementContinuationElement153() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement896(stack["ref"]) + return p.cur.onListElementContinuationElement153() } -func (c *current) onExtraListElement916() (interface{}, error) { +func (c *current) onListElementContinuationElement178() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement916() (interface{}, error) { +func (p *parser) callonListElementContinuationElement178() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement916() + return p.cur.onListElementContinuationElement178() } -func (c *current) onExtraListElement919(separator interface{}) (bool, error) { +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) callonExtraListElement919() (bool, error) { +func (p *parser) callonListElementContinuationElement181() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement919(stack["separator"]) + return p.cur.onListElementContinuationElement181(stack["separator"]) } -func (c *current) onExtraListElement913(separator interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement175(separator interface{}) (interface{}, error) { return separator, nil } -func (p *parser) callonExtraListElement913() (interface{}, error) { +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.onExtraListElement913(stack["separator"]) + return p.cur.onListElementContinuationElement187() } -func (c *current) onExtraListElement922() (interface{}, error) { +func (c *current) onListElementContinuationElement190() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement922() (interface{}, error) { +func (p *parser) callonListElementContinuationElement190() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement922() + return p.cur.onListElementContinuationElement190() } -func (c *current) onExtraListElement909() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onListElementContinuationElement204() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement909() (interface{}, error) { +func (p *parser) callonListElementContinuationElement204() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement909() + return p.cur.onListElementContinuationElement204() } -func (c *current) onExtraListElement933() (interface{}, error) { - +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) callonExtraListElement933() (interface{}, error) { +func (p *parser) callonListElementContinuationElement198() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement933() + return p.cur.onListElementContinuationElement198() } -func (c *current) onExtraListElement936(separator interface{}) (bool, error) { +func (c *current) onListElementContinuationElement225() (interface{}, error) { + return string(c.text), nil - // use a predicate to make sure that separator is `::`, `:::` or `::::` - return len(separator.(string)) >= 2 && len(separator.(string)) <= 4, nil +} +func (p *parser) callonListElementContinuationElement225() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement225() +} + +func (c *current) onListElementContinuationElement228() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement936() (bool, error) { +func (p *parser) callonListElementContinuationElement228() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement936(stack["separator"]) + return p.cur.onListElementContinuationElement228() } -func (c *current) onExtraListElement930(separator interface{}) (interface{}, error) { - return separator, nil +func (c *current) onListElementContinuationElement219() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonExtraListElement930() (interface{}, error) { +func (p *parser) callonListElementContinuationElement219() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement930(stack["separator"]) + return p.cur.onListElementContinuationElement219() } -func (c *current) onExtraListElement947() (interface{}, error) { +func (c *current) onListElementContinuationElement239() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement947() (interface{}, error) { +func (p *parser) callonListElementContinuationElement239() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement947() + return p.cur.onListElementContinuationElement239() } -func (c *current) onExtraListElement950() (interface{}, error) { +func (c *current) onListElementContinuationElement241() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement950() (interface{}, error) { +func (p *parser) callonListElementContinuationElement241() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement950() + return p.cur.onListElementContinuationElement241() } -func (c *current) onExtraListElement960() (interface{}, error) { +func (c *current) onListElementContinuationElement250() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement960() (interface{}, error) { +func (p *parser) callonListElementContinuationElement250() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement960() + return p.cur.onListElementContinuationElement250() } -func (c *current) onExtraListElement963() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement257() (interface{}, error) { + + // `.` is 1, etc. + return (len(c.text)), nil + } -func (p *parser) callonExtraListElement963() (interface{}, error) { +func (p *parser) callonListElementContinuationElement257() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement963() + return p.cur.onListElementContinuationElement257() } -func (c *current) onExtraListElement973() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement260(depth interface{}) (bool, error) { + + // use a predicate to make sure that only `.` to `.....` are allowed + return depth.(int) <= 5, nil } -func (p *parser) callonExtraListElement973() (interface{}, error) { +func (p *parser) callonListElementContinuationElement260() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement973() + return p.cur.onListElementContinuationElement260(stack["depth"]) } -func (c *current) onExtraListElement976() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement254(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) callonListElementContinuationElement254() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement254(stack["depth"]) +} + +func (c *current) onListElementContinuationElement261() (interface{}, error) { + // numbering style: "1.", etc. + return types.NewOrderedListElementPrefix(types.Arabic) + } -func (p *parser) callonExtraListElement976() (interface{}, error) { +func (p *parser) callonListElementContinuationElement261() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement976() + return p.cur.onListElementContinuationElement261() } -func (c *current) onExtraListElement986() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement266() (interface{}, error) { + // numbering style: "a.", etc. + return types.NewOrderedListElementPrefix(types.LowerAlpha) } -func (p *parser) callonExtraListElement986() (interface{}, error) { +func (p *parser) callonListElementContinuationElement266() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement986() + return p.cur.onListElementContinuationElement266() } -func (c *current) onExtraListElement989() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement270() (interface{}, error) { + // numbering style: "A.", etc. + return types.NewOrderedListElementPrefix(types.UpperAlpha) + } -func (p *parser) callonExtraListElement989() (interface{}, error) { +func (p *parser) callonListElementContinuationElement270() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement989() + return p.cur.onListElementContinuationElement270() } -func (c *current) onExtraListElement999() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement274() (interface{}, error) { + // numbering style: "i)", etc. + return types.NewOrderedListElementPrefix(types.LowerRoman) } -func (p *parser) callonExtraListElement999() (interface{}, error) { +func (p *parser) callonListElementContinuationElement274() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement999() + return p.cur.onListElementContinuationElement274() } -func (c *current) onExtraListElement1002() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement279() (interface{}, error) { + // numbering style: "I)", etc. + return types.NewOrderedListElementPrefix(types.UpperRoman) + } -func (p *parser) callonExtraListElement1002() (interface{}, error) { +func (p *parser) callonListElementContinuationElement279() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1002() + return p.cur.onListElementContinuationElement279() } -func (c *current) onExtraListElement1012() (interface{}, error) { +func (c *current) onListElementContinuationElement284(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement1012() (interface{}, error) { +func (p *parser) callonListElementContinuationElement284() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1012() + return p.cur.onListElementContinuationElement284(stack["prefix"]) } -func (c *current) onExtraListElement1015() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement247(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonExtraListElement1015() (interface{}, error) { +func (p *parser) callonListElementContinuationElement247() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1015() + return p.cur.onListElementContinuationElement247(stack["prefix"]) } -func (c *current) onExtraListElement1025() (interface{}, error) { +func (c *current) onListElementContinuationElement291() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement1025() (interface{}, error) { +func (p *parser) callonListElementContinuationElement291() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1025() + return p.cur.onListElementContinuationElement291() } -func (c *current) onExtraListElement1028() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement298() (interface{}, error) { + + // `*` is 1, etc. + return (len(c.text)), nil + } -func (p *parser) callonExtraListElement1028() (interface{}, error) { +func (p *parser) callonListElementContinuationElement298() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1028() + return p.cur.onListElementContinuationElement298() } -func (c *current) onExtraListElement1038() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement301(depth interface{}) (bool, error) { + + // use a predicate to make sure that only `*` to `*****` are allowed + return depth.(int) <= 5, nil } -func (p *parser) callonExtraListElement1038() (interface{}, error) { +func (p *parser) callonListElementContinuationElement301() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1038() + return p.cur.onListElementContinuationElement301(stack["depth"]) } -func (c *current) onExtraListElement1041() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement295(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) callonExtraListElement1041() (interface{}, error) { +func (p *parser) callonListElementContinuationElement295() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1041() + return p.cur.onListElementContinuationElement295(stack["depth"]) } -func (c *current) onExtraListElement938(delimiter interface{}) (interface{}, error) { - return delimiter, nil +func (c *current) onListElementContinuationElement303() (interface{}, error) { + return types.NewUnorderedListElementPrefix(types.Dash) } -func (p *parser) callonExtraListElement938() (interface{}, error) { +func (p *parser) callonListElementContinuationElement303() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement938(stack["delimiter"]) + return p.cur.onListElementContinuationElement303() } -func (c *current) onExtraListElement1049() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil +func (c *current) onListElementContinuationElement305(prefix interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExtraListElement1049() (interface{}, error) { +func (p *parser) callonListElementContinuationElement305() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1049() + return p.cur.onListElementContinuationElement305(stack["prefix"]) } -func (c *current) onExtraListElement1053() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement288(prefix interface{}) (interface{}, error) { + return prefix, nil } -func (p *parser) callonExtraListElement1053() (interface{}, error) { +func (p *parser) callonListElementContinuationElement288() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1053() + return p.cur.onListElementContinuationElement288(stack["prefix"]) } -func (c *current) onExtraListElement803(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) - +func (c *current) onListElementContinuationElement313() (interface{}, error) { + return strconv.Atoi(string(c.text)) } -func (p *parser) callonExtraListElement803() (interface{}, error) { +func (p *parser) callonListElementContinuationElement313() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement803(stack["content"]) + return p.cur.onListElementContinuationElement313() } -func (c *current) onExtraListElement771(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) +func (c *current) onListElementContinuationElement317(ref interface{}) (interface{}, error) { + // log.Debug("matched multiple spaces") + return string(c.text), nil } -func (p *parser) callonExtraListElement771() (interface{}, error) { +func (p *parser) callonListElementContinuationElement317() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement771(stack["content"]) + return p.cur.onListElementContinuationElement317(stack["ref"]) } -func (c *current) onExtraListElement1062() (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onListElementContinuationElement309(ref interface{}) (interface{}, error) { + return ref, nil } -func (p *parser) callonExtraListElement1062() (interface{}, error) { +func (p *parser) callonListElementContinuationElement309() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1062() + return p.cur.onListElementContinuationElement309(stack["ref"]) } -func (c *current) onExtraListElement1066() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onListElementContinuationElement329() (interface{}, error) { + + return string(c.text), nil } -func (p *parser) callonExtraListElement1066() (interface{}, error) { +func (p *parser) callonListElementContinuationElement329() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1066() + return p.cur.onListElementContinuationElement329() } -func (c *current) onExtraListElement1070() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement332(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) callonExtraListElement1070() (interface{}, error) { +func (p *parser) callonListElementContinuationElement332() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1070() + return p.cur.onListElementContinuationElement332(stack["separator"]) } -func (c *current) onExtraListElement1060(content interface{}) (interface{}, error) { - return types.NewParagraph(content) +func (c *current) onListElementContinuationElement326(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonExtraListElement1060() (interface{}, error) { +func (p *parser) callonListElementContinuationElement326() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1060(stack["content"]) + return p.cur.onListElementContinuationElement326(stack["separator"]) } -func (c *current) onExtraListElement737(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) - +func (c *current) onListElementContinuationElement335() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement737() (interface{}, error) { +func (p *parser) callonListElementContinuationElement335() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement737(stack["term"], stack["separator"], stack["description"]) + return p.cur.onListElementContinuationElement335() } -func (c *current) onExtraListElement731(attributes, element interface{}) (interface{}, error) { - return append(attributes.([]interface{}), element), nil +func (c *current) onListElementContinuationElement322() (interface{}, error) { + return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement731() (interface{}, error) { +func (p *parser) callonListElementContinuationElement322() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement731(stack["attributes"], stack["element"]) + return p.cur.onListElementContinuationElement322() } -func (c *current) onExtraListElement1083() (interface{}, error) { +func (c *current) onListElementContinuationElement346() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement1083() (interface{}, error) { +func (p *parser) callonListElementContinuationElement346() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1083() + return p.cur.onListElementContinuationElement346() } -func (c *current) onExtraListElement1087() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement349(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) callonExtraListElement1087() (interface{}, error) { +func (p *parser) callonListElementContinuationElement349() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1087() + return p.cur.onListElementContinuationElement349(stack["separator"]) } -func (c *current) onExtraListElement1077(content interface{}) (interface{}, error) { - return types.NewSingleLineComment(content.(string)) +func (c *current) onListElementContinuationElement343(separator interface{}) (interface{}, error) { + return separator, nil } -func (p *parser) callonExtraListElement1077() (interface{}, error) { +func (p *parser) callonListElementContinuationElement343() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1077(stack["content"]) + return p.cur.onListElementContinuationElement343(stack["separator"]) } -func (c *current) onExtraListElement1105() (interface{}, error) { +func (c *current) onListElementContinuationElement361() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement1105() (interface{}, error) { +func (p *parser) callonListElementContinuationElement361() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1105() + return p.cur.onListElementContinuationElement361() } -func (c *current) onExtraListElement1108() (interface{}, error) { +func (c *current) onListElementContinuationElement364() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement1108() (interface{}, error) { +func (p *parser) callonListElementContinuationElement364() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1108() + return p.cur.onListElementContinuationElement364() } -func (c *current) onExtraListElement1099() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onListElementContinuationElement357() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonExtraListElement1099() (interface{}, error) { +func (p *parser) callonListElementContinuationElement357() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1099() + return p.cur.onListElementContinuationElement357() } -func (c *current) onExtraListElement1119() (interface{}, error) { +func (c *current) onListElementContinuationElement375() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement1119() (interface{}, error) { +func (p *parser) callonListElementContinuationElement375() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1119() + return p.cur.onListElementContinuationElement375() } -func (c *current) onExtraListElement1121() (interface{}, error) { +func (c *current) onListElementContinuationElement378() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement1121() (interface{}, error) { +func (p *parser) callonListElementContinuationElement378() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1121() + return p.cur.onListElementContinuationElement378() } -func (c *current) onExtraListElement1130() (interface{}, error) { - return string(c.text), nil - +func (c *current) onListElementContinuationElement371() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) } -func (p *parser) callonExtraListElement1130() (interface{}, error) { +func (p *parser) callonListElementContinuationElement371() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1130() + return p.cur.onListElementContinuationElement371() } -func (c *current) onExtraListElement1137() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil +func (c *current) onListElementContinuationElement389() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement1137() (interface{}, error) { +func (p *parser) callonListElementContinuationElement389() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1137() + return p.cur.onListElementContinuationElement389() } -func (c *current) onExtraListElement1140(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil - +func (c *current) onListElementContinuationElement392() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement1140() (bool, error) { +func (p *parser) callonListElementContinuationElement392() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1140(stack["depth"]) + return p.cur.onListElementContinuationElement392() } -func (c *current) onExtraListElement1134(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 (c *current) onListElementContinuationElement385() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonExtraListElement1134() (interface{}, error) { +func (p *parser) callonListElementContinuationElement385() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1134(stack["depth"]) + return p.cur.onListElementContinuationElement385() } -func (c *current) onExtraListElement1141() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) +func (c *current) onListElementContinuationElement403() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement1141() (interface{}, error) { +func (p *parser) callonListElementContinuationElement403() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1141() + return p.cur.onListElementContinuationElement403() } -func (c *current) onExtraListElement1146() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - +func (c *current) onListElementContinuationElement406() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement1146() (interface{}, error) { +func (p *parser) callonListElementContinuationElement406() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1146() + return p.cur.onListElementContinuationElement406() } -func (c *current) onExtraListElement1150() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - +func (c *current) onListElementContinuationElement399() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonExtraListElement1150() (interface{}, error) { +func (p *parser) callonListElementContinuationElement399() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1150() + return p.cur.onListElementContinuationElement399() } -func (c *current) onExtraListElement1154() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) +func (c *current) onListElementContinuationElement417() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement1154() (interface{}, error) { +func (p *parser) callonListElementContinuationElement417() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1154() + return p.cur.onListElementContinuationElement417() } -func (c *current) onExtraListElement1159() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) - +func (c *current) onListElementContinuationElement420() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement1159() (interface{}, error) { +func (p *parser) callonListElementContinuationElement420() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1159() + return p.cur.onListElementContinuationElement420() } -func (c *current) onExtraListElement1164(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil - +func (c *current) onListElementContinuationElement413() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonExtraListElement1164() (interface{}, error) { +func (p *parser) callonListElementContinuationElement413() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1164(stack["prefix"]) + return p.cur.onListElementContinuationElement413() } -func (c *current) onExtraListElement1127(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onListElementContinuationElement431() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonExtraListElement1127() (interface{}, error) { +func (p *parser) callonListElementContinuationElement431() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1127(stack["prefix"]) + return p.cur.onListElementContinuationElement431() } -func (c *current) onExtraListElement1171() (interface{}, error) { +func (c *current) onListElementContinuationElement434() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonExtraListElement1171() (interface{}, error) { +func (p *parser) callonListElementContinuationElement434() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1171() + return p.cur.onListElementContinuationElement434() } -func (c *current) onExtraListElement1178() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - +func (c *current) onListElementContinuationElement427() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonExtraListElement1178() (interface{}, error) { +func (p *parser) callonListElementContinuationElement427() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1178() + return p.cur.onListElementContinuationElement427() } -func (c *current) onExtraListElement1181(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil +func (c *current) onListElementContinuationElement445() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement1181() (bool, error) { +func (p *parser) callonListElementContinuationElement445() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1181(stack["depth"]) + return p.cur.onListElementContinuationElement445() } -func (c *current) onExtraListElement1175(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 (c *current) onListElementContinuationElement448() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement1175() (interface{}, error) { +func (p *parser) callonListElementContinuationElement448() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1175(stack["depth"]) + return p.cur.onListElementContinuationElement448() } -func (c *current) onExtraListElement1183() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - +func (c *current) onListElementContinuationElement441() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonExtraListElement1183() (interface{}, error) { +func (p *parser) callonListElementContinuationElement441() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1183() + return p.cur.onListElementContinuationElement441() } -func (c *current) onExtraListElement1185(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement459() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement1185() (interface{}, error) { +func (p *parser) callonListElementContinuationElement459() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1185(stack["prefix"]) + return p.cur.onListElementContinuationElement459() } -func (c *current) onExtraListElement1168(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onListElementContinuationElement462() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonExtraListElement1168() (interface{}, error) { +func (p *parser) callonListElementContinuationElement462() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1168(stack["prefix"]) + return p.cur.onListElementContinuationElement462() } -func (c *current) onExtraListElement1193() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onListElementContinuationElement455() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonExtraListElement1193() (interface{}, error) { +func (p *parser) callonListElementContinuationElement455() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1193() + return p.cur.onListElementContinuationElement455() } -func (c *current) onExtraListElement1197(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onListElementContinuationElement351(delimiter interface{}) (interface{}, error) { + return delimiter, nil } -func (p *parser) callonExtraListElement1197() (interface{}, error) { +func (p *parser) callonListElementContinuationElement351() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1197(stack["ref"]) + return p.cur.onListElementContinuationElement351(stack["delimiter"]) } -func (c *current) onExtraListElement1189(ref interface{}) (interface{}, error) { - return ref, nil +func (c *current) onListElementContinuationElement470() (interface{}, error) { + return strings.TrimSpace(string(c.text)), nil } -func (p *parser) callonExtraListElement1189() (interface{}, error) { +func (p *parser) callonListElementContinuationElement470() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1189(stack["ref"]) + return p.cur.onListElementContinuationElement470() } -func (c *current) onExtraListElement1209() (interface{}, error) { - +func (c *current) onListElementContinuationElement474() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonExtraListElement1209() (interface{}, error) { +func (p *parser) callonListElementContinuationElement474() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1209() + return p.cur.onListElementContinuationElement474() } -func (c *current) onExtraListElement1212(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 (c *current) onListElementContinuationElement216(content interface{}) (interface{}, error) { + // do not retain the EOL chars + return types.NewRawLine(content.(string)) } -func (p *parser) callonExtraListElement1212() (bool, error) { +func (p *parser) callonListElementContinuationElement216() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1212(stack["separator"]) + return p.cur.onListElementContinuationElement216(stack["content"]) } -func (c *current) onExtraListElement1206(separator interface{}) (interface{}, error) { - return separator, nil +func (c *current) onListElementContinuationElement184(content interface{}) (interface{}, error) { + if content == nil { + return nil, nil + } + return types.NewParagraph(content) } -func (p *parser) callonExtraListElement1206() (interface{}, error) { +func (p *parser) callonListElementContinuationElement184() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1206(stack["separator"]) + return p.cur.onListElementContinuationElement184(stack["content"]) } -func (c *current) onExtraListElement1215() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement483() (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil + } -func (p *parser) callonExtraListElement1215() (interface{}, error) { +func (p *parser) callonListElementContinuationElement483() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1215() + return p.cur.onListElementContinuationElement483() } -func (c *current) onExtraListElement1202() (interface{}, error) { +func (c *current) onListElementContinuationElement487() (interface{}, error) { return types.NewRawLine(string(c.text)) } -func (p *parser) callonExtraListElement1202() (interface{}, error) { +func (p *parser) callonListElementContinuationElement487() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1202() + return p.cur.onListElementContinuationElement487() } -func (c *current) onExtraListElement1226() (interface{}, error) { - +func (c *current) onListElementContinuationElement491() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonExtraListElement1226() (interface{}, error) { +func (p *parser) callonListElementContinuationElement491() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1226() + return p.cur.onListElementContinuationElement491() } -func (c *current) onExtraListElement1229(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 (c *current) onListElementContinuationElement481(content interface{}) (interface{}, error) { + return types.NewParagraph(content) } -func (p *parser) callonExtraListElement1229() (bool, error) { +func (p *parser) callonListElementContinuationElement481() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1229(stack["separator"]) + return p.cur.onListElementContinuationElement481(stack["content"]) } -func (c *current) onExtraListElement1223(separator interface{}) (interface{}, error) { - return separator, nil +func (c *current) onListElementContinuationElement150(term, separator, description interface{}) (interface{}, error) { + return types.NewLabeledListElement(len(separator.(string))-1, term, description) } -func (p *parser) callonExtraListElement1223() (interface{}, error) { +func (p *parser) callonListElementContinuationElement150() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1223(stack["separator"]) + return p.cur.onListElementContinuationElement150(stack["term"], stack["separator"], stack["description"]) } -func (c *current) onExtraListElement1240() (interface{}, error) { +func (c *current) onListElementContinuationElement509() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement1240() (interface{}, error) { +func (p *parser) callonListElementContinuationElement509() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1240() + return p.cur.onListElementContinuationElement509() } -func (c *current) onExtraListElement1243() (interface{}, error) { +func (c *current) onListElementContinuationElement512() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement1243() (interface{}, error) { +func (p *parser) callonListElementContinuationElement512() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1243() + return p.cur.onListElementContinuationElement512() } -func (c *current) onExtraListElement1253() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement503() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonExtraListElement1253() (interface{}, error) { +func (p *parser) callonListElementContinuationElement503() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1253() + return p.cur.onListElementContinuationElement503() } -func (c *current) onExtraListElement1256() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement523() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement1256() (interface{}, error) { +func (p *parser) callonListElementContinuationElement523() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1256() + return p.cur.onListElementContinuationElement523() } -func (c *current) onExtraListElement1266() (interface{}, error) { +func (c *current) onListElementContinuationElement533() (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonExtraListElement1266() (interface{}, error) { +func (p *parser) callonListElementContinuationElement533() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1266() + return p.cur.onListElementContinuationElement533() } -func (c *current) onExtraListElement1269() (interface{}, error) { +func (c *current) onListElementContinuationElement542() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonExtraListElement1269() (interface{}, error) { +func (p *parser) callonListElementContinuationElement542() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1269() + return p.cur.onListElementContinuationElement542() } -func (c *current) onExtraListElement1279() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement551() (interface{}, error) { + return types.NewStringElement(string(c.text)) } -func (p *parser) callonExtraListElement1279() (interface{}, error) { +func (p *parser) callonListElementContinuationElement551() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1279() + return p.cur.onListElementContinuationElement551() } -func (c *current) onExtraListElement1282() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement556() (bool, error) { + return c.isSubstitutionEnabled(Attributes) + } -func (p *parser) callonExtraListElement1282() (interface{}, error) { +func (p *parser) callonListElementContinuationElement556() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1282() + return p.cur.onListElementContinuationElement556() } -func (c *current) onExtraListElement1292() (interface{}, error) { +func (c *current) onListElementContinuationElement563() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement1292() (interface{}, error) { +func (p *parser) callonListElementContinuationElement563() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1292() + return p.cur.onListElementContinuationElement563() } -func (c *current) onExtraListElement1295() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement575() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement1295() (interface{}, error) { +func (p *parser) callonListElementContinuationElement575() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1295() + return p.cur.onListElementContinuationElement575() } -func (c *current) onExtraListElement1305() (interface{}, error) { - return string(c.text), nil - -} +func (c *current) onListElementContinuationElement577() (interface{}, error) { -func (p *parser) callonExtraListElement1305() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onExtraListElement1305() -} + return strconv.Atoi(string(c.text)) -func (c *current) onExtraListElement1308() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil } -func (p *parser) callonExtraListElement1308() (interface{}, error) { +func (p *parser) callonListElementContinuationElement577() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1308() + return p.cur.onListElementContinuationElement577() } -func (c *current) onExtraListElement1318() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement570(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonExtraListElement1318() (interface{}, error) { +func (p *parser) callonListElementContinuationElement570() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1318() + return p.cur.onListElementContinuationElement570(stack["start"]) } -func (c *current) onExtraListElement1321() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement559(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } -func (p *parser) callonExtraListElement1321() (interface{}, error) { +func (p *parser) callonListElementContinuationElement559() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1321() + return p.cur.onListElementContinuationElement559(stack["name"], stack["start"]) } -func (c *current) onExtraListElement1331() (interface{}, error) { +func (c *current) onListElementContinuationElement585() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonExtraListElement1331() (interface{}, error) { +func (p *parser) callonListElementContinuationElement585() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1331() + return p.cur.onListElementContinuationElement585() } -func (c *current) onExtraListElement1334() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement597() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonExtraListElement1334() (interface{}, error) { +func (p *parser) callonListElementContinuationElement597() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1334() + return p.cur.onListElementContinuationElement597() } -func (c *current) onExtraListElement1231(delimiter interface{}) (interface{}, error) { - return delimiter, nil +func (c *current) onListElementContinuationElement599() (interface{}, error) { + + return strconv.Atoi(string(c.text)) } -func (p *parser) callonExtraListElement1231() (interface{}, error) { +func (p *parser) callonListElementContinuationElement599() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1231(stack["delimiter"]) + return p.cur.onListElementContinuationElement599() } -func (c *current) onExtraListElement1342() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil +func (c *current) onListElementContinuationElement592(start interface{}) (interface{}, error) { + return start, nil } -func (p *parser) callonExtraListElement1342() (interface{}, error) { +func (p *parser) callonListElementContinuationElement592() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1342() + return p.cur.onListElementContinuationElement592(stack["start"]) } -func (c *current) onExtraListElement1346() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement581(name, start interface{}) (interface{}, error) { + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } -func (p *parser) callonExtraListElement1346() (interface{}, error) { +func (p *parser) callonListElementContinuationElement581() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1346() + return p.cur.onListElementContinuationElement581(stack["name"], stack["start"]) } -func (c *current) onExtraListElement1096(content interface{}) (interface{}, error) { - // do not retain the EOL chars - return types.NewRawLine(content.(string)) +func (c *current) onListElementContinuationElement607() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonExtraListElement1096() (interface{}, error) { +func (p *parser) callonListElementContinuationElement607() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1096(stack["content"]) + return p.cur.onListElementContinuationElement607() } -func (c *current) onExtraListElement1094(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElementContinuationElement603(name interface{}) (interface{}, error) { + return types.NewAttributeSubstitution(name.(string), string(c.text)) } -func (p *parser) callonExtraListElement1094() (interface{}, error) { +func (p *parser) callonListElementContinuationElement603() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1094(stack["element"]) + return p.cur.onListElementContinuationElement603(stack["name"]) } -func (c *current) onExtraListElement1(element interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement554(element interface{}) (interface{}, error) { return element, nil } -func (p *parser) callonExtraListElement1() (interface{}, error) { +func (p *parser) callonListElementContinuationElement554() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onExtraListElement1(stack["element"]) + return p.cur.onListElementContinuationElement554(stack["element"]) } -func (c *current) onListElementContinuation7() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement613() (interface{}, error) { + // standalone '{' + return types.NewStringElement(string(c.text)) } -func (p *parser) callonListElementContinuation7() (interface{}, error) { +func (p *parser) callonListElementContinuationElement613() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuation7() + return p.cur.onListElementContinuationElement613() } -func (c *current) onListElementContinuation9() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement538(element interface{}) (interface{}, error) { + + return element, nil + } -func (p *parser) callonListElementContinuation9() (interface{}, error) { +func (p *parser) callonListElementContinuationElement538() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuation9() + return p.cur.onListElementContinuationElement538(stack["element"]) } -func (c *current) onListElementContinuation16() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement531(elements interface{}) (interface{}, error) { + return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil } -func (p *parser) callonListElementContinuation16() (interface{}, error) { +func (p *parser) callonListElementContinuationElement531() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuation16() + return p.cur.onListElementContinuationElement531(stack["elements"]) } -func (c *current) onListElementContinuation18(offset interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement616() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuation18() (interface{}, error) { +func (p *parser) callonListElementContinuationElement616() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuation18(stack["offset"]) + return p.cur.onListElementContinuationElement616() } -func (c *current) onListElementContinuation1(offset, element interface{}) (interface{}, error) { - return types.NewListElementContinuation(len(offset.([]interface{})), element) +func (c *current) onListElementContinuationElement519(name, value interface{}) (interface{}, error) { + return types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace), string(c.text)) } -func (p *parser) callonListElementContinuation1() (interface{}, error) { +func (p *parser) callonListElementContinuationElement519() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuation1(stack["offset"], stack["element"]) + return p.cur.onListElementContinuationElement519(stack["name"], stack["value"]) } -func (c *current) onListElementContinuationElement14() (interface{}, error) { +func (c *current) onListElementContinuationElement627() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement14() (interface{}, error) { +func (p *parser) callonListElementContinuationElement627() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement14() + return p.cur.onListElementContinuationElement627() } -func (c *current) onListElementContinuationElement21() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil +func (c *current) onListElementContinuationElement634() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement21() (interface{}, error) { +func (p *parser) callonListElementContinuationElement634() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement21() + return p.cur.onListElementContinuationElement634() } -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 (c *current) onListElementContinuationElement637() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement24() (bool, error) { +func (p *parser) callonListElementContinuationElement637() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement24(stack["depth"]) + return p.cur.onListElementContinuationElement637() } -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 (c *current) onListElementContinuationElement623(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) } -func (p *parser) callonListElementContinuationElement18() (interface{}, error) { +func (p *parser) callonListElementContinuationElement623() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement18(stack["depth"]) + return p.cur.onListElementContinuationElement623(stack["name"]) } -func (c *current) onListElementContinuationElement25() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) +func (c *current) onListElementContinuationElement648() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement25() (interface{}, error) { +func (p *parser) callonListElementContinuationElement648() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement25() + return p.cur.onListElementContinuationElement648() } -func (c *current) onListElementContinuationElement30() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) +func (c *current) onListElementContinuationElement655() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement30() (interface{}, error) { +func (p *parser) callonListElementContinuationElement655() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement30() + return p.cur.onListElementContinuationElement655() } -func (c *current) onListElementContinuationElement34() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - +func (c *current) onListElementContinuationElement658() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement34() (interface{}, error) { +func (p *parser) callonListElementContinuationElement658() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement34() + return p.cur.onListElementContinuationElement658() } -func (c *current) onListElementContinuationElement38() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) - +func (c *current) onListElementContinuationElement644(name interface{}) (interface{}, error) { + return types.NewAttributeReset(name.(string), string(c.text)) } -func (p *parser) callonListElementContinuationElement38() (interface{}, error) { +func (p *parser) callonListElementContinuationElement644() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement38() + return p.cur.onListElementContinuationElement644(stack["name"]) } -func (c *current) onListElementContinuationElement43() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) +func (c *current) onListElementContinuationElement667() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Comment), nil } -func (p *parser) callonListElementContinuationElement43() (interface{}, error) { +func (p *parser) callonListElementContinuationElement667() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement43() + return p.cur.onListElementContinuationElement667() } -func (c *current) onListElementContinuationElement48(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement672() (interface{}, error) { 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) { +func (p *parser) callonListElementContinuationElement672() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement55() + return p.cur.onListElementContinuationElement672() } -func (c *current) onListElementContinuationElement59() (interface{}, error) { +func (c *current) onListElementContinuationElement675() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement59() (interface{}, error) { +func (p *parser) callonListElementContinuationElement675() (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) + _ = stack + return p.cur.onListElementContinuationElement675() +} +func (c *current) onListElementContinuationElement668() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonListElementContinuationElement52() (interface{}, error) { +func (p *parser) callonListElementContinuationElement668() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement52(stack["rawline"]) + return p.cur.onListElementContinuationElement668() } -func (c *current) onListElementContinuationElement8(prefix, content interface{}) (interface{}, error) { - return types.NewOrderedListElement(prefix.(types.OrderedListElementPrefix), content) +func (c *current) onListElementContinuationElement682() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Comment) + return true, nil } -func (p *parser) callonListElementContinuationElement8() (interface{}, error) { +func (p *parser) callonListElementContinuationElement682() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement8(stack["prefix"], stack["content"]) + return p.cur.onListElementContinuationElement682() } -func (c *current) onListElementContinuationElement72() (interface{}, error) { +func (c *current) onListElementContinuationElement693() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement72() (interface{}, error) { +func (p *parser) callonListElementContinuationElement693() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement72() + return p.cur.onListElementContinuationElement693() } -func (c *current) onListElementContinuationElement79() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - +func (c *current) onListElementContinuationElement696() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement79() (interface{}, error) { +func (p *parser) callonListElementContinuationElement696() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement79() + return p.cur.onListElementContinuationElement696() } -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 (c *current) onListElementContinuationElement689() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonListElementContinuationElement82() (bool, error) { +func (p *parser) callonListElementContinuationElement689() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement82(stack["depth"]) + return p.cur.onListElementContinuationElement689() } -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 (c *current) onListElementContinuationElement712() (interface{}, error) { + // content is NOT mandatory + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement76() (interface{}, error) { +func (p *parser) callonListElementContinuationElement712() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement76(stack["depth"]) + return p.cur.onListElementContinuationElement712() } -func (c *current) onListElementContinuationElement84() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) - +func (c *current) onListElementContinuationElement716() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement84() (interface{}, error) { +func (p *parser) callonListElementContinuationElement716() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement84() + return p.cur.onListElementContinuationElement716() } -func (c *current) onListElementContinuationElement86(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onListElementContinuationElement706(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement86() (interface{}, error) { +func (p *parser) callonListElementContinuationElement706() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement86(stack["prefix"]) + return p.cur.onListElementContinuationElement706(stack["content"]) } -func (c *current) onListElementContinuationElement69(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onListElementContinuationElement685(line interface{}) (interface{}, error) { + return line, nil + } -func (p *parser) callonListElementContinuationElement69() (interface{}, error) { +func (p *parser) callonListElementContinuationElement685() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement69(stack["prefix"]) + return p.cur.onListElementContinuationElement685(stack["line"]) } -func (c *current) onListElementContinuationElement97() (interface{}, error) { - return types.Unchecked, nil +func (c *current) onListElementContinuationElement729() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonListElementContinuationElement97() (interface{}, error) { +func (p *parser) callonListElementContinuationElement729() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement97() + return p.cur.onListElementContinuationElement729() } -func (c *current) onListElementContinuationElement99() (interface{}, error) { - return types.Checked, nil +func (c *current) onListElementContinuationElement732() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement99() (interface{}, error) { +func (p *parser) callonListElementContinuationElement732() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement99() + return p.cur.onListElementContinuationElement732() } -func (c *current) onListElementContinuationElement101() (interface{}, error) { - return types.Checked, nil +func (c *current) onListElementContinuationElement725() (interface{}, error) { + return types.NewBlockDelimiter(types.Comment, string(c.text)) } -func (p *parser) callonListElementContinuationElement101() (interface{}, error) { +func (p *parser) callonListElementContinuationElement725() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement101() + return p.cur.onListElementContinuationElement725() } -func (c *current) onListElementContinuationElement103(style interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onListElementContinuationElement665(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Comment, content.([]interface{})) } -func (p *parser) callonListElementContinuationElement103() (interface{}, error) { +func (p *parser) callonListElementContinuationElement665() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement103(stack["style"]) + return p.cur.onListElementContinuationElement665(stack["content"]) } -func (c *current) onListElementContinuationElement91(style interface{}) (interface{}, error) { - return style, nil +func (c *current) onListElementContinuationElement743() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Example), nil } -func (p *parser) callonListElementContinuationElement91() (interface{}, error) { +func (p *parser) callonListElementContinuationElement743() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement91(stack["style"]) + return p.cur.onListElementContinuationElement743() } -func (c *current) onListElementContinuationElement110() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onListElementContinuationElement748() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement110() (interface{}, error) { +func (p *parser) callonListElementContinuationElement748() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement110() + return p.cur.onListElementContinuationElement748() } -func (c *current) onListElementContinuationElement114() (interface{}, error) { +func (c *current) onListElementContinuationElement751() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement114() (interface{}, error) { +func (p *parser) callonListElementContinuationElement751() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement114() + return p.cur.onListElementContinuationElement751() } -func (c *current) onListElementContinuationElement107(rawline interface{}) (interface{}, error) { - return types.NewParagraph(rawline) - +func (c *current) onListElementContinuationElement744() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) } -func (p *parser) callonListElementContinuationElement107() (interface{}, error) { +func (p *parser) callonListElementContinuationElement744() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement107(stack["rawline"]) + return p.cur.onListElementContinuationElement744() } -func (c *current) onListElementContinuationElement66(prefix, checkstyle, content interface{}) (interface{}, error) { - return types.NewUnorderedListElement(prefix.(types.UnorderedListElementPrefix), checkstyle, content) +func (c *current) onListElementContinuationElement758() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Example) + return true, nil } -func (p *parser) callonListElementContinuationElement66() (interface{}, error) { +func (p *parser) callonListElementContinuationElement758() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement66(stack["prefix"], stack["checkstyle"], stack["content"]) + return p.cur.onListElementContinuationElement758() } -func (c *current) onListElementContinuationElement128() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onListElementContinuationElement769() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonListElementContinuationElement128() (interface{}, error) { +func (p *parser) callonListElementContinuationElement769() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement128() + return p.cur.onListElementContinuationElement769() } -func (c *current) onListElementContinuationElement132(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement772() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonListElementContinuationElement132() (interface{}, error) { +func (p *parser) callonListElementContinuationElement772() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement132(stack["ref"]) + return p.cur.onListElementContinuationElement772() } -func (c *current) onListElementContinuationElement124(ref interface{}) (interface{}, error) { - return ref, nil - +func (c *current) onListElementContinuationElement765() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) } -func (p *parser) callonListElementContinuationElement124() (interface{}, error) { +func (p *parser) callonListElementContinuationElement765() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement124(stack["ref"]) + return p.cur.onListElementContinuationElement765() } -func (c *current) onListElementContinuationElement139() (interface{}, error) { +func (c *current) onListElementContinuationElement788() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonListElementContinuationElement139() (interface{}, error) { +func (p *parser) callonListElementContinuationElement788() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement139() + return p.cur.onListElementContinuationElement788() } -func (c *current) onListElementContinuationElement143() (interface{}, error) { +func (c *current) onListElementContinuationElement792() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement143() (interface{}, error) { +func (p *parser) callonListElementContinuationElement792() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement143() + return p.cur.onListElementContinuationElement792() } -func (c *current) onListElementContinuationElement136(rawline interface{}) (interface{}, error) { - return types.NewRawLine(rawline.(string)) +func (c *current) onListElementContinuationElement782(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement136() (interface{}, error) { +func (p *parser) callonListElementContinuationElement782() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement136(stack["rawline"]) + return p.cur.onListElementContinuationElement782(stack["content"]) } -func (c *current) onListElementContinuationElement121(ref, description interface{}) (interface{}, error) { - return types.NewCalloutListElement(ref.(int), description.(types.RawLine)) +func (c *current) onListElementContinuationElement761(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonListElementContinuationElement121() (interface{}, error) { +func (p *parser) callonListElementContinuationElement761() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement121(stack["ref"], stack["description"]) + return p.cur.onListElementContinuationElement761(stack["line"]) } -func (c *current) onListElementContinuationElement160() (interface{}, error) { - +func (c *current) onListElementContinuationElement804() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement160() (interface{}, error) { +func (p *parser) callonListElementContinuationElement804() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement160() + return p.cur.onListElementContinuationElement804() } -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 (c *current) onListElementContinuationElement807() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement163() (bool, error) { +func (p *parser) callonListElementContinuationElement807() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement163(stack["separator"]) + return p.cur.onListElementContinuationElement807() } -func (c *current) onListElementContinuationElement157(separator interface{}) (interface{}, error) { - return separator, nil - +func (c *current) onListElementContinuationElement800() (interface{}, error) { + return types.NewBlockDelimiter(types.Example, string(c.text)) } -func (p *parser) callonListElementContinuationElement157() (interface{}, error) { +func (p *parser) callonListElementContinuationElement800() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement157(stack["separator"]) + return p.cur.onListElementContinuationElement800() } -func (c *current) onListElementContinuationElement166() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement741(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Example, content.([]interface{})) + } -func (p *parser) callonListElementContinuationElement166() (interface{}, error) { +func (p *parser) callonListElementContinuationElement741() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement166() + return p.cur.onListElementContinuationElement741(stack["content"]) } -func (c *current) onListElementContinuationElement153() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onListElementContinuationElement818() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Fenced), nil } -func (p *parser) callonListElementContinuationElement153() (interface{}, error) { +func (p *parser) callonListElementContinuationElement818() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement153() + return p.cur.onListElementContinuationElement818() } -func (c *current) onListElementContinuationElement178() (interface{}, error) { - +func (c *current) onListElementContinuationElement823() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement178() (interface{}, error) { +func (p *parser) callonListElementContinuationElement823() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement178() + return p.cur.onListElementContinuationElement823() } -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 (c *current) onListElementContinuationElement826() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement181() (bool, error) { +func (p *parser) callonListElementContinuationElement826() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement181(stack["separator"]) + return p.cur.onListElementContinuationElement826() } -func (c *current) onListElementContinuationElement175(separator interface{}) (interface{}, error) { - return separator, nil - +func (c *current) onListElementContinuationElement819() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonListElementContinuationElement175() (interface{}, error) { +func (p *parser) callonListElementContinuationElement819() (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 - + return p.cur.onListElementContinuationElement819() } -func (p *parser) callonListElementContinuationElement187() (interface{}, error) { - stack := p.vstack[len(p.vstack)-1] - _ = stack - return p.cur.onListElementContinuationElement187() -} +func (c *current) onListElementContinuationElement833() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Fenced) + return true, nil -func (c *current) onListElementContinuationElement190() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil } -func (p *parser) callonListElementContinuationElement190() (interface{}, error) { +func (p *parser) callonListElementContinuationElement833() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement190() + return p.cur.onListElementContinuationElement833() } -func (c *current) onListElementContinuationElement204() (interface{}, error) { +func (c *current) onListElementContinuationElement844() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement204() (interface{}, error) { +func (p *parser) callonListElementContinuationElement844() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement204() + return p.cur.onListElementContinuationElement844() } -func (c *current) onListElementContinuationElement207() (interface{}, error) { +func (c *current) onListElementContinuationElement847() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement207() (interface{}, error) { +func (p *parser) callonListElementContinuationElement847() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement207() + return p.cur.onListElementContinuationElement847() } -func (c *current) onListElementContinuationElement198() (interface{}, error) { - return types.NewBlankLine() - +func (c *current) onListElementContinuationElement840() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonListElementContinuationElement198() (interface{}, error) { +func (p *parser) callonListElementContinuationElement840() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement198() + return p.cur.onListElementContinuationElement840() } -func (c *current) onListElementContinuationElement225() (interface{}, error) { +func (c *current) onListElementContinuationElement863() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonListElementContinuationElement225() (interface{}, error) { +func (p *parser) callonListElementContinuationElement863() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement225() + return p.cur.onListElementContinuationElement863() } -func (c *current) onListElementContinuationElement228() (interface{}, error) { +func (c *current) onListElementContinuationElement867() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement228() (interface{}, error) { +func (p *parser) callonListElementContinuationElement867() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement228() + return p.cur.onListElementContinuationElement867() } -func (c *current) onListElementContinuationElement219() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onListElementContinuationElement857(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement219() (interface{}, error) { +func (p *parser) callonListElementContinuationElement857() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement219() + return p.cur.onListElementContinuationElement857(stack["content"]) } -func (c *current) onListElementContinuationElement239() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement836(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonListElementContinuationElement239() (interface{}, error) { +func (p *parser) callonListElementContinuationElement836() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement239() + return p.cur.onListElementContinuationElement836(stack["line"]) } -func (c *current) onListElementContinuationElement241() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement879() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonListElementContinuationElement241() (interface{}, error) { +func (p *parser) callonListElementContinuationElement879() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement241() + return p.cur.onListElementContinuationElement879() } -func (c *current) onListElementContinuationElement250() (interface{}, error) { +func (c *current) onListElementContinuationElement882() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonListElementContinuationElement250() (interface{}, error) { +func (p *parser) callonListElementContinuationElement882() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement250() + return p.cur.onListElementContinuationElement882() } -func (c *current) onListElementContinuationElement257() (interface{}, error) { - - // `.` is 1, etc. - return (len(c.text)), nil - +func (c *current) onListElementContinuationElement875() (interface{}, error) { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) } -func (p *parser) callonListElementContinuationElement257() (interface{}, error) { +func (p *parser) callonListElementContinuationElement875() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement257() + return p.cur.onListElementContinuationElement875() } -func (c *current) onListElementContinuationElement260(depth interface{}) (bool, error) { - - // use a predicate to make sure that only `.` to `.....` are allowed - return depth.(int) <= 5, nil +func (c *current) onListElementContinuationElement816(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Fenced, content.([]interface{})) } -func (p *parser) callonListElementContinuationElement260() (bool, error) { +func (p *parser) callonListElementContinuationElement816() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement260(stack["depth"]) + return p.cur.onListElementContinuationElement816(stack["content"]) } -func (c *current) onListElementContinuationElement254(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 (c *current) onListElementContinuationElement893() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Listing), nil } -func (p *parser) callonListElementContinuationElement254() (interface{}, error) { +func (p *parser) callonListElementContinuationElement893() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement254(stack["depth"]) + return p.cur.onListElementContinuationElement893() } -func (c *current) onListElementContinuationElement261() (interface{}, error) { - // numbering style: "1.", etc. - return types.NewOrderedListElementPrefix(types.Arabic) +func (c *current) onListElementContinuationElement898() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement261() (interface{}, error) { +func (p *parser) callonListElementContinuationElement898() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement261() + return p.cur.onListElementContinuationElement898() } -func (c *current) onListElementContinuationElement266() (interface{}, error) { - // numbering style: "a.", etc. - return types.NewOrderedListElementPrefix(types.LowerAlpha) - +func (c *current) onListElementContinuationElement901() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement266() (interface{}, error) { +func (p *parser) callonListElementContinuationElement901() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement266() + return p.cur.onListElementContinuationElement901() } -func (c *current) onListElementContinuationElement270() (interface{}, error) { - // numbering style: "A.", etc. - return types.NewOrderedListElementPrefix(types.UpperAlpha) - +func (c *current) onListElementContinuationElement894() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonListElementContinuationElement270() (interface{}, error) { +func (p *parser) callonListElementContinuationElement894() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement270() + return p.cur.onListElementContinuationElement894() } -func (c *current) onListElementContinuationElement274() (interface{}, error) { - // numbering style: "i)", etc. - return types.NewOrderedListElementPrefix(types.LowerRoman) +func (c *current) onListElementContinuationElement908() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Listing) + return true, nil } -func (p *parser) callonListElementContinuationElement274() (interface{}, error) { +func (p *parser) callonListElementContinuationElement908() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement274() + return p.cur.onListElementContinuationElement908() } -func (c *current) onListElementContinuationElement279() (interface{}, error) { - // numbering style: "I)", etc. - return types.NewOrderedListElementPrefix(types.UpperRoman) +func (c *current) onListElementContinuationElement919() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement279() (interface{}, error) { +func (p *parser) callonListElementContinuationElement919() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement279() + return p.cur.onListElementContinuationElement919() } -func (c *current) onListElementContinuationElement284(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement922() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonListElementContinuationElement284() (interface{}, error) { +func (p *parser) callonListElementContinuationElement922() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement284(stack["prefix"]) + return p.cur.onListElementContinuationElement922() } -func (c *current) onListElementContinuationElement247(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onListElementContinuationElement915() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonListElementContinuationElement247() (interface{}, error) { +func (p *parser) callonListElementContinuationElement915() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement247(stack["prefix"]) + return p.cur.onListElementContinuationElement915() } -func (c *current) onListElementContinuationElement291() (interface{}, error) { +func (c *current) onListElementContinuationElement938() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonListElementContinuationElement291() (interface{}, error) { +func (p *parser) callonListElementContinuationElement938() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement291() + return p.cur.onListElementContinuationElement938() } -func (c *current) onListElementContinuationElement298() (interface{}, error) { - - // `*` is 1, etc. - return (len(c.text)), nil - +func (c *current) onListElementContinuationElement942() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement298() (interface{}, error) { +func (p *parser) callonListElementContinuationElement942() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement298() + return p.cur.onListElementContinuationElement942() } -func (c *current) onListElementContinuationElement301(depth interface{}) (bool, error) { +func (c *current) onListElementContinuationElement932(content interface{}) (interface{}, error) { - // use a predicate to make sure that only `*` to `*****` are allowed - return depth.(int) <= 5, nil + return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement301() (bool, error) { +func (p *parser) callonListElementContinuationElement932() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement301(stack["depth"]) + return p.cur.onListElementContinuationElement932(stack["content"]) } -func (c *current) onListElementContinuationElement295(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 (c *current) onListElementContinuationElement911(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonListElementContinuationElement295() (interface{}, error) { +func (p *parser) callonListElementContinuationElement911() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement295(stack["depth"]) + return p.cur.onListElementContinuationElement911(stack["line"]) } -func (c *current) onListElementContinuationElement303() (interface{}, error) { - return types.NewUnorderedListElementPrefix(types.Dash) +func (c *current) onListElementContinuationElement954() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement303() (interface{}, error) { +func (p *parser) callonListElementContinuationElement954() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement303() + return p.cur.onListElementContinuationElement954() } -func (c *current) onListElementContinuationElement305(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement957() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonListElementContinuationElement305() (interface{}, error) { +func (p *parser) callonListElementContinuationElement957() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement305(stack["prefix"]) + return p.cur.onListElementContinuationElement957() } -func (c *current) onListElementContinuationElement288(prefix interface{}) (interface{}, error) { - return prefix, nil +func (c *current) onListElementContinuationElement950() (interface{}, error) { + return types.NewBlockDelimiter(types.Listing, string(c.text)) } -func (p *parser) callonListElementContinuationElement288() (interface{}, error) { +func (p *parser) callonListElementContinuationElement950() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement288(stack["prefix"]) + return p.cur.onListElementContinuationElement950() } -func (c *current) onListElementContinuationElement313() (interface{}, error) { - return strconv.Atoi(string(c.text)) +func (c *current) onListElementContinuationElement891(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Listing, content.([]interface{})) + } -func (p *parser) callonListElementContinuationElement313() (interface{}, error) { +func (p *parser) callonListElementContinuationElement891() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement313() + return p.cur.onListElementContinuationElement891(stack["content"]) } -func (c *current) onListElementContinuationElement317(ref interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement972() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement317() (interface{}, error) { +func (p *parser) callonListElementContinuationElement972() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement317(stack["ref"]) + return p.cur.onListElementContinuationElement972() } -func (c *current) onListElementContinuationElement309(ref interface{}) (interface{}, error) { - return ref, nil - +func (c *current) onListElementContinuationElement975() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement309() (interface{}, error) { +func (p *parser) callonListElementContinuationElement975() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement309(stack["ref"]) + return p.cur.onListElementContinuationElement975() } -func (c *current) onListElementContinuationElement329() (interface{}, error) { - - return string(c.text), nil - +func (c *current) onListElementContinuationElement968() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonListElementContinuationElement329() (interface{}, error) { +func (p *parser) callonListElementContinuationElement968() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement329() + return p.cur.onListElementContinuationElement968() } -func (c *current) onListElementContinuationElement332(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 (c *current) onListElementContinuationElement982() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Literal), nil } -func (p *parser) callonListElementContinuationElement332() (bool, error) { +func (p *parser) callonListElementContinuationElement982() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement332(stack["separator"]) + return p.cur.onListElementContinuationElement982() } -func (c *current) onListElementContinuationElement326(separator interface{}) (interface{}, error) { - return separator, nil +func (c *current) onListElementContinuationElement993() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement326() (interface{}, error) { +func (p *parser) callonListElementContinuationElement993() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement326(stack["separator"]) + return p.cur.onListElementContinuationElement993() } -func (c *current) onListElementContinuationElement335() (interface{}, error) { +func (c *current) onListElementContinuationElement996() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement335() (interface{}, error) { +func (p *parser) callonListElementContinuationElement996() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement335() + return p.cur.onListElementContinuationElement996() } -func (c *current) onListElementContinuationElement322() (interface{}, error) { - return types.NewRawLine(string(c.text)) - +func (c *current) onListElementContinuationElement989() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonListElementContinuationElement322() (interface{}, error) { +func (p *parser) callonListElementContinuationElement989() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement322() + return p.cur.onListElementContinuationElement989() } -func (c *current) onListElementContinuationElement346() (interface{}, error) { - +func (c *current) onListElementContinuationElement1012() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonListElementContinuationElement346() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1012() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement346() + return p.cur.onListElementContinuationElement1012() } -func (c *current) onListElementContinuationElement349(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 (c *current) onListElementContinuationElement1016() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement349() (bool, error) { +func (p *parser) callonListElementContinuationElement1016() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement349(stack["separator"]) + return p.cur.onListElementContinuationElement1016() } -func (c *current) onListElementContinuationElement343(separator interface{}) (interface{}, error) { - return separator, nil +func (c *current) onListElementContinuationElement1006(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement343() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1006() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement343(stack["separator"]) + return p.cur.onListElementContinuationElement1006(stack["content"]) } -func (c *current) onListElementContinuationElement360() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement985(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonListElementContinuationElement360() (interface{}, error) { +func (p *parser) callonListElementContinuationElement985() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement360() + return p.cur.onListElementContinuationElement985(stack["line"]) } -func (c *current) onListElementContinuationElement363() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement1023(content interface{}) (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Literal) + return true, nil + } -func (p *parser) callonListElementContinuationElement363() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1023() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement363() + return p.cur.onListElementContinuationElement1023(stack["content"]) } -func (c *current) onListElementContinuationElement373() (interface{}, error) { +func (c *current) onListElementContinuationElement1030() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement373() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1030() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement373() + return p.cur.onListElementContinuationElement1030() } -func (c *current) onListElementContinuationElement376() (interface{}, error) { +func (c *current) onListElementContinuationElement1033() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement376() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1033() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement376() + return p.cur.onListElementContinuationElement1033() } -func (c *current) onListElementContinuationElement386() (interface{}, error) { - return string(c.text), nil - +func (c *current) onListElementContinuationElement1026() (interface{}, error) { + return types.NewBlockDelimiter(types.Literal, string(c.text)) } -func (p *parser) callonListElementContinuationElement386() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1026() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement386() + return p.cur.onListElementContinuationElement1026() } -func (c *current) onListElementContinuationElement389() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement966(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Literal, content.([]interface{})) + } -func (p *parser) callonListElementContinuationElement389() (interface{}, error) { +func (p *parser) callonListElementContinuationElement966() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement389() + return p.cur.onListElementContinuationElement966(stack["content"]) } -func (c *current) onListElementContinuationElement399() (interface{}, error) { +func (c *current) onListElementContinuationElement1054() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement399() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1054() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement399() + return p.cur.onListElementContinuationElement1054() } -func (c *current) onListElementContinuationElement402() (interface{}, error) { +func (c *current) onListElementContinuationElement1057() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement402() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1057() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1057() +} + +func (c *current) onListElementContinuationElement1048() (interface{}, error) { + return types.NewBlankLine() + +} + +func (p *parser) callonListElementContinuationElement1048() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement402() + return p.cur.onListElementContinuationElement1048() } -func (c *current) onListElementContinuationElement412() (interface{}, error) { +func (c *current) onListElementContinuationElement1066() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement412() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1066() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement412() + return p.cur.onListElementContinuationElement1066() } -func (c *current) onListElementContinuationElement415() (interface{}, error) { +func (c *current) onListElementContinuationElement1070() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement415() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1070() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1070() +} + +func (c *current) onListElementContinuationElement1045(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) + +} + +func (p *parser) callonListElementContinuationElement1045() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement415() + return p.cur.onListElementContinuationElement1045(stack["content"]) } -func (c *current) onListElementContinuationElement425() (interface{}, error) { +func (c *current) onListElementContinuationElement1089() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement425() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1089() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement425() + return p.cur.onListElementContinuationElement1089() } -func (c *current) onListElementContinuationElement428() (interface{}, error) { +func (c *current) onListElementContinuationElement1092() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement428() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1092() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement428() + return p.cur.onListElementContinuationElement1092() } -func (c *current) onListElementContinuationElement438() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement1083() (interface{}, error) { + return types.NewBlankLine() } -func (p *parser) callonListElementContinuationElement438() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1083() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement438() + return p.cur.onListElementContinuationElement1083() } -func (c *current) onListElementContinuationElement441() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement1101() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonListElementContinuationElement441() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1101() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement441() + return p.cur.onListElementContinuationElement1101() } -func (c *current) onListElementContinuationElement451() (interface{}, error) { +func (c *current) onListElementContinuationElement1105() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil - } -func (p *parser) callonListElementContinuationElement451() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1105() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement451() + return p.cur.onListElementContinuationElement1105() } -func (c *current) onListElementContinuationElement454() (interface{}, error) { - // TODO: just use "\n" - return string(c.text), nil +func (c *current) onListElementContinuationElement1080(content interface{}) (interface{}, error) { + return types.NewRawLine(content.(string)) + } -func (p *parser) callonListElementContinuationElement454() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1080() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement454() + return p.cur.onListElementContinuationElement1080(stack["content"]) } -func (c *current) onListElementContinuationElement351(delimiter interface{}) (interface{}, error) { - return delimiter, nil +func (c *current) onListElementContinuationElement1115() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement351() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1115() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement351(stack["delimiter"]) + return p.cur.onListElementContinuationElement1115() } -func (c *current) onListElementContinuationElement462() (interface{}, error) { - return strings.TrimSpace(string(c.text)), nil +func (c *current) onListElementContinuationElement1118(content interface{}) (bool, error) { + return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonListElementContinuationElement462() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1118() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement462() + return p.cur.onListElementContinuationElement1118(stack["content"]) } -func (c *current) onListElementContinuationElement466() (interface{}, error) { +func (c *current) onListElementContinuationElement1120() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement466() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1120() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement466() + return p.cur.onListElementContinuationElement1120() } -func (c *current) onListElementContinuationElement216(content interface{}) (interface{}, error) { - // do not retain the EOL chars +func (c *current) onListElementContinuationElement1112(content interface{}) (interface{}, error) { return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement216() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1112() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement216(stack["content"]) + return p.cur.onListElementContinuationElement1112(stack["content"]) } -func (c *current) onListElementContinuationElement184(content interface{}) (interface{}, error) { - if content == nil { - return nil, nil - } - return types.NewParagraph(content) +func (c *current) onListElementContinuationElement1042(firstLine, otherLines interface{}) (interface{}, error) { + return types.NewDelimitedBlock(types.MarkdownQuote, append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonListElementContinuationElement184() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1042() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement184(stack["content"]) + return p.cur.onListElementContinuationElement1042(stack["firstLine"], stack["otherLines"]) } -func (c *current) onListElementContinuationElement475() (interface{}, error) { - log.Debug("matched multiple spaces") - return string(c.text), nil +func (c *current) onListElementContinuationElement1129() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Passthrough), nil } -func (p *parser) callonListElementContinuationElement475() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1129() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement475() + return p.cur.onListElementContinuationElement1129() } -func (c *current) onListElementContinuationElement479() (interface{}, error) { - return types.NewRawLine(string(c.text)) +func (c *current) onListElementContinuationElement1134() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement479() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1134() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement479() + return p.cur.onListElementContinuationElement1134() } -func (c *current) onListElementContinuationElement483() (interface{}, error) { +func (c *current) onListElementContinuationElement1137() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement483() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1137() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement483() + return p.cur.onListElementContinuationElement1137() } -func (c *current) onListElementContinuationElement473(content interface{}) (interface{}, error) { - return types.NewParagraph(content) - +func (c *current) onListElementContinuationElement1130() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonListElementContinuationElement473() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1130() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement473(stack["content"]) + return p.cur.onListElementContinuationElement1130() } -func (c *current) onListElementContinuationElement150(term, separator, description interface{}) (interface{}, error) { - return types.NewLabeledListElement(len(separator.(string))-1, term, description) +func (c *current) onListElementContinuationElement1144() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Passthrough) + return true, nil } -func (p *parser) callonListElementContinuationElement150() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1144() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement150(stack["term"], stack["separator"], stack["description"]) + return p.cur.onListElementContinuationElement1144() } -func (c *current) onListElementContinuationElement501() (interface{}, error) { +func (c *current) onListElementContinuationElement1155() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement501() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1155() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement501() + return p.cur.onListElementContinuationElement1155() } -func (c *current) onListElementContinuationElement504() (interface{}, error) { +func (c *current) onListElementContinuationElement1158() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement504() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1158() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement504() + return p.cur.onListElementContinuationElement1158() } -func (c *current) onListElementContinuationElement495() (interface{}, error) { - return types.NewBlankLine() +func (c *current) onListElementContinuationElement1151() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) +} + +func (p *parser) callonListElementContinuationElement1151() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1151() +} + +func (c *current) onListElementContinuationElement1174() (interface{}, error) { + // content is NOT mandatory + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement495() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1174() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement495() + return p.cur.onListElementContinuationElement1174() } -func (c *current) onListElementContinuationElement515() (interface{}, error) { +func (c *current) onListElementContinuationElement1178() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil +} +func (p *parser) callonListElementContinuationElement1178() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1178() } -func (p *parser) callonListElementContinuationElement515() (interface{}, error) { +func (c *current) onListElementContinuationElement1168(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) + +} + +func (p *parser) callonListElementContinuationElement1168() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement515() + return p.cur.onListElementContinuationElement1168(stack["content"]) +} + +func (c *current) onListElementContinuationElement1147(line interface{}) (interface{}, error) { + return line, nil + } -func (c *current) onListElementContinuationElement525() (interface{}, error) { - log.Debug("matched multiple spaces") +func (p *parser) callonListElementContinuationElement1147() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1147(stack["line"]) +} + +func (c *current) onListElementContinuationElement1191() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement525() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1191() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement525() + return p.cur.onListElementContinuationElement1191() } -func (c *current) onListElementContinuationElement534() (interface{}, error) { +func (c *current) onListElementContinuationElement1194() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement534() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1194() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement534() + return p.cur.onListElementContinuationElement1194() } -func (c *current) onListElementContinuationElement543() (interface{}, error) { - return types.NewStringElement(string(c.text)) - +func (c *current) onListElementContinuationElement1187() (interface{}, error) { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) } -func (p *parser) callonListElementContinuationElement543() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1187() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement543() + return p.cur.onListElementContinuationElement1187() } -func (c *current) onListElementContinuationElement548() (bool, error) { - return c.isSubstitutionEnabled(Attributes) +func (c *current) onListElementContinuationElement1127(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Passthrough, content.([]interface{})) } -func (p *parser) callonListElementContinuationElement548() (bool, error) { +func (p *parser) callonListElementContinuationElement1127() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement548() + return p.cur.onListElementContinuationElement1127(stack["content"]) } -func (c *current) onListElementContinuationElement555() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement1205() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Quote), nil } -func (p *parser) callonListElementContinuationElement555() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1205() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement555() + return p.cur.onListElementContinuationElement1205() } -func (c *current) onListElementContinuationElement567() (interface{}, error) { +func (c *current) onListElementContinuationElement1210() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement567() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1210() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement567() + return p.cur.onListElementContinuationElement1210() } -func (c *current) onListElementContinuationElement569() (interface{}, error) { +func (c *current) onListElementContinuationElement1213() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} - return strconv.Atoi(string(c.text)) +func (p *parser) callonListElementContinuationElement1213() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1213() +} +func (c *current) onListElementContinuationElement1206() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) } -func (p *parser) callonListElementContinuationElement569() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1206() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement569() + return p.cur.onListElementContinuationElement1206() } -func (c *current) onListElementContinuationElement562(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElementContinuationElement1220() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Quote) + return true, nil } -func (p *parser) callonListElementContinuationElement562() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1220() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement562(stack["start"]) + return p.cur.onListElementContinuationElement1220() } -func (c *current) onListElementContinuationElement551(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) +func (c *current) onListElementContinuationElement1231() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonListElementContinuationElement551() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1231() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement551(stack["name"], stack["start"]) + return p.cur.onListElementContinuationElement1231() } -func (c *current) onListElementContinuationElement577() (interface{}, error) { +func (c *current) onListElementContinuationElement1234() (interface{}, error) { + // TODO: just use "\n" return string(c.text), nil +} +func (p *parser) callonListElementContinuationElement1234() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1234() } -func (p *parser) callonListElementContinuationElement577() (interface{}, error) { +func (c *current) onListElementContinuationElement1227() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) +} + +func (p *parser) callonListElementContinuationElement1227() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement577() + return p.cur.onListElementContinuationElement1227() } -func (c *current) onListElementContinuationElement589() (interface{}, error) { +func (c *current) onListElementContinuationElement1250() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonListElementContinuationElement589() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1250() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement589() + return p.cur.onListElementContinuationElement1250() } -func (c *current) onListElementContinuationElement591() (interface{}, error) { +func (c *current) onListElementContinuationElement1254() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} - return strconv.Atoi(string(c.text)) +func (p *parser) callonListElementContinuationElement1254() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1254() +} + +func (c *current) onListElementContinuationElement1244(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement591() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1244() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement591() + return p.cur.onListElementContinuationElement1244(stack["content"]) } -func (c *current) onListElementContinuationElement584(start interface{}) (interface{}, error) { - return start, nil +func (c *current) onListElementContinuationElement1223(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonListElementContinuationElement584() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1223() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement584(stack["start"]) + return p.cur.onListElementContinuationElement1223(stack["line"]) } -func (c *current) onListElementContinuationElement573(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) +func (c *current) onListElementContinuationElement1266() (interface{}, error) { + return string(c.text), nil + } -func (p *parser) callonListElementContinuationElement573() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1266() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement573(stack["name"], stack["start"]) + return p.cur.onListElementContinuationElement1266() } -func (c *current) onListElementContinuationElement599() (interface{}, error) { +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 (p *parser) callonListElementContinuationElement599() (interface{}, error) { +func (c *current) onListElementContinuationElement1262() (interface{}, error) { + return types.NewBlockDelimiter(types.Quote, string(c.text)) +} + +func (p *parser) callonListElementContinuationElement1262() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement599() + return p.cur.onListElementContinuationElement1262() } -func (c *current) onListElementContinuationElement595(name interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1203(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Quote, content.([]interface{})) - return types.NewAttributeSubstitution(name.(string)) } -func (p *parser) callonListElementContinuationElement595() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1203() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement595(stack["name"]) + return p.cur.onListElementContinuationElement1203(stack["content"]) } -func (c *current) onListElementContinuationElement546(element interface{}) (interface{}, error) { - return element, nil +func (c *current) onListElementContinuationElement1280() (bool, error) { + // only accept if not already in a delimited block of this kind + return !c.isWithinDelimitedBlockOfKind(types.Sidebar), nil } -func (p *parser) callonListElementContinuationElement546() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1280() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement546(stack["element"]) + return p.cur.onListElementContinuationElement1280() } -func (c *current) onListElementContinuationElement605() (interface{}, error) { - // standalone '{' - return types.NewStringElement(string(c.text)) +func (c *current) onListElementContinuationElement1285() (interface{}, error) { + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement605() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1285() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement605() + return p.cur.onListElementContinuationElement1285() } -func (c *current) onListElementContinuationElement530(element interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1288() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil +} - return element, nil +func (p *parser) callonListElementContinuationElement1288() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1288() +} +func (c *current) onListElementContinuationElement1281() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonListElementContinuationElement530() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1281() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement530(stack["element"]) + return p.cur.onListElementContinuationElement1281() } -func (c *current) onListElementContinuationElement523(elements interface{}) (interface{}, error) { - return types.Reduce(elements.([]interface{}), strings.TrimSpace), nil +func (c *current) onListElementContinuationElement1295() (bool, error) { + // only accept if the delimiter matches the current delimited block or if no kind is registered yet + c.setWithinDelimitedBlockOfKind(types.Sidebar) + return true, nil } -func (p *parser) callonListElementContinuationElement523() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1295() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement523(stack["elements"]) + return p.cur.onListElementContinuationElement1295() } -func (c *current) onListElementContinuationElement608() (interface{}, error) { - // TODO: just use "\n" +func (c *current) onListElementContinuationElement1306() (interface{}, error) { return string(c.text), nil + } -func (p *parser) callonListElementContinuationElement608() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1306() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement608() + return p.cur.onListElementContinuationElement1306() } -func (c *current) onListElementContinuationElement511(name, value interface{}) (interface{}, error) { - d := types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace)) - return d, nil - +func (c *current) onListElementContinuationElement1309() (interface{}, error) { + // TODO: just use "\n" + return string(c.text), nil } -func (p *parser) callonListElementContinuationElement511() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1309() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement511(stack["name"], stack["value"]) + return p.cur.onListElementContinuationElement1309() } -func (c *current) onListElementContinuationElement619() (interface{}, error) { - return string(c.text), nil - +func (c *current) onListElementContinuationElement1302() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonListElementContinuationElement619() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1302() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement619() + return p.cur.onListElementContinuationElement1302() } -func (c *current) onListElementContinuationElement626() (interface{}, error) { +func (c *current) onListElementContinuationElement1325() (interface{}, error) { + // content is NOT mandatory return string(c.text), nil } -func (p *parser) callonListElementContinuationElement626() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1325() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement626() + return p.cur.onListElementContinuationElement1325() } -func (c *current) onListElementContinuationElement629() (interface{}, error) { +func (c *current) onListElementContinuationElement1329() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement629() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1329() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement629() + return p.cur.onListElementContinuationElement1329() } -func (c *current) onListElementContinuationElement615(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string)) +func (c *current) onListElementContinuationElement1319(content interface{}) (interface{}, error) { + + return types.NewRawLine(content.(string)) + } -func (p *parser) callonListElementContinuationElement615() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1319() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement615(stack["name"]) + return p.cur.onListElementContinuationElement1319(stack["content"]) } -func (c *current) onListElementContinuationElement640() (interface{}, error) { - return string(c.text), nil +func (c *current) onListElementContinuationElement1298(line interface{}) (interface{}, error) { + return line, nil } -func (p *parser) callonListElementContinuationElement640() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1298() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement640() + return p.cur.onListElementContinuationElement1298(stack["line"]) } -func (c *current) onListElementContinuationElement647() (interface{}, error) { +func (c *current) onListElementContinuationElement1341() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement647() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1341() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement647() + return p.cur.onListElementContinuationElement1341() } -func (c *current) onListElementContinuationElement650() (interface{}, error) { +func (c *current) onListElementContinuationElement1344() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement650() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1344() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement650() + return p.cur.onListElementContinuationElement1344() } -func (c *current) onListElementContinuationElement636(name interface{}) (interface{}, error) { - return types.NewAttributeReset(name.(string)) +func (c *current) onListElementContinuationElement1337() (interface{}, error) { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) } -func (p *parser) callonListElementContinuationElement636() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1337() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement636(stack["name"]) + return p.cur.onListElementContinuationElement1337() +} + +func (c *current) onListElementContinuationElement1278(content interface{}) (interface{}, error) { + c.unsetWithinDelimitedBlock() + return types.NewDelimitedBlock(types.Sidebar, content.([]interface{})) + } -func (c *current) onListElementContinuationElement669() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1278() (interface{}, error) { + stack := p.vstack[len(p.vstack)-1] + _ = stack + return p.cur.onListElementContinuationElement1278(stack["content"]) +} + +func (c *current) onListElementContinuationElement1364() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement669() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1364() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement669() + return p.cur.onListElementContinuationElement1364() } -func (c *current) onListElementContinuationElement672() (interface{}, error) { +func (c *current) onListElementContinuationElement1367() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement672() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1367() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement672() + return p.cur.onListElementContinuationElement1367() } -func (c *current) onListElementContinuationElement680() (interface{}, error) { +func (c *current) onListElementContinuationElement1375() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement680() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1375() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement680() + return p.cur.onListElementContinuationElement1375() } -func (c *current) onListElementContinuationElement658() (interface{}, error) { +func (c *current) onListElementContinuationElement1353() (interface{}, error) { return types.NewThematicBreak() } -func (p *parser) callonListElementContinuationElement658() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1353() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement658() + return p.cur.onListElementContinuationElement1353() } -func (c *current) onListElementContinuationElement693() (interface{}, error) { +func (c *current) onListElementContinuationElement1387() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement693() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1387() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement693() + return p.cur.onListElementContinuationElement1387() } -func (c *current) onListElementContinuationElement696() (interface{}, error) { +func (c *current) onListElementContinuationElement1390() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement696() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1390() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement696() + return p.cur.onListElementContinuationElement1390() } -func (c *current) onListElementContinuationElement713() (interface{}, error) { +func (c *current) onListElementContinuationElement1407() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement713() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1407() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement713() + return p.cur.onListElementContinuationElement1407() } -func (c *current) onListElementContinuationElement719() (interface{}, error) { +func (c *current) onListElementContinuationElement1413() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement719() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1413() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement719() + return p.cur.onListElementContinuationElement1413() } -func (c *current) onListElementContinuationElement717(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1411(content interface{}) (interface{}, error) { return types.NewRawContent(content.(string)) } -func (p *parser) callonListElementContinuationElement717() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1411() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement717(stack["content"]) + return p.cur.onListElementContinuationElement1411(stack["content"]) } -func (c *current) onListElementContinuationElement709(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1403(content interface{}) (interface{}, error) { return types.NewTableCell(content.(types.RawContent)) } -func (p *parser) callonListElementContinuationElement709() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1403() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement709(stack["content"]) + return p.cur.onListElementContinuationElement1403(stack["content"]) } -func (c *current) onListElementContinuationElement723() (interface{}, error) { +func (c *current) onListElementContinuationElement1417() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement723() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1417() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement723() + return p.cur.onListElementContinuationElement1417() } -func (c *current) onListElementContinuationElement737() (interface{}, error) { +func (c *current) onListElementContinuationElement1431() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement737() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1431() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement737() + return p.cur.onListElementContinuationElement1431() } -func (c *current) onListElementContinuationElement740() (interface{}, error) { +func (c *current) onListElementContinuationElement1434() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement740() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1434() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement740() + return p.cur.onListElementContinuationElement1434() } -func (c *current) onListElementContinuationElement731() (interface{}, error) { +func (c *current) onListElementContinuationElement1425() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonListElementContinuationElement731() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1425() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement731() + return p.cur.onListElementContinuationElement1425() } -func (c *current) onListElementContinuationElement705(cells interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1399(cells interface{}) (interface{}, error) { return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonListElementContinuationElement705() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1399() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement705(stack["cells"]) + return p.cur.onListElementContinuationElement1399(stack["cells"]) } -func (c *current) onListElementContinuationElement757() (interface{}, error) { +func (c *current) onListElementContinuationElement1451() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement757() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1451() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement757() + return p.cur.onListElementContinuationElement1451() } -func (c *current) onListElementContinuationElement760() (interface{}, error) { +func (c *current) onListElementContinuationElement1454() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement760() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1454() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement760() + return p.cur.onListElementContinuationElement1454() } -func (c *current) onListElementContinuationElement781() (interface{}, error) { +func (c *current) onListElementContinuationElement1475() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement781() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1475() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement781() + return p.cur.onListElementContinuationElement1475() } -func (c *current) onListElementContinuationElement784() (interface{}, error) { +func (c *current) onListElementContinuationElement1478() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement784() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1478() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement784() + return p.cur.onListElementContinuationElement1478() } -func (c *current) onListElementContinuationElement800() (interface{}, error) { +func (c *current) onListElementContinuationElement1494() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement800() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1494() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement800() + return p.cur.onListElementContinuationElement1494() } -func (c *current) onListElementContinuationElement803() (interface{}, error) { +func (c *current) onListElementContinuationElement1497() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement803() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1497() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement803() + return p.cur.onListElementContinuationElement1497() } -func (c *current) onListElementContinuationElement794() (interface{}, error) { +func (c *current) onListElementContinuationElement1488() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonListElementContinuationElement794() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1488() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement794() + return p.cur.onListElementContinuationElement1488() } -func (c *current) onListElementContinuationElement812() (interface{}, error) { +func (c *current) onListElementContinuationElement1506() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement812() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1506() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement812() + return p.cur.onListElementContinuationElement1506() } -func (c *current) onListElementContinuationElement818() (interface{}, error) { +func (c *current) onListElementContinuationElement1512() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement818() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1512() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement818() + return p.cur.onListElementContinuationElement1512() } -func (c *current) onListElementContinuationElement816(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1510(content interface{}) (interface{}, error) { return types.NewRawContent(content.(string)) } -func (p *parser) callonListElementContinuationElement816() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1510() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement816(stack["content"]) + return p.cur.onListElementContinuationElement1510(stack["content"]) } -func (c *current) onListElementContinuationElement774(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1468(content interface{}) (interface{}, error) { return types.NewTableCell(content.(types.RawContent)) } -func (p *parser) callonListElementContinuationElement774() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1468() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement774(stack["content"]) + return p.cur.onListElementContinuationElement1468(stack["content"]) } -func (c *current) onListElementContinuationElement822() (interface{}, error) { +func (c *current) onListElementContinuationElement1516() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement822() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1516() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement822() + return p.cur.onListElementContinuationElement1516() } -func (c *current) onListElementContinuationElement771(cell interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1465(cell interface{}) (interface{}, error) { return cell, nil } -func (p *parser) callonListElementContinuationElement771() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1465() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement771(stack["cell"]) + return p.cur.onListElementContinuationElement1465(stack["cell"]) } -func (c *current) onListElementContinuationElement837() (interface{}, error) { +func (c *current) onListElementContinuationElement1531() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement837() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1531() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement837() + return p.cur.onListElementContinuationElement1531() } -func (c *current) onListElementContinuationElement840() (interface{}, error) { +func (c *current) onListElementContinuationElement1534() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement840() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1534() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement840() + return p.cur.onListElementContinuationElement1534() } -func (c *current) onListElementContinuationElement831() (interface{}, error) { +func (c *current) onListElementContinuationElement1525() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonListElementContinuationElement831() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1525() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement831() + return p.cur.onListElementContinuationElement1525() } -func (c *current) onListElementContinuationElement852() (interface{}, error) { +func (c *current) onListElementContinuationElement1546() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement852() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1546() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement852() + return p.cur.onListElementContinuationElement1546() } -func (c *current) onListElementContinuationElement855() (interface{}, error) { +func (c *current) onListElementContinuationElement1549() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement855() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1549() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement855() + return p.cur.onListElementContinuationElement1549() } -func (c *current) onListElementContinuationElement750(cells interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1444(cells interface{}) (interface{}, error) { return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonListElementContinuationElement750() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1444() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement750(stack["cells"]) + return p.cur.onListElementContinuationElement1444(stack["cells"]) } -func (c *current) onListElementContinuationElement871() (interface{}, error) { +func (c *current) onListElementContinuationElement1565() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement871() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1565() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement871() + return p.cur.onListElementContinuationElement1565() } -func (c *current) onListElementContinuationElement874() (interface{}, error) { +func (c *current) onListElementContinuationElement1568() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement874() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1568() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement874() + return p.cur.onListElementContinuationElement1568() } -func (c *current) onListElementContinuationElement892() (interface{}, error) { +func (c *current) onListElementContinuationElement1586() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement892() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1586() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement892() + return p.cur.onListElementContinuationElement1586() } -func (c *current) onListElementContinuationElement895() (interface{}, error) { +func (c *current) onListElementContinuationElement1589() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement895() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1589() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement895() + return p.cur.onListElementContinuationElement1589() } -func (c *current) onListElementContinuationElement911() (interface{}, error) { +func (c *current) onListElementContinuationElement1605() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement911() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1605() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement911() + return p.cur.onListElementContinuationElement1605() } -func (c *current) onListElementContinuationElement914() (interface{}, error) { +func (c *current) onListElementContinuationElement1608() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement914() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1608() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement914() + return p.cur.onListElementContinuationElement1608() } -func (c *current) onListElementContinuationElement905() (interface{}, error) { +func (c *current) onListElementContinuationElement1599() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonListElementContinuationElement905() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1599() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement905() + return p.cur.onListElementContinuationElement1599() } -func (c *current) onListElementContinuationElement923() (interface{}, error) { +func (c *current) onListElementContinuationElement1617() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement923() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1617() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement923() + return p.cur.onListElementContinuationElement1617() } -func (c *current) onListElementContinuationElement929() (interface{}, error) { +func (c *current) onListElementContinuationElement1623() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement929() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1623() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement929() + return p.cur.onListElementContinuationElement1623() } -func (c *current) onListElementContinuationElement927(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1621(content interface{}) (interface{}, error) { return types.NewRawContent(content.(string)) } -func (p *parser) callonListElementContinuationElement927() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1621() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement927(stack["content"]) + return p.cur.onListElementContinuationElement1621(stack["content"]) } -func (c *current) onListElementContinuationElement885(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1579(content interface{}) (interface{}, error) { return types.NewTableCell(content.(types.RawContent)) } -func (p *parser) callonListElementContinuationElement885() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1579() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement885(stack["content"]) + return p.cur.onListElementContinuationElement1579(stack["content"]) } -func (c *current) onListElementContinuationElement933() (interface{}, error) { +func (c *current) onListElementContinuationElement1627() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement933() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1627() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement933() + return p.cur.onListElementContinuationElement1627() } -func (c *current) onListElementContinuationElement947() (interface{}, error) { +func (c *current) onListElementContinuationElement1641() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement947() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1641() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement947() + return p.cur.onListElementContinuationElement1641() } -func (c *current) onListElementContinuationElement950() (interface{}, error) { +func (c *current) onListElementContinuationElement1644() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement950() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1644() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement950() + return p.cur.onListElementContinuationElement1644() } -func (c *current) onListElementContinuationElement941() (interface{}, error) { +func (c *current) onListElementContinuationElement1635() (interface{}, error) { return types.NewBlankLine() } -func (p *parser) callonListElementContinuationElement941() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1635() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement941() + return p.cur.onListElementContinuationElement1635() } -func (c *current) onListElementContinuationElement864(cells interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1558(cells interface{}) (interface{}, error) { return types.NewTableRow(cells.([]interface{})) } -func (p *parser) callonListElementContinuationElement864() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1558() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement864(stack["cells"]) + return p.cur.onListElementContinuationElement1558(stack["cells"]) } -func (c *current) onListElementContinuationElement961() (interface{}, error) { +func (c *current) onListElementContinuationElement1655() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement961() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1655() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement961() + return p.cur.onListElementContinuationElement1655() } -func (c *current) onListElementContinuationElement964() (interface{}, error) { +func (c *current) onListElementContinuationElement1658() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement964() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1658() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement964() + return p.cur.onListElementContinuationElement1658() } -func (c *current) onListElementContinuationElement689(header, rows interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1383(header, rows interface{}) (interface{}, error) { return types.NewTable(header, rows.([]interface{})) } -func (p *parser) callonListElementContinuationElement689() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1383() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement689(stack["header"], stack["rows"]) + return p.cur.onListElementContinuationElement1383(stack["header"], stack["rows"]) } -func (c *current) onListElementContinuationElement979() (interface{}, error) { +func (c *current) onListElementContinuationElement1673() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement979() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1673() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement979() + return p.cur.onListElementContinuationElement1673() } -func (c *current) onListElementContinuationElement983() (interface{}, error) { +func (c *current) onListElementContinuationElement1677() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement983() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1677() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement983() + return p.cur.onListElementContinuationElement1677() } -func (c *current) onListElementContinuationElement973(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1667(content interface{}) (interface{}, error) { return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonListElementContinuationElement973() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1667() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement973(stack["content"]) + return p.cur.onListElementContinuationElement1667(stack["content"]) } -func (c *current) onListElementContinuationElement994() (interface{}, error) { +func (c *current) onListElementContinuationElement1688() (interface{}, error) { return types.Tip, nil } -func (p *parser) callonListElementContinuationElement994() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1688() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement994() + return p.cur.onListElementContinuationElement1688() } -func (c *current) onListElementContinuationElement996() (interface{}, error) { +func (c *current) onListElementContinuationElement1690() (interface{}, error) { return types.Note, nil } -func (p *parser) callonListElementContinuationElement996() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1690() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement996() + return p.cur.onListElementContinuationElement1690() } -func (c *current) onListElementContinuationElement998() (interface{}, error) { +func (c *current) onListElementContinuationElement1692() (interface{}, error) { return types.Important, nil } -func (p *parser) callonListElementContinuationElement998() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1692() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement998() + return p.cur.onListElementContinuationElement1692() } -func (c *current) onListElementContinuationElement1000() (interface{}, error) { +func (c *current) onListElementContinuationElement1694() (interface{}, error) { return types.Warning, nil } -func (p *parser) callonListElementContinuationElement1000() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1694() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1000() + return p.cur.onListElementContinuationElement1694() } -func (c *current) onListElementContinuationElement1002() (interface{}, error) { +func (c *current) onListElementContinuationElement1696() (interface{}, error) { return types.Caution, nil } -func (p *parser) callonListElementContinuationElement1002() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1696() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1002() + return p.cur.onListElementContinuationElement1696() } -func (c *current) onListElementContinuationElement1009() (interface{}, error) { +func (c *current) onListElementContinuationElement1703() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1009() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1703() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1009() + return p.cur.onListElementContinuationElement1703() } -func (c *current) onListElementContinuationElement1012(content interface{}) (bool, error) { +func (c *current) onListElementContinuationElement1706(content interface{}) (bool, error) { return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonListElementContinuationElement1012() (bool, error) { +func (p *parser) callonListElementContinuationElement1706() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1012(stack["content"]) + return p.cur.onListElementContinuationElement1706(stack["content"]) } -func (c *current) onListElementContinuationElement1014() (interface{}, error) { +func (c *current) onListElementContinuationElement1708() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1014() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1708() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1014() + return p.cur.onListElementContinuationElement1708() } -func (c *current) onListElementContinuationElement1006(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1700(content interface{}) (interface{}, error) { return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement1006() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1700() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1006(stack["content"]) + return p.cur.onListElementContinuationElement1700(stack["content"]) } -func (c *current) onListElementContinuationElement1029() (interface{}, error) { +func (c *current) onListElementContinuationElement1723() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1029() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1723() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1029() + return p.cur.onListElementContinuationElement1723() } -func (c *current) onListElementContinuationElement1031() (interface{}, error) { +func (c *current) onListElementContinuationElement1725() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1031() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1725() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1031() + return p.cur.onListElementContinuationElement1725() } -func (c *current) onListElementContinuationElement1044() (interface{}, error) { +func (c *current) onListElementContinuationElement1738() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1044() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1738() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1044() + return p.cur.onListElementContinuationElement1738() } -func (c *current) onListElementContinuationElement1048() (interface{}, error) { +func (c *current) onListElementContinuationElement1742() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1048() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1742() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1048() + return p.cur.onListElementContinuationElement1742() } -func (c *current) onListElementContinuationElement1038(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1732(content interface{}) (interface{}, error) { return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonListElementContinuationElement1038() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1732() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1038(stack["content"]) + return p.cur.onListElementContinuationElement1732(stack["content"]) } -func (c *current) onListElementContinuationElement1058() (interface{}, error) { +func (c *current) onListElementContinuationElement1752() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1058() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1752() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1058() + return p.cur.onListElementContinuationElement1752() } -func (c *current) onListElementContinuationElement1061(content interface{}) (bool, error) { +func (c *current) onListElementContinuationElement1755(content interface{}) (bool, error) { return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonListElementContinuationElement1061() (bool, error) { +func (p *parser) callonListElementContinuationElement1755() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1061(stack["content"]) + return p.cur.onListElementContinuationElement1755(stack["content"]) } -func (c *current) onListElementContinuationElement1063() (interface{}, error) { +func (c *current) onListElementContinuationElement1757() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1063() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1757() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1063() + return p.cur.onListElementContinuationElement1757() } -func (c *current) onListElementContinuationElement1055(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1749(content interface{}) (interface{}, error) { return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement1055() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1749() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1055(stack["content"]) + return p.cur.onListElementContinuationElement1749(stack["content"]) } -func (c *current) onListElementContinuationElement1023(line interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1717(line interface{}) (interface{}, error) { return line, nil } -func (p *parser) callonListElementContinuationElement1023() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1717() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1023(stack["line"]) + return p.cur.onListElementContinuationElement1717(stack["line"]) } -func (c *current) onListElementContinuationElement990(kind, firstLine, otherLines interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1684(kind, firstLine, otherLines interface{}) (interface{}, error) { return types.NewAdmonitionParagraph(kind.(string), append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonListElementContinuationElement990() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1684() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement990(stack["kind"], stack["firstLine"], stack["otherLines"]) + return p.cur.onListElementContinuationElement1684(stack["kind"], stack["firstLine"], stack["otherLines"]) } -func (c *current) onListElementContinuationElement1078() (interface{}, error) { - log.Debug("matched multiple spaces") +func (c *current) onListElementContinuationElement1772() (interface{}, error) { + // log.Debug("matched multiple spaces") return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1078() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1772() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1078() + return p.cur.onListElementContinuationElement1772() } -func (c *current) onListElementContinuationElement1076() (interface{}, error) { +func (c *current) onListElementContinuationElement1770() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1076() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1770() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1076() + return p.cur.onListElementContinuationElement1770() } -func (c *current) onListElementContinuationElement1083(content interface{}) (bool, error) { +func (c *current) onListElementContinuationElement1777(content interface{}) (bool, error) { return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonListElementContinuationElement1083() (bool, error) { +func (p *parser) callonListElementContinuationElement1777() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1083(stack["content"]) + return p.cur.onListElementContinuationElement1777(stack["content"]) } -func (c *current) onListElementContinuationElement1085() (interface{}, error) { +func (c *current) onListElementContinuationElement1779() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1085() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1779() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1085() + return p.cur.onListElementContinuationElement1779() } -func (c *current) onListElementContinuationElement1073(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1767(content interface{}) (interface{}, error) { return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement1073() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1767() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1073(stack["content"]) + return p.cur.onListElementContinuationElement1767(stack["content"]) } -func (c *current) onListElementContinuationElement1101() (interface{}, error) { +func (c *current) onListElementContinuationElement1795() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1101() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1795() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1101() + return p.cur.onListElementContinuationElement1795() } -func (c *current) onListElementContinuationElement1105() (interface{}, error) { +func (c *current) onListElementContinuationElement1799() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1105() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1799() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1105() + return p.cur.onListElementContinuationElement1799() } -func (c *current) onListElementContinuationElement1095(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1789(content interface{}) (interface{}, error) { return types.NewSingleLineComment(content.(string)) } -func (p *parser) callonListElementContinuationElement1095() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1789() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1095(stack["content"]) + return p.cur.onListElementContinuationElement1789(stack["content"]) } -func (c *current) onListElementContinuationElement1115() (interface{}, error) { +func (c *current) onListElementContinuationElement1809() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1115() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1809() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1115() + return p.cur.onListElementContinuationElement1809() } -func (c *current) onListElementContinuationElement1118(content interface{}) (bool, error) { +func (c *current) onListElementContinuationElement1812(content interface{}) (bool, error) { return len(strings.TrimSpace(string(c.text))) > 0, nil } -func (p *parser) callonListElementContinuationElement1118() (bool, error) { +func (p *parser) callonListElementContinuationElement1812() (bool, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1118(stack["content"]) + return p.cur.onListElementContinuationElement1812(stack["content"]) } -func (c *current) onListElementContinuationElement1120() (interface{}, error) { +func (c *current) onListElementContinuationElement1814() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1120() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1814() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1120() + return p.cur.onListElementContinuationElement1814() } -func (c *current) onListElementContinuationElement1112(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1806(content interface{}) (interface{}, error) { return types.NewRawLine(content.(string)) } -func (p *parser) callonListElementContinuationElement1112() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1806() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1112(stack["content"]) + return p.cur.onListElementContinuationElement1806(stack["content"]) } -func (c *current) onListElementContinuationElement1070(firstLine, otherLines interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1764(firstLine, otherLines interface{}) (interface{}, error) { return types.NewLiteralParagraph(types.LiteralBlockWithSpacesOnFirstLine, append([]interface{}{firstLine}, otherLines.([]interface{})...)) } -func (p *parser) callonListElementContinuationElement1070() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1764() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1070(stack["firstLine"], stack["otherLines"]) + return p.cur.onListElementContinuationElement1764(stack["firstLine"], stack["otherLines"]) } -func (c *current) onListElementContinuationElement1130() (interface{}, error) { +func (c *current) onListElementContinuationElement1824() (interface{}, error) { return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1130() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1824() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1130() + return p.cur.onListElementContinuationElement1824() } -func (c *current) onListElementContinuationElement1134() (interface{}, error) { +func (c *current) onListElementContinuationElement1828() (interface{}, error) { // TODO: just use "\n" return string(c.text), nil } -func (p *parser) callonListElementContinuationElement1134() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1828() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1134() + return p.cur.onListElementContinuationElement1828() } -func (c *current) onListElementContinuationElement1127(content interface{}) (interface{}, error) { +func (c *current) onListElementContinuationElement1821(content interface{}) (interface{}, error) { // do not retain the EOL chars return types.NewParagraph(types.RawLine(content.(string))) } -func (p *parser) callonListElementContinuationElement1127() (interface{}, error) { +func (p *parser) callonListElementContinuationElement1821() (interface{}, error) { stack := p.vstack[len(p.vstack)-1] _ = stack - return p.cur.onListElementContinuationElement1127(stack["content"]) + return p.cur.onListElementContinuationElement1821(stack["content"]) } func (c *current) onListElementContinuationElement1(attributes, element interface{}) (interface{}, error) { @@ -86479,7 +93963,7 @@ func (p *parser) callonShortcutParagraph39() (interface{}, error) { } func (c *current) onShortcutParagraph44(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -86571,7 +94055,7 @@ func (p *parser) callonShortcutParagraph64() (interface{}, error) { } func (c *current) onShortcutParagraph66(prefix interface{}) (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -87109,7 +94593,7 @@ func (p *parser) callonDoubleQuoteBoldTextElement7() (interface{}, error) { } func (c *current) onDoubleQuoteBoldTextElement16() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -87199,7 +94683,7 @@ func (p *parser) callonDoubleQuoteBoldTextElement47() (interface{}, error) { } func (c *current) onDoubleQuoteBoldTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteBoldTextElement36() (interface{}, error) { @@ -87254,7 +94738,7 @@ func (p *parser) callonDoubleQuoteBoldTextElement69() (interface{}, error) { } func (c *current) onDoubleQuoteBoldTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteBoldTextElement58() (interface{}, error) { @@ -87276,7 +94760,7 @@ func (p *parser) callonDoubleQuoteBoldTextElement84() (interface{}, error) { func (c *current) onDoubleQuoteBoldTextElement80(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteBoldTextElement80() (interface{}, error) { @@ -87399,7 +94883,7 @@ func (p *parser) callonDoubleQuoteBoldTextElement132() (interface{}, error) { } func (c *current) onDoubleQuoteBoldTextElement121(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteBoldTextElement121() (interface{}, error) { @@ -87454,7 +94938,7 @@ func (p *parser) callonDoubleQuoteBoldTextElement154() (interface{}, error) { } func (c *current) onDoubleQuoteBoldTextElement143(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteBoldTextElement143() (interface{}, error) { @@ -87476,7 +94960,7 @@ func (p *parser) callonDoubleQuoteBoldTextElement169() (interface{}, error) { func (c *current) onDoubleQuoteBoldTextElement165(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteBoldTextElement165() (interface{}, error) { @@ -87773,7 +95257,7 @@ func (p *parser) callonSingleQuoteBoldTextElement2() (interface{}, error) { } func (c *current) onSingleQuoteBoldTextElement11() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -87863,7 +95347,7 @@ func (p *parser) callonSingleQuoteBoldTextElement42() (interface{}, error) { } func (c *current) onSingleQuoteBoldTextElement31(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteBoldTextElement31() (interface{}, error) { @@ -87918,7 +95402,7 @@ func (p *parser) callonSingleQuoteBoldTextElement64() (interface{}, error) { } func (c *current) onSingleQuoteBoldTextElement53(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteBoldTextElement53() (interface{}, error) { @@ -87940,7 +95424,7 @@ func (p *parser) callonSingleQuoteBoldTextElement79() (interface{}, error) { func (c *current) onSingleQuoteBoldTextElement75(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteBoldTextElement75() (interface{}, error) { @@ -88063,7 +95547,7 @@ func (p *parser) callonSingleQuoteBoldTextElement127() (interface{}, error) { } func (c *current) onSingleQuoteBoldTextElement116(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteBoldTextElement116() (interface{}, error) { @@ -88118,7 +95602,7 @@ func (p *parser) callonSingleQuoteBoldTextElement149() (interface{}, error) { } func (c *current) onSingleQuoteBoldTextElement138(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteBoldTextElement138() (interface{}, error) { @@ -88140,7 +95624,7 @@ func (p *parser) callonSingleQuoteBoldTextElement164() (interface{}, error) { func (c *current) onSingleQuoteBoldTextElement160(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteBoldTextElement160() (interface{}, error) { @@ -88464,7 +95948,7 @@ func (p *parser) callonDoubleQuoteItalicTextElement7() (interface{}, error) { } func (c *current) onDoubleQuoteItalicTextElement16() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -88554,7 +96038,7 @@ func (p *parser) callonDoubleQuoteItalicTextElement47() (interface{}, error) { } func (c *current) onDoubleQuoteItalicTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteItalicTextElement36() (interface{}, error) { @@ -88609,7 +96093,7 @@ func (p *parser) callonDoubleQuoteItalicTextElement69() (interface{}, error) { } func (c *current) onDoubleQuoteItalicTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteItalicTextElement58() (interface{}, error) { @@ -88631,7 +96115,7 @@ func (p *parser) callonDoubleQuoteItalicTextElement84() (interface{}, error) { func (c *current) onDoubleQuoteItalicTextElement80(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteItalicTextElement80() (interface{}, error) { @@ -88754,7 +96238,7 @@ func (p *parser) callonDoubleQuoteItalicTextElement132() (interface{}, error) { } func (c *current) onDoubleQuoteItalicTextElement121(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteItalicTextElement121() (interface{}, error) { @@ -88809,7 +96293,7 @@ func (p *parser) callonDoubleQuoteItalicTextElement154() (interface{}, error) { } func (c *current) onDoubleQuoteItalicTextElement143(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteItalicTextElement143() (interface{}, error) { @@ -88831,7 +96315,7 @@ func (p *parser) callonDoubleQuoteItalicTextElement169() (interface{}, error) { func (c *current) onDoubleQuoteItalicTextElement165(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteItalicTextElement165() (interface{}, error) { @@ -89129,7 +96613,7 @@ func (p *parser) callonSingleQuoteItalicTextElement2() (interface{}, error) { } func (c *current) onSingleQuoteItalicTextElement11() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -89219,7 +96703,7 @@ func (p *parser) callonSingleQuoteItalicTextElement42() (interface{}, error) { } func (c *current) onSingleQuoteItalicTextElement31(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteItalicTextElement31() (interface{}, error) { @@ -89274,7 +96758,7 @@ func (p *parser) callonSingleQuoteItalicTextElement64() (interface{}, error) { } func (c *current) onSingleQuoteItalicTextElement53(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteItalicTextElement53() (interface{}, error) { @@ -89296,7 +96780,7 @@ func (p *parser) callonSingleQuoteItalicTextElement79() (interface{}, error) { func (c *current) onSingleQuoteItalicTextElement75(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteItalicTextElement75() (interface{}, error) { @@ -89419,7 +96903,7 @@ func (p *parser) callonSingleQuoteItalicTextElement127() (interface{}, error) { } func (c *current) onSingleQuoteItalicTextElement116(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteItalicTextElement116() (interface{}, error) { @@ -89474,7 +96958,7 @@ func (p *parser) callonSingleQuoteItalicTextElement149() (interface{}, error) { } func (c *current) onSingleQuoteItalicTextElement138(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteItalicTextElement138() (interface{}, error) { @@ -89496,7 +96980,7 @@ func (p *parser) callonSingleQuoteItalicTextElement164() (interface{}, error) { func (c *current) onSingleQuoteItalicTextElement160(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteItalicTextElement160() (interface{}, error) { @@ -89820,7 +97304,7 @@ func (p *parser) callonDoubleQuoteMonospaceTextElement7() (interface{}, error) { } func (c *current) onDoubleQuoteMonospaceTextElement16() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -89910,7 +97394,7 @@ func (p *parser) callonDoubleQuoteMonospaceTextElement47() (interface{}, error) } func (c *current) onDoubleQuoteMonospaceTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteMonospaceTextElement36() (interface{}, error) { @@ -89965,7 +97449,7 @@ func (p *parser) callonDoubleQuoteMonospaceTextElement69() (interface{}, error) } func (c *current) onDoubleQuoteMonospaceTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteMonospaceTextElement58() (interface{}, error) { @@ -89987,7 +97471,7 @@ func (p *parser) callonDoubleQuoteMonospaceTextElement84() (interface{}, error) func (c *current) onDoubleQuoteMonospaceTextElement80(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteMonospaceTextElement80() (interface{}, error) { @@ -90110,7 +97594,7 @@ func (p *parser) callonDoubleQuoteMonospaceTextElement132() (interface{}, error) } func (c *current) onDoubleQuoteMonospaceTextElement121(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteMonospaceTextElement121() (interface{}, error) { @@ -90165,7 +97649,7 @@ func (p *parser) callonDoubleQuoteMonospaceTextElement154() (interface{}, error) } func (c *current) onDoubleQuoteMonospaceTextElement143(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteMonospaceTextElement143() (interface{}, error) { @@ -90187,7 +97671,7 @@ func (p *parser) callonDoubleQuoteMonospaceTextElement169() (interface{}, error) func (c *current) onDoubleQuoteMonospaceTextElement165(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteMonospaceTextElement165() (interface{}, error) { @@ -90486,7 +97970,7 @@ func (p *parser) callonSingleQuoteMonospaceTextElement11() (interface{}, error) } func (c *current) onSingleQuoteMonospaceTextElement20() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -90576,7 +98060,7 @@ func (p *parser) callonSingleQuoteMonospaceTextElement51() (interface{}, error) } func (c *current) onSingleQuoteMonospaceTextElement40(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteMonospaceTextElement40() (interface{}, error) { @@ -90631,7 +98115,7 @@ func (p *parser) callonSingleQuoteMonospaceTextElement73() (interface{}, error) } func (c *current) onSingleQuoteMonospaceTextElement62(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteMonospaceTextElement62() (interface{}, error) { @@ -90653,7 +98137,7 @@ func (p *parser) callonSingleQuoteMonospaceTextElement88() (interface{}, error) func (c *current) onSingleQuoteMonospaceTextElement84(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteMonospaceTextElement84() (interface{}, error) { @@ -90776,7 +98260,7 @@ func (p *parser) callonSingleQuoteMonospaceTextElement136() (interface{}, error) } func (c *current) onSingleQuoteMonospaceTextElement125(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteMonospaceTextElement125() (interface{}, error) { @@ -90831,7 +98315,7 @@ func (p *parser) callonSingleQuoteMonospaceTextElement158() (interface{}, error) } func (c *current) onSingleQuoteMonospaceTextElement147(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteMonospaceTextElement147() (interface{}, error) { @@ -90853,7 +98337,7 @@ func (p *parser) callonSingleQuoteMonospaceTextElement173() (interface{}, error) func (c *current) onSingleQuoteMonospaceTextElement169(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteMonospaceTextElement169() (interface{}, error) { @@ -91177,7 +98661,7 @@ func (p *parser) callonDoubleQuoteMarkedTextElement7() (interface{}, error) { } func (c *current) onDoubleQuoteMarkedTextElement16() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -91267,7 +98751,7 @@ func (p *parser) callonDoubleQuoteMarkedTextElement47() (interface{}, error) { } func (c *current) onDoubleQuoteMarkedTextElement36(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteMarkedTextElement36() (interface{}, error) { @@ -91322,7 +98806,7 @@ func (p *parser) callonDoubleQuoteMarkedTextElement69() (interface{}, error) { } func (c *current) onDoubleQuoteMarkedTextElement58(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteMarkedTextElement58() (interface{}, error) { @@ -91344,7 +98828,7 @@ func (p *parser) callonDoubleQuoteMarkedTextElement84() (interface{}, error) { func (c *current) onDoubleQuoteMarkedTextElement80(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteMarkedTextElement80() (interface{}, error) { @@ -91467,7 +98951,7 @@ func (p *parser) callonDoubleQuoteMarkedTextElement132() (interface{}, error) { } func (c *current) onDoubleQuoteMarkedTextElement121(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuoteMarkedTextElement121() (interface{}, error) { @@ -91522,7 +99006,7 @@ func (p *parser) callonDoubleQuoteMarkedTextElement154() (interface{}, error) { } func (c *current) onDoubleQuoteMarkedTextElement143(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuoteMarkedTextElement143() (interface{}, error) { @@ -91544,7 +99028,7 @@ func (p *parser) callonDoubleQuoteMarkedTextElement169() (interface{}, error) { func (c *current) onDoubleQuoteMarkedTextElement165(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuoteMarkedTextElement165() (interface{}, error) { @@ -91842,7 +99326,7 @@ func (p *parser) callonSingleQuoteMarkedTextElement2() (interface{}, error) { } func (c *current) onSingleQuoteMarkedTextElement11() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -91932,7 +99416,7 @@ func (p *parser) callonSingleQuoteMarkedTextElement42() (interface{}, error) { } func (c *current) onSingleQuoteMarkedTextElement31(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteMarkedTextElement31() (interface{}, error) { @@ -91987,7 +99471,7 @@ func (p *parser) callonSingleQuoteMarkedTextElement64() (interface{}, error) { } func (c *current) onSingleQuoteMarkedTextElement53(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteMarkedTextElement53() (interface{}, error) { @@ -92009,7 +99493,7 @@ func (p *parser) callonSingleQuoteMarkedTextElement79() (interface{}, error) { func (c *current) onSingleQuoteMarkedTextElement75(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteMarkedTextElement75() (interface{}, error) { @@ -92132,7 +99616,7 @@ func (p *parser) callonSingleQuoteMarkedTextElement127() (interface{}, error) { } func (c *current) onSingleQuoteMarkedTextElement116(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuoteMarkedTextElement116() (interface{}, error) { @@ -92187,7 +99671,7 @@ func (p *parser) callonSingleQuoteMarkedTextElement149() (interface{}, error) { } func (c *current) onSingleQuoteMarkedTextElement138(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuoteMarkedTextElement138() (interface{}, error) { @@ -92209,7 +99693,7 @@ func (p *parser) callonSingleQuoteMarkedTextElement164() (interface{}, error) { func (c *current) onSingleQuoteMarkedTextElement160(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuoteMarkedTextElement160() (interface{}, error) { @@ -92727,7 +100211,7 @@ func (p *parser) callonSingleQuotedStringElement49() (interface{}, error) { } func (c *current) onSingleQuotedStringElement38(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuotedStringElement38() (interface{}, error) { @@ -92782,7 +100266,7 @@ func (p *parser) callonSingleQuotedStringElement71() (interface{}, error) { } func (c *current) onSingleQuotedStringElement60(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuotedStringElement60() (interface{}, error) { @@ -92804,7 +100288,7 @@ func (p *parser) callonSingleQuotedStringElement86() (interface{}, error) { func (c *current) onSingleQuotedStringElement82(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuotedStringElement82() (interface{}, error) { @@ -92927,7 +100411,7 @@ func (p *parser) callonSingleQuotedStringElement134() (interface{}, error) { } func (c *current) onSingleQuotedStringElement123(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSingleQuotedStringElement123() (interface{}, error) { @@ -92982,7 +100466,7 @@ func (p *parser) callonSingleQuotedStringElement156() (interface{}, error) { } func (c *current) onSingleQuotedStringElement145(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSingleQuotedStringElement145() (interface{}, error) { @@ -93004,7 +100488,7 @@ func (p *parser) callonSingleQuotedStringElement171() (interface{}, error) { func (c *current) onSingleQuotedStringElement167(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSingleQuotedStringElement167() (interface{}, error) { @@ -93439,7 +100923,7 @@ func (p *parser) callonDoubleQuotedStringElement68() (interface{}, error) { } func (c *current) onDoubleQuotedStringElement57(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuotedStringElement57() (interface{}, error) { @@ -93494,7 +100978,7 @@ func (p *parser) callonDoubleQuotedStringElement90() (interface{}, error) { } func (c *current) onDoubleQuotedStringElement79(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuotedStringElement79() (interface{}, error) { @@ -93516,7 +101000,7 @@ func (p *parser) callonDoubleQuotedStringElement105() (interface{}, error) { func (c *current) onDoubleQuotedStringElement101(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuotedStringElement101() (interface{}, error) { @@ -93639,7 +101123,7 @@ func (p *parser) callonDoubleQuotedStringElement153() (interface{}, error) { } func (c *current) onDoubleQuotedStringElement142(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonDoubleQuotedStringElement142() (interface{}, error) { @@ -93694,7 +101178,7 @@ func (p *parser) callonDoubleQuotedStringElement175() (interface{}, error) { } func (c *current) onDoubleQuotedStringElement164(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonDoubleQuotedStringElement164() (interface{}, error) { @@ -93716,7 +101200,7 @@ func (p *parser) callonDoubleQuotedStringElement190() (interface{}, error) { func (c *current) onDoubleQuotedStringElement186(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonDoubleQuotedStringElement186() (interface{}, error) { @@ -93984,7 +101468,7 @@ func (p *parser) callonAttributesGroup53() (interface{}, error) { } func (c *current) onAttributesGroup42(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonAttributesGroup42() (interface{}, error) { @@ -94039,7 +101523,7 @@ func (p *parser) callonAttributesGroup75() (interface{}, error) { } func (c *current) onAttributesGroup64(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonAttributesGroup64() (interface{}, error) { @@ -94061,7 +101545,7 @@ func (p *parser) callonAttributesGroup90() (interface{}, error) { func (c *current) onAttributesGroup86(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonAttributesGroup86() (interface{}, error) { @@ -94217,7 +101701,7 @@ func (p *parser) callonAttributesGroup127() (interface{}, error) { } func (c *current) onAttributesGroup116(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonAttributesGroup116() (interface{}, error) { @@ -94272,7 +101756,7 @@ func (p *parser) callonAttributesGroup149() (interface{}, error) { } func (c *current) onAttributesGroup138(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonAttributesGroup138() (interface{}, error) { @@ -94294,7 +101778,7 @@ func (p *parser) callonAttributesGroup164() (interface{}, error) { func (c *current) onAttributesGroup160(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonAttributesGroup160() (interface{}, error) { @@ -94459,7 +101943,7 @@ func (p *parser) callonElementAttributesGroup41() (interface{}, error) { } func (c *current) onElementAttributesGroup30(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonElementAttributesGroup30() (interface{}, error) { @@ -94514,7 +101998,7 @@ func (p *parser) callonElementAttributesGroup63() (interface{}, error) { } func (c *current) onElementAttributesGroup52(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonElementAttributesGroup52() (interface{}, error) { @@ -94536,7 +102020,7 @@ func (p *parser) callonElementAttributesGroup78() (interface{}, error) { func (c *current) onElementAttributesGroup74(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonElementAttributesGroup74() (interface{}, error) { @@ -94659,7 +102143,7 @@ func (p *parser) callonElementAttributesGroup127() (interface{}, error) { } func (c *current) onElementAttributesGroup116(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonElementAttributesGroup116() (interface{}, error) { @@ -94714,7 +102198,7 @@ func (p *parser) callonElementAttributesGroup149() (interface{}, error) { } func (c *current) onElementAttributesGroup138(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonElementAttributesGroup138() (interface{}, error) { @@ -94736,7 +102220,7 @@ func (p *parser) callonElementAttributesGroup164() (interface{}, error) { func (c *current) onElementAttributesGroup160(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonElementAttributesGroup160() (interface{}, error) { @@ -95038,7 +102522,7 @@ func (p *parser) callonHeaderGroupElement70() (interface{}, error) { } func (c *current) onHeaderGroupElement59(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonHeaderGroupElement59() (interface{}, error) { @@ -95093,7 +102577,7 @@ func (p *parser) callonHeaderGroupElement92() (interface{}, error) { } func (c *current) onHeaderGroupElement81(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonHeaderGroupElement81() (interface{}, error) { @@ -95115,7 +102599,7 @@ func (p *parser) callonHeaderGroupElement107() (interface{}, error) { func (c *current) onHeaderGroupElement103(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonHeaderGroupElement103() (interface{}, error) { @@ -95271,7 +102755,7 @@ func (p *parser) callonHeaderGroupElement145() (interface{}, error) { } func (c *current) onHeaderGroupElement134(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonHeaderGroupElement134() (interface{}, error) { @@ -95326,7 +102810,7 @@ func (p *parser) callonHeaderGroupElement167() (interface{}, error) { } func (c *current) onHeaderGroupElement156(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonHeaderGroupElement156() (interface{}, error) { @@ -95348,7 +102832,7 @@ func (p *parser) callonHeaderGroupElement182() (interface{}, error) { func (c *current) onHeaderGroupElement178(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonHeaderGroupElement178() (interface{}, error) { @@ -95565,7 +103049,7 @@ func (p *parser) callonHeaderGroupElement252() (interface{}, error) { } func (c *current) onHeaderGroupElement241(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonHeaderGroupElement241() (interface{}, error) { @@ -95620,7 +103104,7 @@ func (p *parser) callonHeaderGroupElement274() (interface{}, error) { } func (c *current) onHeaderGroupElement263(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonHeaderGroupElement263() (interface{}, error) { @@ -95642,7 +103126,7 @@ func (p *parser) callonHeaderGroupElement289() (interface{}, error) { func (c *current) onHeaderGroupElement285(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonHeaderGroupElement285() (interface{}, error) { @@ -96153,7 +103637,7 @@ func (p *parser) callonNormalGroupElement115() (interface{}, error) { } func (c *current) onNormalGroupElement104(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonNormalGroupElement104() (interface{}, error) { @@ -96208,7 +103692,7 @@ func (p *parser) callonNormalGroupElement137() (interface{}, error) { } func (c *current) onNormalGroupElement126(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonNormalGroupElement126() (interface{}, error) { @@ -96230,7 +103714,7 @@ func (p *parser) callonNormalGroupElement152() (interface{}, error) { func (c *current) onNormalGroupElement148(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonNormalGroupElement148() (interface{}, error) { @@ -96386,7 +103870,7 @@ func (p *parser) callonNormalGroupElement187() (interface{}, error) { } func (c *current) onNormalGroupElement176(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonNormalGroupElement176() (interface{}, error) { @@ -96441,7 +103925,7 @@ func (p *parser) callonNormalGroupElement209() (interface{}, error) { } func (c *current) onNormalGroupElement198(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonNormalGroupElement198() (interface{}, error) { @@ -96463,7 +103947,7 @@ func (p *parser) callonNormalGroupElement224() (interface{}, error) { func (c *current) onNormalGroupElement220(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonNormalGroupElement220() (interface{}, error) { @@ -97107,7 +104591,7 @@ func (p *parser) callonSpecialCharactersGroup65() (interface{}, error) { } func (c *current) onSpecialCharactersGroup54(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonSpecialCharactersGroup54() (interface{}, error) { @@ -97162,7 +104646,7 @@ func (p *parser) callonSpecialCharactersGroup87() (interface{}, error) { } func (c *current) onSpecialCharactersGroup76(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonSpecialCharactersGroup76() (interface{}, error) { @@ -97184,7 +104668,7 @@ func (p *parser) callonSpecialCharactersGroup102() (interface{}, error) { func (c *current) onSpecialCharactersGroup98(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonSpecialCharactersGroup98() (interface{}, error) { @@ -97463,7 +104947,7 @@ func (p *parser) callonVerbatimGroup66() (interface{}, error) { } func (c *current) onVerbatimGroup55(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonVerbatimGroup55() (interface{}, error) { @@ -97518,7 +105002,7 @@ func (p *parser) callonVerbatimGroup88() (interface{}, error) { } func (c *current) onVerbatimGroup77(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonVerbatimGroup77() (interface{}, error) { @@ -97540,7 +105024,7 @@ func (p *parser) callonVerbatimGroup103() (interface{}, error) { func (c *current) onVerbatimGroup99(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonVerbatimGroup99() (interface{}, error) { @@ -97968,7 +105452,7 @@ func (p *parser) callonInlinePassthrough48() (interface{}, error) { } func (c *current) onInlinePassthrough58() (interface{}, error) { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } @@ -98424,7 +105908,7 @@ func (p *parser) callonFileLocation28() (interface{}, error) { } func (c *current) onFileLocation17(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonFileLocation17() (interface{}, error) { @@ -98479,7 +105963,7 @@ func (p *parser) callonFileLocation50() (interface{}, error) { } func (c *current) onFileLocation39(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonFileLocation39() (interface{}, error) { @@ -98501,7 +105985,7 @@ func (p *parser) callonFileLocation65() (interface{}, error) { func (c *current) onFileLocation61(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonFileLocation61() (interface{}, error) { @@ -98624,7 +106108,7 @@ func (p *parser) callonFileLocation113() (interface{}, error) { } func (c *current) onFileLocation102(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } func (p *parser) callonFileLocation102() (interface{}, error) { @@ -98679,7 +106163,7 @@ func (p *parser) callonFileLocation135() (interface{}, error) { } func (c *current) onFileLocation124(name, start interface{}) (interface{}, error) { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } func (p *parser) callonFileLocation124() (interface{}, error) { @@ -98701,7 +106185,7 @@ func (p *parser) callonFileLocation150() (interface{}, error) { func (c *current) onFileLocation146(name interface{}) (interface{}, error) { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } func (p *parser) callonFileLocation146() (interface{}, error) { diff --git a/pkg/parser/parser.peg b/pkg/parser/parser.peg index 8a187436..0806b94c 100644 --- a/pkg/parser/parser.peg +++ b/pkg/parser/parser.peg @@ -15,6 +15,150 @@ import ( } +// ------------------------------------------------------------------------------------- +// +// +// Document Preprocessing +// +// +// ------------------------------------------------------------------------------------- +DocumentRawLine <- + element:( + AttributeDeclaration + / AttributeReset + / FileInclusion + / BlockDelimiter + / RawSection + ) EOF { + // in case of parse error, we'll keep the rawline content as-is + return element, nil + } + +// ---------------------------------------------------------- +// File inclusions +// ---------------------------------------------------------- +RawSection <- + &{ + // should only be enabled when reading files to include, not the main (root) file + return c.isSectionEnabled(), nil + } + &{ + return !c.isWithinDelimitedBlock(), nil + } + level:(("=")+ { + // `=` is level 0, `==` is level 1, etc. + return (len(c.text)-1), nil + }) + &{ + // use a predicate to make sure that only `=` (level 0) to `======` (level 5) are allowed + return level.(int) <= 5, nil + } + Spaces [^\r\n]+ EOF{ + return types.NewRawSection(level.(int), string(c.text)) // just retain the raw content + } + +// ---------------------------------------------------------- +// File inclusions +// ---------------------------------------------------------- +FileInclusion <- + &{ + // skip if disabled + return c.isRuleEnabled(FileInclusion) + } + #{ + // force/enable attribute substitution // TODO: why? + // log.Debug("entering FileInclusion rule") + return c.setCurrentSubstitution("attributes") + } + incl:( + "include::" + path:(FileLocation) + inlineAttributes:(InlineAttributes) { + return types.NewFileInclusion(path.(*types.Location), inlineAttributes.(types.Attributes), string(c.text)) + } + ) + Space* EOL { + return incl.(*types.FileInclusion), nil + } + +FileIncludeAttributes <- LongHandAttributes + +// extra entrypoint +LineRanges <- value:(MultipleLineRanges + / MultiLineRange + / SingleLineRange + ) EOF { // must make sure that the whole content is parsed + return value, nil + } + +MultipleLineRanges <- first:(MultiLineRange / SingleLineRange) + others:( + ("," / ";") // at this point, we already got rid of the surrounding quotes, so we can accept both `,` and `;` + other:(MultiLineRange / SingleLineRange) { + return other, nil + })+ { + return append([]interface{}{first}, others.([]interface{})...), nil + } + +MultiLineRange <- start:(Number) ".." end:(Number) { // eg: lines=12..14 + return types.NewLineRange(start.(int), end.(int)) + } + +SingleLineRange <- singleline:(Number) { // eg: lines=12 + return types.NewLineRange(singleline.(int), singleline.(int)) + } + +// extra entrypoint +TagRanges <- value:(MultipleTagRanges) EOF { // must make sure that the whole content is parsed + return value, nil + } + +MultipleTagRanges <- first:(TagRange) + others:( + ("," / ";") // at this point, we already got rid of the surrounding quotes, so we can accept both `,` and `;` + other:(TagRange) { + return other, nil + })* { + return append([]interface{}{first}, others.([]interface{})...), nil + } + +TagRange <- tag:(Alphanums / TagWildcard) { + return types.NewTagRange(tag.(string), true) + } / "!" tag:(Alphanums / TagWildcard) { + return types.NewTagRange(tag.(string), false) + } + +TagWildcard <- stars:(("*")+ { + return string(c.text), nil + }) + &{ + // use a predicate to make sure that only `*` and `**` are allowed + return len(stars.(string)) <= 2, nil + } { + return stars, nil + } + +IncludedFileLine <- content:(IncludedFileStartTag / IncludedFileEndTag / . {return string(c.text), nil})* EOL { + return types.NewIncludedFileLine(content.([]interface{})) + } + +IncludedFileStartTag <- "tag::" tag:(Alphanums {return string(c.text), nil}) "[]" { + return types.NewIncludedFileStartTag(tag.(string)) + } + +IncludedFileEndTag <- "end::" tag:(Alphanums {return string(c.text), nil}) "[]" { + return types.NewIncludedFileEndTag(tag.(string)) + } + + +// ------------------------------------------------------------------------------------- +// +// +// Document Processing +// +// +// ------------------------------------------------------------------------------------- + // ------------------------------------------------------------------------------------- // Document Fragments // ------------------------------------------------------------------------------------- @@ -24,7 +168,6 @@ DocumentFragment <- element:( ImageBlock // must appear before ShortcutParagraph / UserMacroBlock // must appear before ShortcutParagraph - / FileInclusion // must appear before ShortcutParagraph / ShortcutParagraph / AttributeDeclaration / AttributeReset @@ -40,9 +183,17 @@ DocumentFragment <- / LiteralParagraph / FrontMatter / Paragraph // must be the last one... - ) { - c.setFrontMatterAllowed(false) // not allowed anymore - c.setDocumentHeaderAllowed(false) // not allowed anymore + )? // allow attribute on empty/no element + &{ + if attributes != nil && element == nil { + // do not return an error, but do not accept such a kind of content (standalone attributes) + return false, fmt.Errorf("standalone attribute") + } + return true, nil + } + { + c.disableFrontMatterRule() // not allowed as soon as a single element is found + c.disableDocumentHeaderRule(element) // not allowed anymore, based on element that was found if element, ok := element.(types.BlockWithAttributes); ok && attributes != nil { element.AddAttributes(attributes.(types.Attributes)) @@ -50,14 +201,6 @@ DocumentFragment <- return element, nil } -DocumentFragmentWithinVerbatimBlock <- - elements:( - FileInclusion - / RawLine - )* EOF { - return elements, nil - } - RawLine <- !EOF content:([^\r\n]* { @@ -110,8 +253,7 @@ AttributeDeclaration <- ":" name:(AttributeName) ":" value:(AttributeDeclarationValue)? EOL { - d := types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace)) - return d, nil + return types.NewAttributeDeclaration(name.(string), types.Reduce(value, strings.TrimSpace), string(c.text)) } // AttributeName must be at least one character long, @@ -140,9 +282,9 @@ AttributeDeclarationValueElement <- !EOL } AttributeReset <- ":!" name:(AttributeName) ":" Space* EOL { - return types.NewAttributeReset(name.(string)) + return types.NewAttributeReset(name.(string), string(c.text)) } / ":" name:(AttributeName) "!:" Space* EOL { - return types.NewAttributeReset(name.(string)) + return types.NewAttributeReset(name.(string), string(c.text)) } // ------------------------------------------------------------------------------------- @@ -297,7 +439,6 @@ ShortHandAttributeValue <- return types.NewStringElement(string(c.text)) }) / ElementPlaceHolder - // / Quote / AttributeSubstitution / ("{" { return types.NewStringElement(string(c.text)) @@ -421,18 +562,18 @@ AttributeSubstitution <- } AttributeValueSubstitution <- "{" name:AttributeName "}" { - return types.NewAttributeSubstitution(name.(string)) + return types.NewAttributeSubstitution(name.(string), string(c.text)) } // TODO: simplify the 'start' optional attribute -CounterSubstitution <- CounterSubstitution1 / CounterSubstitution2 // / CounterSubstitutionAlpha / CounterSubstitutionAlpha2 / CounterSubstitutionStart / CounterSubstitutionStart2 +CounterSubstitution <- CounterSubstitution1 / CounterSubstitution2 CounterSubstitution1 <- "{counter:" name:AttributeName start:(CounterStart)? "}" { - return types.NewCounterSubstitution(name.(string), false, start) + return types.NewCounterSubstitution(name.(string), false, start, string(c.text)) } CounterSubstitution2 <- "{counter2:" name:AttributeName start:(CounterStart)? "}" { - return types.NewCounterSubstitution(name.(string), true, nil) + return types.NewCounterSubstitution(name.(string), true, nil, string(c.text)) } CounterStart <- ":" start:([A-Za-z] { @@ -505,21 +646,37 @@ BlockDelimiter <- } -CommentBlockDelimiter <- "////" Space* EOL +CommentBlockDelimiter <- "////" Space* EOL { + return types.NewBlockDelimiter(types.Comment, string(c.text)) +} -ExampleBlockDelimiter <- "====" Space* EOL +ExampleBlockDelimiter <- "====" Space* EOL { + return types.NewBlockDelimiter(types.Example, string(c.text)) +} -FencedBlockDelimiter <- "```" Space* EOL +FencedBlockDelimiter <- "```" Space* EOL { + return types.NewBlockDelimiter(types.Fenced, string(c.text)) +} -ListingBlockDelimiter <- "----" Space* EOL +ListingBlockDelimiter <- "----" Space* EOL { + return types.NewBlockDelimiter(types.Listing, string(c.text)) +} -LiteralBlockDelimiter <- "...." Space* EOL +LiteralBlockDelimiter <- "...." Space* EOL { + return types.NewBlockDelimiter(types.Literal, string(c.text)) +} -PassthroughBlockDelimiter <- "++++" Space* EOL +PassthroughBlockDelimiter <- "++++" Space* EOL { + return types.NewBlockDelimiter(types.Passthrough, string(c.text)) +} -QuoteBlockDelimiter <- "____" Space* EOL +QuoteBlockDelimiter <- "____" Space* EOL { + return types.NewBlockDelimiter(types.Quote, string(c.text)) +} -SidebarBlockDelimiter <- "****" Space* EOL +SidebarBlockDelimiter <- "****" Space* EOL { + return types.NewBlockDelimiter(types.Sidebar, string(c.text)) +} DelimitedBlockRawLine <- !EOF // in case the block is unclosed and at the end of the document @@ -585,7 +742,7 @@ ExampleBlockEndDelimiter <- ExampleBlockDelimiter / EOF ExampleBlockContent <- (!ExampleBlockEndDelimiter - line:(FileInclusion/DelimitedBlockRawLine) { + line:(DelimitedBlockRawLine) { return line, nil })* @@ -615,7 +772,7 @@ FencedBlockEndDelimiter <- FencedBlockDelimiter / EOF FencedBlockContent <- (!FencedBlockEndDelimiter - line:(FileInclusion/DelimitedBlockRawLine) { + line:(DelimitedBlockRawLine) { return line, nil })* @@ -645,7 +802,7 @@ ListingBlockEndDelimiter <- ListingBlockDelimiter / EOF ListingBlockContent <- (!ListingBlockEndDelimiter - line:(FileInclusion/DelimitedBlockRawLine) { + line:(DelimitedBlockRawLine) { return line, nil })* @@ -675,7 +832,7 @@ LiteralBlockEndDelimiter <- LiteralBlockDelimiter / EOF LiteralBlockContent <- (!LiteralBlockEndDelimiter - line:(FileInclusion/DelimitedBlockRawLine) { + line:(DelimitedBlockRawLine) { return line, nil })* @@ -731,7 +888,7 @@ PassthroughBlockEndDelimiter <- PassthroughBlockDelimiter / EOF PassthroughBlockContent <- (!PassthroughBlockEndDelimiter - line:(FileInclusion/DelimitedBlockRawLine) { + line:(DelimitedBlockRawLine) { return line, nil })* @@ -761,7 +918,7 @@ QuoteBlockEndDelimiter <- QuoteBlockDelimiter / EOF QuoteBlockContent <- (!QuoteBlockEndDelimiter - line:(FileInclusion/DelimitedBlockRawLine) { + line:(DelimitedBlockRawLine) { return line, nil })* @@ -791,7 +948,7 @@ SidebarBlockEndDelimiter <- SidebarBlockDelimiter / EOF SidebarBlockContent <- (!SidebarBlockEndDelimiter - line:(FileInclusion/DelimitedBlockRawLine) { + line:(DelimitedBlockRawLine) { return line, nil })* @@ -807,13 +964,11 @@ DocumentHeader <- info:DocumentInformation? extraAttrs:(AttributeDeclaration / AttributeReset)* // we need to collect extra attrs to process substitution on the title { - c.setFrontMatterAllowed(false) // not allowed anymore - c.setDocumentHeaderAllowed(false) // not allowed anymore return types.NewDocumentHeader(title.([]interface{}), info, extraAttrs.([]interface{})) } DocumentTitle <- - "=" Spaces title:(RawSectionTitle) EOL { + "=" Spaces title:(SectionTitle) EOL { return title, nil } @@ -922,99 +1077,6 @@ LineBreak <- return types.NewLineBreak() } -// ------------------------------------------------------------------------------------- -// File inclusions -// ------------------------------------------------------------------------------------- -FileInclusion <- - &{ - // skip if disabled - return c.isRuleEnabled(FileInclusion) - } - #{ - // force/enable attribute substitution // TODO: why? - // log.Debug("entering FileInclusion rule") - return c.setCurrentSubstitution("attributes") - } - incl:( - "include::" - path:(FileLocation) - inlineAttributes:(InlineAttributes) { - return types.NewFileInclusion(path.(*types.Location), inlineAttributes.(types.Attributes), string(c.text)) - } - ) - Space* EOL { - return incl.(*types.FileInclusion), nil - } - -FileIncludeAttributes <- LongHandAttributes - -// extra entrypoint -LineRanges <- value:(MultipleLineRanges - / MultiLineRange - / SingleLineRange - ) EOF { // must make sure that the whole content is parsed - return value, nil - } - -MultipleLineRanges <- first:(MultiLineRange / SingleLineRange) - others:( - ("," / ";") // at this point, we already got rid of the surrounding quotes, so we can accept both `,` and `;` - other:(MultiLineRange / SingleLineRange) { - return other, nil - })+ { - return append([]interface{}{first}, others.([]interface{})...), nil - } - -MultiLineRange <- start:(Number) ".." end:(Number) { // eg: lines=12..14 - return types.NewLineRange(start.(int), end.(int)) - } - -SingleLineRange <- singleline:(Number) { // eg: lines=12 - return types.NewLineRange(singleline.(int), singleline.(int)) - } - -// extra entrypoint -TagRanges <- value:(MultipleTagRanges) EOF { // must make sure that the whole content is parsed - return value, nil - } - -MultipleTagRanges <- first:(TagRange) - others:( - ("," / ";") // at this point, we already got rid of the surrounding quotes, so we can accept both `,` and `;` - other:(TagRange) { - return other, nil - })* { - return append([]interface{}{first}, others.([]interface{})...), nil - } - -TagRange <- tag:(Alphanums / TagWildcard) { - return types.NewTagRange(tag.(string), true) - } / "!" tag:(Alphanums / TagWildcard) { - return types.NewTagRange(tag.(string), false) - } - -TagWildcard <- stars:(("*")+ { - return string(c.text), nil - }) - &{ - // use a predicate to make sure that only `*` and `**` are allowed - return len(stars.(string)) <= 2, nil - } { - return stars, nil - } - -IncludedFileLine <- content:(IncludedFileStartTag / IncludedFileEndTag / . {return string(c.text), nil})* EOL { - return types.NewIncludedFileLine(content.([]interface{})) - } - -IncludedFileStartTag <- "tag::" tag:(Alphanums {return string(c.text), nil}) "[]" { - return types.NewIncludedFileStartTag(tag.(string)) - } - -IncludedFileEndTag <- "end::" tag:(Alphanums {return string(c.text), nil}) "[]" { - return types.NewIncludedFileEndTag(tag.(string)) - } - // ------------------------------------------------------------------------------------- // Front Matter // ------------------------------------------------------------------------------------- @@ -1024,7 +1086,6 @@ FrontMatter <- } frontmatter:(YamlFrontMatter) { - c.setFrontMatterAllowed(false) // not allowed anymore return frontmatter, nil } @@ -1321,7 +1382,6 @@ ListElementContinuationElement <- // TODO: same as DelimitedBlockElement? / DelimitedBlock / ThematicBreak // must appear before ListElement :/ / ImageBlock - / FileInclusion / Table / SingleLineComment / AdmonitionParagraph @@ -2344,11 +2404,11 @@ Section <- // use a predicate to make sure that only `=` (level 0) to `======` (level 5) are allowed return level.(int) <= 5, nil } - Spaces title:(RawSectionTitle) EOL { - return types.NewRawSection(level.(int), title.([]interface{})) + Spaces title:(SectionTitle) EOL { + return types.NewSection(level.(int), title.([]interface{})) } -RawSectionTitle <- [^\r\n]+ { // can't have empty title, that may collide with example block delimiter (`====`) +SectionTitle <- [^\r\n]+ { // can't have empty title, that may collide with example block delimiter (`====`) return []interface{}{ types.RawLine(c.text), }, nil @@ -2836,7 +2896,6 @@ Filename <- elements:( } / AttributeSubstitution / SpecialCharacter - // / ElementPlaceHolder / "{" { return types.NewStringElement(string(c.text)) })+ { @@ -2862,7 +2921,7 @@ Space <- (" " / "\t") { } Spaces <- (" " / "\t")+ { - log.Debug("matched multiple spaces") + // log.Debug("matched multiple spaces") return string(c.text), nil } diff --git a/pkg/parser/parser_ext.go b/pkg/parser/parser_ext.go index 4390c0be..5d68034b 100644 --- a/pkg/parser/parser_ext.go +++ b/pkg/parser/parser_ext.go @@ -120,9 +120,9 @@ func (c *current) trackSpaceSuffix(element interface{}) { } func (c *current) isPreceededBySpace() bool { - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("checking if element ends with space: %t", c.globalStore[spaceSuffixTrackingKey]) - } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("checking if element ends with space: %t", c.globalStore[spaceSuffixTrackingKey]) + // } s, ok := c.globalStore[spaceSuffixTrackingKey].(bool) return ok && s } @@ -151,3 +151,91 @@ func validateSingleQuoteElements(elements []interface{}) (bool, error) { return true, nil } } + +// TODO: not needed? +const rawSectionEnabledKey = "raw_section_enabled" + +// sectionEnabled parser option to enable detection of (raw) section during preparsing +func sectionEnabled() Option { + return GlobalStore(rawSectionEnabledKey, true) +} + +// state info to determine if parsing is happening within a delimited block (any kind), +// in which case some grammar rules need to be disabled +func (c *current) isSectionEnabled() bool { + enabled, found := c.globalStore[rawSectionEnabledKey].(bool) + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("raw sections enabled: %t", found && enabled) + // } + return found && enabled +} + +const delimitedBlockScopeKey = "delimited_block_scope" + +// state info to indicate that parsing is happening within a delimited block of the given kind, +// in which case some grammar rules may need to be disabled +func (c *current) setWithinDelimitedBlockOfKind(kind string) { + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("setting scope within block of kind '%s'", kind) + // } + c.globalStore[delimitedBlockScopeKey] = kind +} + +// state info to indicate that parsing is happening within a delimited block of the given kind, +// in which case some grammar rules may need to be disabled +func (c *current) unsetWithinDelimitedBlock() { + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("unsetting scope within block of kind '%s'", kind) + // } + delete(c.globalStore, delimitedBlockScopeKey) +} + +// state info to determine if parsing is happening within a delimited block (any kind), +// in which case some grammar rules need to be disabled +func (c *current) isWithinDelimitedBlock() bool { + w, found := c.globalStore[delimitedBlockScopeKey].(bool) + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("checking if within delimited block: %t/%t", found, w) + } + return found && w +} + +// state info to determine if parsing is happening within a delimited block of the given kind, +// in which case some grammar rules need to be disabled +func (c *current) isWithinDelimitedBlockOfKind(kind string) bool { + if k, found := c.globalStore[delimitedBlockScopeKey].(string); found { + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("checking if within block of kind '%s': %t (1)", kind, k == kind) + // } + return k == kind + } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("checking if within block of kind '%s': false (2)", kind) + // } + return false +} + +type blockDelimiterTracker struct { + stack []types.BlockDelimiterKind +} + +func newBlockDelimiterTracker() *blockDelimiterTracker { + return &blockDelimiterTracker{ + stack: []types.BlockDelimiterKind{}, + } +} + +func (t *blockDelimiterTracker) push(k types.BlockDelimiterKind) { + switch { + case len(t.stack) > 0 && t.stack[len(t.stack)-1] == k: + // trim + t.stack = t.stack[:len(t.stack)-1] + default: + // append + t.stack = append(t.stack, k) + } +} + +func (t *blockDelimiterTracker) withinDelimitedBlock() bool { + return len(t.stack) > 0 +} diff --git a/pkg/parser/parser_ext_test.go b/pkg/parser/parser_ext_test.go new file mode 100644 index 00000000..944d2488 --- /dev/null +++ b/pkg/parser/parser_ext_test.go @@ -0,0 +1,70 @@ +package parser + +import ( + "github.com/bytesparadise/libasciidoc/pkg/types" + + . "github.com/onsi/ginkgo" //nolint golint + . "github.com/onsi/gomega" //nolint golint +) + +var _ = Describe("block delimiter tracker", func() { + + It("should not be within delimited block", func() { + // given + t := newBlockDelimiterTracker() + // then + Expect(t.withinDelimitedBlock()).To(BeFalse()) + }) + + It("should be within delimited block", func() { + // given + t := newBlockDelimiterTracker() + // when + t.push(types.BlockDelimiterKind(types.Listing)) // entered block + // then + Expect(t.withinDelimitedBlock()).To(BeTrue()) + }) + + It("should still be within delimited block - case 1", func() { + // given + t := newBlockDelimiterTracker() + // when + t.push(types.BlockDelimiterKind(types.Listing)) // entered block + t.push(types.BlockDelimiterKind(types.Comment)) // entered another block + // then + Expect(t.withinDelimitedBlock()).To(BeTrue()) + }) + + It("should still be within delimited block - case 1", func() { + // given + t := newBlockDelimiterTracker() + // when + t.push(types.BlockDelimiterKind(types.Listing)) // entered first block + t.push(types.BlockDelimiterKind(types.Comment)) // entered second block + // then + Expect(t.withinDelimitedBlock()).To(BeTrue()) + }) + + It("should not be within delimited block anymore - case 1", func() { + // given + t := newBlockDelimiterTracker() + // when + t.push(types.BlockDelimiterKind(types.Listing)) // entered block + t.push(types.BlockDelimiterKind(types.Listing)) // exited block + // then + Expect(t.withinDelimitedBlock()).To(BeFalse()) + }) + + It("should not be within delimited block anymore - case 2", func() { + // given + t := newBlockDelimiterTracker() + // when + t.push(types.BlockDelimiterKind(types.Listing)) // entered first block + t.push(types.BlockDelimiterKind(types.Comment)) // entered second block + t.push(types.BlockDelimiterKind(types.Comment)) // existed second block + t.push(types.BlockDelimiterKind(types.Listing)) // exited first block + // then + Expect(t.withinDelimitedBlock()).To(BeFalse()) + }) + +}) diff --git a/pkg/types/attributes.go b/pkg/types/attributes.go index 01b4ee7e..80520c76 100644 --- a/pkg/types/attributes.go +++ b/pkg/types/attributes.go @@ -5,7 +5,6 @@ import ( "strconv" "strings" - "github.com/davecgh/go-spew/spew" log "github.com/sirupsen/logrus" ) @@ -378,9 +377,9 @@ func NewIDAttribute(id interface{}) (*Attribute, error) { // with some `key` replacements/grouping (Role->Roles and Option->Options) // returns the new `Attributes` if the current instance was `nil` func (a Attributes) Set(key string, value interface{}) Attributes { - if log.IsLevelEnabled(log.DebugLevel) { - log.Debugf("setting attribute %s=%s", key, spew.Sdump(value)) - } + // if log.IsLevelEnabled(log.DebugLevel) { + // log.Debugf("setting attribute %s=%s", key, spew.Sdump(value)) + // } if a == nil { a = Attributes{} } diff --git a/pkg/types/types.go b/pkg/types/types.go index 7da8f0f0..f6c8d6f4 100644 --- a/pkg/types/types.go +++ b/pkg/types/types.go @@ -13,15 +13,6 @@ import ( "gopkg.in/yaml.v2" ) -// NewRawSection returns a new RawSection -func NewRawSection(level int, title []interface{}) (*Section, error) { - // log.Debugf("new rawsection: '%s' (%d)", title, level) - return &Section{ - Level: level, - Title: title, - }, nil -} - // ------------------------------------------ // common interfaces // ------------------------------------------ @@ -529,48 +520,75 @@ func (r *DocumentRevision) Expand() Attributes { // AttributeDeclaration the type for Document Attribute Declarations type AttributeDeclaration struct { - Name string - Value interface{} + Name string + Value interface{} + rawText string } // NewAttributeDeclaration initializes a new AttributeDeclaration with the given name and optional value -func NewAttributeDeclaration(name string, value interface{}) *AttributeDeclaration { - return &AttributeDeclaration{ - Name: name, - Value: value, +func NewAttributeDeclaration(name string, value interface{}, rawText string) (*AttributeDeclaration, error) { + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("new attribute declaration: '%s'", spew.Sdump(rawText)) } + return &AttributeDeclaration{ + Name: name, + Value: value, + rawText: rawText, + }, nil +} + +var _ RawText = &AttributeDeclaration{} + +func (a *AttributeDeclaration) RawText() (string, error) { + return a.rawText, nil } // AttributeReset the type for AttributeReset type AttributeReset struct { - Name string + Name string + rawText string } // NewAttributeReset initializes a new Document Attribute Resets. -func NewAttributeReset(attrName string) (*AttributeReset, error) { - log.Debugf("new AttributeReset: '%s'", attrName) - return &AttributeReset{Name: attrName}, nil +func NewAttributeReset(attrName string, rawText string) (*AttributeReset, error) { + // log.Debugf("new AttributeReset: '%s'", attrName) + return &AttributeReset{ + Name: attrName, + rawText: rawText, + }, nil +} + +var _ RawText = &AttributeReset{} + +func (a *AttributeReset) RawText() (string, error) { + return a.rawText, nil } // AttributeSubstitution the type for AttributeSubstitution type AttributeSubstitution struct { - Name string + Name string + rawText string } // NewAttributeSubstitution initializes a new Attribute Substitutions -func NewAttributeSubstitution(name string) (interface{}, error) { +func NewAttributeSubstitution(name, rawText string) (interface{}, error) { if isPrefedinedAttribute(name) { - return &PredefinedAttribute{Name: name}, nil + return &PredefinedAttribute{ + Name: name, + rawText: rawText}, + nil } - // log.Debugf("new AttributeSubstitution: '%s'", name) - return &AttributeSubstitution{Name: name}, nil + return &AttributeSubstitution{ + Name: name, + rawText: rawText}, + nil } var _ RawText = &AttributeSubstitution{} // RawText returns the raw text representation of this element as it was (supposedly) written in the source document func (s *AttributeSubstitution) RawText() (string, error) { - return "{" + s.Name + "}", nil + return s.rawText, nil } // PredefinedAttribute a special kind of attribute substitution, which @@ -580,23 +598,31 @@ type PredefinedAttribute AttributeSubstitution // CounterSubstitution is a counter, that may increment when it is substituted. // If Increment is set, then it will increment before being expanded. type CounterSubstitution struct { - Name string - Hidden bool - Value interface{} // may be a byte for character + Name string + Hidden bool + Value interface{} // may be a byte for character + rawText string } // NewCounterSubstitution returns a counter substitution. -func NewCounterSubstitution(name string, hidden bool, val interface{}) (CounterSubstitution, error) { +func NewCounterSubstitution(name string, hidden bool, val interface{}, rawText string) (CounterSubstitution, error) { if v, ok := val.(string); ok { val = rune(v[0]) } return CounterSubstitution{ - Name: name, - Hidden: hidden, - Value: val, + Name: name, + Hidden: hidden, + Value: val, + rawText: rawText, }, nil } +var _ RawText = &CounterSubstitution{} + +func (s *CounterSubstitution) RawText() (string, error) { + return s.rawText, nil +} + // ------------------------------------------ // Preamble // ------------------------------------------ @@ -2046,6 +2072,24 @@ const ( AttrSourceBlockOption = "source-option" // DEPRECATED ) +type BlockDelimiter struct { // TODO: use BlockDelimiterKind directly? + Kind string + rawText string +} + +func NewBlockDelimiter(kind, rawText string) (*BlockDelimiter, error) { + return &BlockDelimiter{ + Kind: kind, + rawText: rawText, + }, nil +} + +var _ RawText = &BlockDelimiter{} + +func (b *BlockDelimiter) RawText() (string, error) { + return b.rawText, nil +} + // DelimitedBlock the structure for the Listing blocks type DelimitedBlock struct { Kind string @@ -2171,6 +2215,28 @@ const ( // Sections // ------------------------------------------ +// RawSection the structure for a raw section, using during preparsing (needed to support level offsets) +type RawSection struct { + Level int + RawText string +} + +func NewRawSection(level int, rawText string) (*RawSection, error) { + return &RawSection{ + Level: level, + RawText: rawText, + }, nil +} + +func (s *RawSection) OffsetLevel(offset int) { + s.RawText = strings.Replace(s.RawText, strings.Repeat("=", s.Level+1)+" ", strings.Repeat("=", s.Level+1+offset)+" ", 1) + s.Level = s.Level + offset +} + +func (s *RawSection) Stringify() string { + return s.RawText +} + // Section the structure for a section type Section struct { Level int @@ -2179,6 +2245,15 @@ type Section struct { Elements []interface{} } +// NewSection returns a new Section +func NewSection(level int, title []interface{}) (*Section, error) { + // log.Debugf("new rawsection: '%s' (%d)", title, level) + return &Section{ + Level: level, + Title: title, + }, nil +} + var _ BlockWithElements = &Section{} // GetElements returns this section's title @@ -2427,6 +2502,7 @@ func NewLineBreak() (*LineBreak, error) { // ------------------------------------------ // QuotedText the structure for quoted text +// TODO implement RawText type QuotedText struct { Kind QuotedTextKind Elements []interface{} @@ -2581,6 +2657,7 @@ const ( ) // QuotedString a quoted string +// TODO implement RawText type QuotedString struct { Kind QuotedStringKind Elements []interface{} @@ -2765,9 +2842,7 @@ type RawLine string // NewRawLine returns a new RawLine wrapper for the given string func NewRawLine(content string) (RawLine, error) { - // log.Debugf("new line: '%v'", content) return RawLine(strings.TrimRight(content, " \t")), nil - // return RawLine(strings.Trim(content, " \t")), nil } func (l RawLine) trim() RawLine { diff --git a/pkg/types/types_test.go b/pkg/types/types_test.go index 1ff39ed8..20e42f2e 100644 --- a/pkg/types/types_test.go +++ b/pkg/types/types_test.go @@ -1156,12 +1156,6 @@ var _ = DescribeTable("rawtext", Name: "<", }, "<"), - // attribute substitution - Entry("attribute substitution", - &types.AttributeSubstitution{ - Name: "cookie", - }, - "{cookie}"), // mixins Entry("mixins", &types.QuotedText{ @@ -1187,10 +1181,7 @@ var _ = DescribeTable("rawtext", &types.StringElement{ Content: " ", }, - &types.AttributeSubstitution{ - Name: "here", - }, }, }, - "*some `\"content<>\"` {here}*"), + "*some `\"content<>\"` *"), ) diff --git a/pkg/validator/validator.go b/pkg/validator/validator.go index 4974b767..956c8e2e 100644 --- a/pkg/validator/validator.go +++ b/pkg/validator/validator.go @@ -52,17 +52,17 @@ func validateManpage(doc *types.Document) []Problem { if nameSection, ok := assertThatElement(elements[0]).isSection(withLevel(1), withTitle("name")); !ok { problems = append(problems, Problem{ Severity: Error, - Message: "manpage document is missing the 'Name' section'", + Message: "manpage document is missing the 'Name' section", }) } else if ok := assertThatElements(nameSection.Elements).haveCount(1); !ok { problems = append(problems, Problem{ Severity: Error, - Message: "'Name' section' should contain a single paragraph", + Message: "'Name' section should contain a single paragraph", }) } else if _, ok := assertThatElement(elements[1]).isSection(withLevel(1), withTitle("synopsis")); !ok { problems = append(problems, Problem{ Severity: Error, - Message: "manpage document is missing the 'Synopsis' section'", + Message: "manpage document is missing the 'Synopsis' section", }) } return problems diff --git a/pkg/validator/validator_test.go b/pkg/validator/validator_test.go index f9a49bce..1eb17fd3 100644 --- a/pkg/validator/validator_test.go +++ b/pkg/validator/validator_test.go @@ -213,7 +213,7 @@ var _ = Describe("document validator", func() { Expect(err).NotTo(HaveOccurred()) Expect(problems).To(ContainElement(Problem{ Severity: Error, - Message: "manpage document is missing the 'Name' section'", + Message: "manpage document is missing the 'Name' section", })) // Expect(doc.Attributes.GetAsStringWithDefault(types.AttrDocType, "")).To(Equal("article")) // changed }) @@ -274,7 +274,7 @@ var _ = Describe("document validator", func() { Expect(err).NotTo(HaveOccurred()) Expect(problems).To(ContainElement(Problem{ Severity: Error, - Message: "manpage document is missing the 'Name' section'", + Message: "manpage document is missing the 'Name' section", })) // Expect(doc.Attributes.GetAsStringWithDefault(types.AttrDocType, "")).To(Equal("article")) // changed }) @@ -322,7 +322,7 @@ var _ = Describe("document validator", func() { Expect(err).NotTo(HaveOccurred()) Expect(problems).To(ContainElement(Problem{ Severity: Error, - Message: "'Name' section' should contain a single paragraph", + Message: "'Name' section should contain a single paragraph", })) }) @@ -377,7 +377,7 @@ var _ = Describe("document validator", func() { Expect(err).NotTo(HaveOccurred()) Expect(problems).To(ContainElement(Problem{ Severity: Error, - Message: "'Name' section' should contain a single paragraph", + Message: "'Name' section should contain a single paragraph", })) }) @@ -432,7 +432,7 @@ var _ = Describe("document validator", func() { Expect(err).NotTo(HaveOccurred()) Expect(problems).To(ContainElement(Problem{ Severity: Error, - Message: "manpage document is missing the 'Synopsis' section'", + Message: "manpage document is missing the 'Synopsis' section", })) }) }) diff --git a/testsupport/console_matcher.go b/testsupport/console_matcher.go index a16c1dc1..e60221de 100644 --- a/testsupport/console_matcher.go +++ b/testsupport/console_matcher.go @@ -32,6 +32,9 @@ func ConfigureLogger(level log.Level, opts ...TeeOption) (*ConsoleOutput, func() if level == log.DebugLevel { t.out = os.Stdout // assume tee to stdout is needed too } + if level == log.DebugLevel { + t.out = os.Stdout // assume tee to stdout is needed too + } log.SetOutput(t) fmtr := log.StandardLogger().Formatter log.SetFormatter(&log.JSONFormatter{ @@ -39,6 +42,7 @@ func ConfigureLogger(level log.Level, opts ...TeeOption) (*ConsoleOutput, func() }) oldLevel := log.GetLevel() log.SetLevel(level) + return t, func() { log.SetOutput(os.Stdout) log.SetFormatter(fmtr) diff --git a/testsupport/document_matcher.go b/testsupport/document_matcher.go index eb066317..4103e75a 100644 --- a/testsupport/document_matcher.go +++ b/testsupport/document_matcher.go @@ -31,6 +31,11 @@ var opts = []cmp.Option{cmpopts.IgnoreUnexported( types.DelimitedBlock{}, types.Footnotes{}, types.TableOfContents{}, + types.AttributeDeclaration{}, + types.AttributeSubstitution{}, + types.AttributeReset{}, + types.CounterSubstitution{}, + types.PredefinedAttribute{}, )} func (m *documentMatcher) Match(actual interface{}) (success bool, err error) { diff --git a/testsupport/parse_document.go b/testsupport/parse_document.go index 26ce3430..c7dcb6a6 100644 --- a/testsupport/parse_document.go +++ b/testsupport/parse_document.go @@ -6,13 +6,16 @@ import ( "github.com/bytesparadise/libasciidoc/pkg/configuration" "github.com/bytesparadise/libasciidoc/pkg/parser" "github.com/bytesparadise/libasciidoc/pkg/types" + "github.com/pkg/errors" + log "github.com/sirupsen/logrus" ) // ParseDocument parses the actual value into a Document func ParseDocument(actual string, options ...interface{}) (*types.Document, error) { - r := strings.NewReader(actual) - allSettings := []configuration.Setting{configuration.WithFilename("test.adoc")} + allSettings := []configuration.Setting{ + configuration.WithFilename("test.adoc"), + } opts := []parser.Option{} for _, o := range options { switch o := o.(type) { @@ -24,5 +27,13 @@ func ParseDocument(actual string, options ...interface{}) (*types.Document, erro return nil, errors.Errorf("unexpected type of option: '%T'", o) } } - return parser.ParseDocument(r, configuration.NewConfiguration(allSettings...), opts...) + c := configuration.NewConfiguration(allSettings...) + p, err := parser.Preprocess(strings.NewReader(actual), c, opts...) + if err != nil { + return nil, err + } + if log.IsLevelEnabled(log.DebugLevel) { + log.Debugf("preparsed document:\n%s", p) + } + return parser.ParseDocument(strings.NewReader(p), c, opts...) } diff --git a/testsupport/preparse_document.go b/testsupport/preparse_document.go new file mode 100644 index 00000000..4d97a336 --- /dev/null +++ b/testsupport/preparse_document.go @@ -0,0 +1,34 @@ +package testsupport + +import ( + "strings" + + "github.com/bytesparadise/libasciidoc/pkg/configuration" + "github.com/bytesparadise/libasciidoc/pkg/parser" + log "github.com/sirupsen/logrus" + + "github.com/pkg/errors" +) + +func PreparseDocument(source string, options ...interface{}) (string, error) { + settings := []configuration.Setting{ + configuration.WithFilename("test.adoc"), + } + opts := []parser.Option{} + for _, o := range options { + switch o := o.(type) { + case configuration.Setting: + settings = append(settings, o) + case parser.Option: + opts = append(opts, o) + default: + return "", errors.Errorf("unexpected type of option: '%T'", o) + } + } + result, err := parser.Preprocess(strings.NewReader(source), configuration.NewConfiguration(settings...), opts...) + if log.IsLevelEnabled(log.DebugLevel) && err == nil { + log.Debugf("preparsed document:\n%s", result) + } + return result, err + +}