Documentation

Lean.DocString.Syntax

This module declares the syntax of Verso documents.

The concrete syntax falls outside what Lean's parsing framework can express, so Verso has a separate parser, in Lean.DocString.Parser, written with the lower-level parts of Lean's parser. The node kinds it produces are declared here, in Lean.Doc.Parser, together with the tokens that store literal content and the accessors that decode them.

Consumers read this syntax through the views in Lean.DocString.View, which is the only place that matches document syntax directly.

Elaboration turns a parsed document into Lean syntax for the Verso document AST of Lean.DocString.Types, and may invoke user-written metaprograms on the way: the concrete syntax is not extensible, but roles, directives, and code blocks are hooks for extension. That step is in Lean.Elab.DocString.

The tokens that store literal Verso content. The Verso parser builds them itself, so each declaration below supplies only the antiquotation that can be used in Lean syntax quasiquotations. Its own name is the token's syntax node kind.

Literal text content.

Equations
Instances For

    The name of a footnote or a link reference.

    Equations
    Instances For

      The URL of a link or an image.

      Equations
      Instances For

        The URL that a link reference definition provides.

        Equations
        Instances For

          The alternate text of an image.

          Equations
          Instances For

            Literal inline code content.

            Equations
            Instances For

              One source line of inline code or code block content.

              Equations
              Instances For

                Literal code block content.

                Equations
                Instances For

                  The kinds of the tokens that store literal content, and the TSyntax types over them. A token contains the source text exactly as written, keeping escape sequences, boundary spaces, and indentation. The getVerso* accessors decode it.

                  Tokens that contain Verso text content.

                  Equations
                  Instances For

                    The name of a Verso footnote or link reference name.

                    Equations
                    Instances For

                      The URL of a Verso link or image.

                      Equations
                      Instances For

                        The URL that a Verso link reference definition provides.

                        Equations
                        Instances For

                          The alternate text of a Verso image.

                          Equations
                          Instances For

                            The contents of Verso inline code.

                            Equations
                            Instances For

                              One source line inside Verso inline code or a Verso code block.

                              Equations
                              Instances For

                                The contents of a Verso code block.

                                Equations
                                Instances For

                                  The text of a Verso docstring whose markup does not parse.

                                  Equations
                                  Instances For
                                    @[reducible, inline]

                                    Text content in a Verso document. The token contains the source text with escape sequences intact. Use VersoText.view or TSyntax.getVersoText to decode it.

                                    Equations
                                    Instances For
                                      @[reducible, inline]

                                      The name of a footnote or a link reference in a Verso document. Use VersoRefName.view or TSyntax.getVersoRefName to decode its name to a string.

                                      Equations
                                      Instances For
                                        @[reducible, inline]

                                        The URL of a link or an image in a Verso document. Use VersoLinkUrl.view or TSyntax.getVersoLinkUrl to decode the URL to a string.

                                        Equations
                                        Instances For
                                          @[reducible, inline]

                                          The URL that a link reference definition provides in a Verso document. Use VersoLinkRefUrl.view or TSyntax.getVersoLinkRefUrl to decode the URL to a string.

                                          Equations
                                          Instances For
                                            @[reducible, inline]

                                            The alternate text of an image in a Verso document. Use VersoImageAlt.view or TSyntax.getVersoImageAlt to decode the alternate text to a string.

                                            Equations
                                            Instances For
                                              @[reducible, inline]

                                              Inline code content in a Verso document, with one versoCodeLine token per source line. Use VersoCode.view or TSyntax.getVersoCode to decode it to a string.

                                              Equations
                                              Instances For
                                                @[reducible, inline]

                                                A single source line of code content in a Verso document, inside inline code or a code block. Only indentation that is semantically part of the line of code is included in the atom, while indentation of a code block or docstring as a whole is part of the tokens' whitespace.

                                                Use VersoCodeLine.view or TSyntax.getVersoCodeLine to decode the line to a string.

                                                Equations
                                                Instances For
                                                  @[reducible, inline]

                                                  Code block content in a Verso document, with one versoCodeLine token per source line. The code block's indentation is whitespace between tokens. Use VersoCodeBlock.view or TSyntax.getVersoCodeBlock to decode it to a string.

                                                  Equations
                                                  Instances For

                                                    The length of the longest run of backticks in str. A delimiter of inline code, and the fence of a code block, is longer than every run of backticks in the content it surrounds.

                                                    Equations
                                                    • One or more equations did not get rendered due to their size.
                                                    Instances For

                                                      Whether str begins and ends with a space and contains a character other than a space.

                                                      In a code element, this sequence denotes the content with a space removed from each end. The parser records those two spaces as whitespace rather than content.

                                                      Equations
                                                      Instances For

                                                        Escapes value so that getVersoLinkUrl reads it back unchanged.

                                                        Equations
                                                        Instances For

                                                          Escapes value so that getVersoImageAlt reads it back unchanged.

                                                          Equations
                                                          Instances For

                                                            Decodes the text that a Verso text token denotes, interpreting escape sequences.

                                                            Equations
                                                            Instances For

                                                              Returns the text of a Verso text token as it was written, with its escape sequences intact.

                                                              Equations
                                                              Instances For

                                                                Decodes the name that a Verso footnote or link reference token contains.

                                                                Equations
                                                                Instances For

                                                                  Decodes the URL that a Verso link or image token contains, interpreting escape sequences.

                                                                  Equations
                                                                  Instances For

                                                                    Returns the URL that a Verso link reference definition token contains. These positions do not support escape sequences.

                                                                    Equations
                                                                    Instances For

                                                                      Decodes the alternate text that a Verso image token contains, interpreting escape sequences.

                                                                      Equations
                                                                      Instances For

                                                                        Returns the text of one source line inside Verso inline code or a Verso code block.

                                                                        Equations
                                                                        Instances For
                                                                          def Lean.TSyntax.getVersoCodeLines (s : Doc.VersoCode) :
                                                                          TSyntaxArray `Lean.Doc.Parser.versoCodeLine

                                                                          Returns the source lines of Verso inline code, in order.

                                                                          Equations
                                                                          Instances For

                                                                            Returns the code that Verso inline code content denotes, which is the text of its lines in order.

                                                                            Equations
                                                                            • One or more equations did not get rendered due to their size.
                                                                            Instances For
                                                                              def Lean.TSyntax.getVersoCodeBlockLines (s : Doc.VersoCodeBlock) :
                                                                              TSyntaxArray `Lean.Doc.Parser.versoCodeLine

                                                                              Returns the source lines of a Verso code block, in order.

                                                                              Equations
                                                                              Instances For

                                                                                Returns the contents of a Verso code block, which are the texts of its lines in order.

                                                                                Equations
                                                                                • One or more equations did not get rendered due to their size.
                                                                                Instances For

                                                                                  Decodes the text that a Verso text token denotes, interpreting escape sequences.

                                                                                  Equations
                                                                                  Instances For

                                                                                    Decodes the name that a Verso footnote or link reference token contains.

                                                                                    Equations
                                                                                    Instances For

                                                                                      Decodes the URL that a Verso link or image token contains, interpreting escape sequences.

                                                                                      Equations
                                                                                      Instances For

                                                                                        Returns the URL that a Verso link reference definition token contains. These positions do not support escape sequences.

                                                                                        Equations
                                                                                        Instances For

                                                                                          Decodes the alternate text that a Verso image token contains, interpreting escape sequences.

                                                                                          Equations
                                                                                          Instances For

                                                                                            Returns the text of one source line inside Verso inline code or a Verso code block.

                                                                                            Equations
                                                                                            Instances For

                                                                                              Returns the code that Verso inline code content denotes, which is the text of its lines in order.

                                                                                              Equations
                                                                                              Instances For

                                                                                                Returns the contents of a Verso code block, which are the texts of its lines in order.

                                                                                                Equations
                                                                                                Instances For

                                                                                                  The kinds of the nodes that the Verso parser builds, grouped by syntax category as Lean.Parser.Term and Lean.Parser.Command are. The tokens that store literal content are declared above, with the accessors that decode them.

                                                                                                  Argument values. Quotations may use antiquotations for any of the forms.

                                                                                                  Equations
                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                  Instances For

                                                                                                    Anonymous positional argument

                                                                                                    Equations
                                                                                                    Instances For

                                                                                                      Named argument

                                                                                                      Equations
                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                      Instances For

                                                                                                        Named argument

                                                                                                        Equations
                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                        Instances For

                                                                                                          Boolean flag, turned on

                                                                                                          Equations
                                                                                                          Instances For

                                                                                                            Boolean flag, turned off

                                                                                                            Equations
                                                                                                            Instances For

                                                                                                              Arguments to a role, directive, command, or code block.

                                                                                                              Equations
                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                              Instances For

                                                                                                                A URL target, written explicitly. Use square brackets for a named target.

                                                                                                                Equations
                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                Instances For

                                                                                                                  A named reference to a URL defined elsewhere. Use parentheses to write the URL here.

                                                                                                                  Equations
                                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                                  Instances For

                                                                                                                    The target of a link or image.

                                                                                                                    Equations
                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                    Instances For

                                                                                                                      The sequence of # characters that introduces a header. Its length determines the header's level.

                                                                                                                      Equations
                                                                                                                      Instances For

                                                                                                                        The marker that introduces a list item. An unordered list uses *, -, or +. An ordered list uses a number followed by . or ).

                                                                                                                        Equations
                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                        Instances For

                                                                                                                          The run of _ characters that delimits emphasis.

                                                                                                                          Equations
                                                                                                                          Instances For

                                                                                                                            The sequence of * characters that delimits bold text.

                                                                                                                            Equations
                                                                                                                            Instances For

                                                                                                                              The sequence of backticks that delimits inline code. Longer delimiters allow backticks in the content.

                                                                                                                              Equations
                                                                                                                              Instances For

                                                                                                                                The fence that surrounds a code block. Longer fences allow more backticks in the content.

                                                                                                                                Equations
                                                                                                                                Instances For

                                                                                                                                  The $ that introduces inline mathematical notation. $ begins an antiquotation, so a quotation splices this atom in as $m:inlineMathMarker.

                                                                                                                                  Equations
                                                                                                                                  Instances For

                                                                                                                                    The $ that introduces inline mathematical notation. $ begins an antiquotation, so a quotation splices this atom in as $m:inlineMathMarker.

                                                                                                                                    Equations
                                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                                    Instances For

                                                                                                                                      The sequence of : characters that delimits a directive.

                                                                                                                                      Equations
                                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                                      Instances For

                                                                                                                                        Emphasis, often rendered as italics.

                                                                                                                                        Emphasis may be nested by using longer sequences of _ for the outer delimiters.

                                                                                                                                        Equations
                                                                                                                                        Instances For

                                                                                                                                          Bold emphasis.

                                                                                                                                          A single * suffices to make text bold. Use _ for emphasis.

                                                                                                                                          Bold text may be nested by using longer sequences of * for the outer delimiters.

                                                                                                                                          Equations
                                                                                                                                          Instances For

                                                                                                                                            Literal code.

                                                                                                                                            Code may begin with any non-zero number of backticks. It must be terminated with the same number, and it may not contain a sequence of backticks that is at least as long as its starting or ending delimiters.

                                                                                                                                            If the first and last characters are space, and it contains at least one non-space character, then the resulting string has a single space stripped from each end. Thus, `` `x `` represents "`x", not " `x ".

                                                                                                                                            Equations
                                                                                                                                            Instances For

                                                                                                                                              Inline mathematical notation (equivalent to LaTeX's $ notation)

                                                                                                                                              Equations
                                                                                                                                              Instances For

                                                                                                                                                An image, with alternate text and a URL.

                                                                                                                                                The alternate text is a plain string, rather than Verso markup.

                                                                                                                                                The image URL may either be a concrete URL (written in parentheses) or a named URL (written in square brackets).

                                                                                                                                                Equations
                                                                                                                                                Instances For

                                                                                                                                                  A footnote use site.

                                                                                                                                                  Footnotes must be defined elsewhere using the [^NAME]: TEXT syntax.

                                                                                                                                                  Equations
                                                                                                                                                  Instances For

                                                                                                                                                    A role is an extension to the Verso document language in an inline position.

                                                                                                                                                    Text is given a role using the following syntax: {NAME ARGS*}[CONTENT]. The NAME is an identifier that determines which role is being used, akin to a function name. Each of the ARGS may have the following forms:

                                                                                                                                                    • A value, which is a string literal, natural number, or identifier
                                                                                                                                                    • A named argument, of the form (NAME := VALUE)
                                                                                                                                                    • A flag, of the form +NAME or -NAME

                                                                                                                                                    The CONTENT is a sequence of inline content. If there is only one piece of content and it has beginning and ending delimiters (e.g. code literals, links, or images, but not ordinary text), then the [ and ] may be omitted. In particular, {NAME ARGS*}`x` is equivalent to {NAME ARGS*}[`x`].

                                                                                                                                                    Equations
                                                                                                                                                    Instances For

                                                                                                                                                      A quotation, which contains a sequence of blocks that are at least as indented as the >.

                                                                                                                                                      Equations
                                                                                                                                                      Instances For

                                                                                                                                                        A code block that contains literal code. The contents of a code block are not written in Verso syntax.

                                                                                                                                                        Code blocks have the following syntax:

                                                                                                                                                        ```(NAME ARGS*)?
                                                                                                                                                        CONTENT
                                                                                                                                                        ```
                                                                                                                                                        

                                                                                                                                                        CONTENT is a literal string. If the CONTENT contains a sequence of three or more backticks, then the opening and closing ``` (called fences) must have more backticks than the longest sequence in CONTENT. Additionally, the opening and closing fences must have the same number of backticks.

                                                                                                                                                        If NAME and ARGS are not provided, then the code block represents literal text. If provided, the NAME is an identifier that selects an interpretation of the block. Unlike Markdown, this name is not necessarily the language in which the code is written, though many custom code blocks are, in practice, named after the language that they contain. NAME is more akin to a function name that determines the interpretation of the code block's contents. Each of the ARGS may have the following forms:

                                                                                                                                                        • A value, which is a string literal, natural number, or identifier
                                                                                                                                                        • A named argument, of the form (NAME := VALUE)
                                                                                                                                                        • A flag, of the form +NAME or -NAME

                                                                                                                                                        The CONTENT is interpreted according to the indentation of the fences. If the fences are indented n spaces, then n spaces are removed from the start of each line of CONTENT.

                                                                                                                                                        Equations
                                                                                                                                                        Instances For

                                                                                                                                                          A directive, which is an extension to the Verso language in block position. The contents of a directive are written in Verso syntax.

                                                                                                                                                          Directives have the following syntax:

                                                                                                                                                          :::NAME ARGS*
                                                                                                                                                          CONTENT*
                                                                                                                                                          :::
                                                                                                                                                          

                                                                                                                                                          The NAME is an identifier that determines which directive is being used, akin to a function name. Each of the ARGS may have the following forms:

                                                                                                                                                          • A value, which is a string literal, natural number, or identifier
                                                                                                                                                          • A named argument, of the form (NAME := VALUE)
                                                                                                                                                          • A flag, of the form +NAME or -NAME

                                                                                                                                                          The CONTENT is a sequence of block content. Directives may be nested by using more colons in the outer directive. For example:

                                                                                                                                                          ::::outer +flag (arg := 5)
                                                                                                                                                          A paragraph.
                                                                                                                                                          :::inner "label"
                                                                                                                                                          * 1
                                                                                                                                                          * 2
                                                                                                                                                          :::
                                                                                                                                                          ::::
                                                                                                                                                          
                                                                                                                                                          Equations
                                                                                                                                                          Instances For

                                                                                                                                                            A header

                                                                                                                                                            Headers must be correctly nested to form a tree structure. The first header in a document must start with #, and subsequent headers must have at most one more # than the preceding header.

                                                                                                                                                            Equations
                                                                                                                                                            Instances For

                                                                                                                                                              A block-level command, which invokes an extension during documentation processing.

                                                                                                                                                              The NAME is an identifier that determines which command is being used, akin to a function name. Each of the ARGS may have the following forms:

                                                                                                                                                              • A value, which is a string literal, natural number, or identifier
                                                                                                                                                              • A named argument, of the form (NAME := VALUE)
                                                                                                                                                              • A flag, of the form +NAME or -NAME
                                                                                                                                                              Equations
                                                                                                                                                              Instances For

                                                                                                                                                                A Verso document, which is a sequence of blocks.

                                                                                                                                                                Equations
                                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                                Instances For
                                                                                                                                                                  @[reducible, inline]

                                                                                                                                                                  An inline element of a Verso document, such as text, emphasis, or a link.

                                                                                                                                                                  Use VersoInline.view to inspect it.

                                                                                                                                                                  Equations
                                                                                                                                                                  Instances For
                                                                                                                                                                    @[reducible, inline]

                                                                                                                                                                    A block-level element of a Verso document, such as a paragraph, a list, or a code block.

                                                                                                                                                                    Use VersoBlock.view to inspect it.

                                                                                                                                                                    Equations
                                                                                                                                                                    Instances For
                                                                                                                                                                      @[reducible, inline]

                                                                                                                                                                      A delimiter of a Verso element, such as the backticks around a code literal or the asterisks around bold text. The markers that introduce a header, a list item, and mathematical notation are delimiters too.

                                                                                                                                                                      Each sits in a node of its own, so that a quotation can splice one in place of writing it out. Use VersoDelimiter.view or TSyntax.getVersoDelimiter to read its characters.

                                                                                                                                                                      Equations
                                                                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                                                                      Instances For
                                                                                                                                                                        def Lean.TSyntax.getVersoBlocks (doc : Doc.VersoDocument) :
                                                                                                                                                                        TSyntaxArray `Lean.Doc.Parser.block

                                                                                                                                                                        Extracts the blocks of a Verso document.

                                                                                                                                                                        Equations
                                                                                                                                                                        Instances For

                                                                                                                                                                          Returns the characters that make up a Verso delimiter.

                                                                                                                                                                          Equations
                                                                                                                                                                          Instances For

                                                                                                                                                                            Extracts the blocks of a Verso document.

                                                                                                                                                                            Equations
                                                                                                                                                                            Instances For

                                                                                                                                                                              Returns the characters that make up a Verso delimiter.

                                                                                                                                                                              Equations
                                                                                                                                                                              Instances For

                                                                                                                                                                                Each inline and block element can be used where its category is expected, so an element with a known kind can be spliced into a quotation.

                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.text) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_1 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.emph) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_2 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.bold) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_3 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.code) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_4 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.inline_math) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_5 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.display_math) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_6 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.link) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_7 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.image) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_8 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.footnote) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_9 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.linebreak) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_10 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Inline.role) (TSyntax `Lean.Doc.Parser.inline)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_11 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.para) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_12 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.ul) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_13 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.ol) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_14 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.dl) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_15 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.blockquote) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_16 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.codeblock) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_17 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.directive) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_18 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.header) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_19 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.link_ref) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_20 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.footnote_ref) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_21 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.metadata_block) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations
                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                instance Lean.Doc.instCoeTSyntaxConsSyntaxNodeKindMkStr5NilMkStr4_lean_22 :
                                                                                                                                                                                Coe (TSyntax `Lean.Doc.Parser.Block.command) (TSyntax `Lean.Doc.Parser.block)
                                                                                                                                                                                Equations