Package: groovy.markdown

## [Java] Class MarkdownSlurper

- groovy.markdown.MarkdownSlurper

-     @Incubating
      public class MarkdownSlurper
      extends Object

  Parses CommonMark Markdown into a MarkdownDocument backed by nested lists and maps.

  Usage:

       def doc = new groovy.markdown.MarkdownSlurper().parseText('# Hello')
       assert doc.headings[0].text == 'Hello'

  GFM-style tables are supported via an optional extension. Call enableTables(boolean) enableTables(true) after adding `org.commonmark:commonmark-ext-gfm-tables` to the runtime classpath.
  Since:
    6.0.0

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public MarkdownSlurper` | `enableTables(boolean enable)` Enable GFM-style tables.
    `` | `public MarkdownDocument` | `parse(Reader reader)` Parses Markdown content from a reader.
    `` | `public MarkdownDocument` | `parse(InputStream stream)` Parses Markdown content from an input stream.
    `` | `public MarkdownDocument` | `parse(File file)` Parses Markdown content from a file.
    `` | `public MarkdownDocument` | `parse(Path path)` Parses Markdown content from a path.
    `` | `public MarkdownDocument` | `parseText(String md)` Parses Markdown text into a MarkdownDocument.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### public MarkdownSlurper enableTables(boolean enable)

      Enable GFM-style tables. Requires `commonmark-ext-gfm-tables` on the classpath.

      throws:
        MarkdownRuntimeException if `enable` is true but the extension jar is missing
      Parameters:
        `enable` - whether to enable table parsing
      Returns:
        this slurper for chaining

    - #### public MarkdownDocument parse(Reader reader)

      Parses Markdown content from a reader.

      Parameters:
        `reader` - the reader supplying Markdown content
      Returns:
        the parsed document

    - #### public MarkdownDocument parse(InputStream stream)

      Parses Markdown content from an input stream. The caller remains responsible for closing the stream.

      Parameters:
        `stream` - the input stream supplying Markdown content
      Returns:
        the parsed document

    - #### public MarkdownDocument parse(File file)

      Parses Markdown content from a file.

      throws:
        IOException if the file cannot be read
      Parameters:
        `file` - the file to read
      Returns:
        the parsed document

    - #### public MarkdownDocument parse(Path path)

      Parses Markdown content from a path.

      throws:
        IOException if the path cannot be read
      Parameters:
        `path` - the path to read
      Returns:
        the parsed document

    - #### public MarkdownDocument parseText(String md)

      Parses Markdown text into a MarkdownDocument.

      Parameters:
        `md` - the Markdown text to parse
      Returns:
        the parsed document, or an empty document when the input is null or empty