master 8b8b77af0493 cached
71 files
2.4 MB
632.1k tokens
395 symbols
1 requests
Download .txt
Showing preview only (2,529K chars total). Download the full file or copy to clipboard to get everything.
Repository: ikatyang/tree-sitter-markdown
Branch: master
Commit: 8b8b77af0493
Files: 71
Total size: 2.4 MB

Directory structure:
gitextract_ozpv5ftm/

├── .editorconfig
├── .gitattributes
├── .gitignore
├── .gitmodules
├── .npmignore
├── .travis.yml
├── .versionrc.js
├── CHANGELOG.md
├── Cargo.toml
├── LICENSE
├── README.md
├── binding.gyp
├── bindings/
│   ├── node/
│   │   ├── binding.cc
│   │   └── index.js
│   └── rust/
│       ├── build.rs
│       └── lib.rs
├── corpus/
│   ├── custom.txt
│   ├── issues.txt
│   └── spec.txt
├── docs/
│   ├── assets/
│   │   ├── tree-sitter-markdown-0.7.1/
│   │   │   └── tree-sitter-markdown.wasm
│   │   ├── tree-sitter-playground-0.19.3/
│   │   │   ├── LICENSE
│   │   │   ├── playground.js
│   │   │   └── style.css
│   │   └── web-tree-sitter-0.19.3/
│   │       ├── LICENSE
│   │       ├── tree-sitter.js
│   │       └── tree-sitter.wasm
│   └── index.html
├── gfm-spec/
│   ├── spec.txt
│   └── update.sh
├── grammar.js
├── package.json
├── scripts/
│   ├── generate-playground.js
│   ├── setup-tree-sitter.sh
│   ├── update-generated-utils.block-data.json
│   ├── update-generated-utils.inline-data.json
│   ├── update-generated-utils.js
│   └── update-spec-corpus.js
└── src/
    ├── grammar.json
    ├── node-types.json
    ├── parser.c
    ├── scanner.cc
    ├── tree_sitter/
    │   └── parser.h
    └── tree_sitter_markdown/
        ├── block_context.cc
        ├── block_context.h
        ├── block_delimiter.cc
        ├── block_delimiter.h
        ├── block_scan.cc
        ├── block_scan.h
        ├── block_scan_util.generated.cc
        ├── block_scan_util.generated.h
        ├── inline_context.cc
        ├── inline_context.h
        ├── inline_delimiter.cc
        ├── inline_delimiter.h
        ├── inline_scan.cc
        ├── inline_scan.h
        ├── inline_scan_util.generated.cc
        ├── inline_scan_util.generated.h
        ├── lexer.cc
        ├── lexer.h
        ├── parse_table.cc
        ├── parse_table.h
        ├── predicate.cc
        ├── predicate.h
        ├── predicate_util.generated.cc
        ├── predicate_util.generated.h
        ├── shared_type.cc
        ├── shared_type.h
        ├── token_type.h
        ├── util.cc
        └── util.h

================================================
FILE CONTENTS
================================================

================================================
FILE: .editorconfig
================================================
root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[corpus/*]
trim_trailing_whitespace = false


================================================
FILE: .gitattributes
================================================
* text eol=lf
*.wasm binary

/src/** linguist-generated
/src/scanner.* linguist-generated=false
/src/tree_sitter_markdown/** linguist-generated=false
/index.js linguist-generated
/binding.gyp linguist-detectable=false


================================================
FILE: .gitignore
================================================
/build
/node_modules
/target


================================================
FILE: .gitmodules
================================================
[submodule "tree-sitter"]
	path = tree-sitter
	url = https://github.com/ikatyang/tree-sitter
	branch = v0.19.3-custom


================================================
FILE: .npmignore
================================================


================================================
FILE: .travis.yml
================================================
language: rust

rust:
  - stable

script:
  - if [ ! -d "./tree-sitter/target/release" ]; then bash ./scripts/setup-tree-sitter.sh; fi
  - ./tree-sitter/target/release/tree-sitter --version
  - ./tree-sitter/target/release/tree-sitter test
  - cargo test

cache:
  cargo: true
  directories:
    - ./tree-sitter


================================================
FILE: .versionrc.js
================================================
module.exports = {
  preset: "angular",
  scripts: {
    postbump: [
      "cargo package --list --allow-dirty && git add Cargo.lock",
      "rm -r docs && node scripts/generate-playground.js && git add docs",
    ].join(" && "),
  },
  bumpFiles: [
    {
      filename: "package.json",
      type: "json",
    },
    {
      filename: "Cargo.toml",
      updater: createTomlUpdater(),
    },
  ],
};

function createTomlUpdater() {
  const regex = /^version = "(.+)"$/m;
  return {
    readVersion(content) {
      return content.match(regex)[1];
    },
    writeVersion(content, version) {
      return content.replace(regex, `version = "${version}"`);
    },
  };
}


================================================
FILE: CHANGELOG.md
================================================
# Changelog

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

## [0.7.1](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.7.0...v0.7.1) (2021-04-18)


### Bug Fixes

* avoid crash ([#29](https://github.com/ikatyang/tree-sitter-markdown/issues/29)) ([db01494](https://github.com/ikatyang/tree-sitter-markdown/commit/db01494e4fa82b6da610e932c7bcce3408779013))



# [0.7.0](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.6.1...v0.7.0) (2021-04-18)


### Features

* add rust binding ([#28](https://github.com/ikatyang/tree-sitter-markdown/issues/28)) ([43ac64d](https://github.com/ikatyang/tree-sitter-markdown/commit/43ac64d8cade4244e3484d2588342dc28991333d))



## [0.6.1](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.6.0...v0.6.1) (2021-03-21)


### Bug Fixes

* add missing binding.gyp ([4ce8306](https://github.com/ikatyang/tree-sitter-markdown/commit/4ce8306))



# [0.6.0](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.5.0...v0.6.0) (2021-03-14)


### Features

* upgrade to tree-sitter@0.19.3 ([b9baa05](https://github.com/ikatyang/tree-sitter-markdown/commit/b9baa05))


### BREAKING CHANGES

* require tree-sitter 0.19+



# [0.5.0](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.4.1...v0.5.0) (2021-01-24)


### Features

* distinguish heading level tokens ([4d77c42](https://github.com/ikatyang/tree-sitter-markdown/commit/4d77c42))



## [0.4.1](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.4.0...v0.4.1) (2021-01-17)


### Bug Fixes

* backslash line break should not be allowed in table ([1c0dbdc](https://github.com/ikatyang/tree-sitter-markdown/commit/1c0dbdc))
* dot is allowed for the local-part of the extended email autolink ([0195050](https://github.com/ikatyang/tree-sitter-markdown/commit/0195050))
* no "assertion failed" caused by backslash line break in link label ([341e85f](https://github.com/ikatyang/tree-sitter-markdown/commit/341e85f))
* no "assertion failed" caused by cut link definition ([a09c4cb](https://github.com/ikatyang/tree-sitter-markdown/commit/a09c4cb))
* no "assertion failed" caused by right parenthesis in link definition ([19d63b0](https://github.com/ikatyang/tree-sitter-markdown/commit/19d63b0))
* no "assertion failed" caused by unexpected block delimiter behind the literal line break in unfinished inline stack ([62364f8](https://github.com/ikatyang/tree-sitter-markdown/commit/62364f8))
* no "assertion failed" caused by unpaired parenthesis with line break in link definition ([97e1e61](https://github.com/ikatyang/tree-sitter-markdown/commit/97e1e61))
* no infinite loop caused by overlapped delimiter range ([f9e9749](https://github.com/ikatyang/tree-sitter-markdown/commit/f9e9749))
* no SIGSEGV caused by unfinished link title ([d4e59ac](https://github.com/ikatyang/tree-sitter-markdown/commit/d4e59ac))



# [0.4.0](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.3.1...v0.4.0) (2020-05-24)


### Chores

* **deps:** upgrade to tree-sitter@0.16.7 ([43b1134](https://github.com/ikatyang/tree-sitter-markdown/commit/43b1134e9571331a5b28b527ea5aec06991f38e2))


### Features

* support super long words ([3d67064](https://github.com/ikatyang/tree-sitter-markdown/commit/3d67064f2d98e1ffac9cf9a675634453404785e9))



## [0.3.1](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.3.0...v0.3.1) (2020-04-26)


### Bug Fixes

* do not throw errors on empty image descriptions ([#5](https://github.com/ikatyang/tree-sitter-markdown/issues/5)) ([994f572](https://github.com/ikatyang/tree-sitter-markdown/commit/994f572))



# [0.3.0](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.2.0...v0.3.0) (2019-10-14)


### Bug Fixes

* `table` (with same indentation `table_header_row`/`table_delimiter_row`) in `list_item` is now recognized ([ec8e9fd](https://github.com/ikatyang/tree-sitter-markdown/commit/ec8e9fd))
* trailing `line_break`s are part of `code_fence_content` ([#2](https://github.com/ikatyang/tree-sitter-markdown/issues/2)) ([39daf72](https://github.com/ikatyang/tree-sitter-markdown/commit/39daf72))


### Features

* add `text` nodes ([#3](https://github.com/ikatyang/tree-sitter-markdown/issues/3)) ([8404102](https://github.com/ikatyang/tree-sitter-markdown/commit/8404102))
* add `virtual_space` nodes ([#1](https://github.com/ikatyang/tree-sitter-markdown/issues/1)) ([4742ce0](https://github.com/ikatyang/tree-sitter-markdown/commit/4742ce0), [850a9ec](https://github.com/ikatyang/tree-sitter-markdown/commit/850a9ec))



# [0.2.0](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.1.1...v0.2.0) (2019-10-01)


### Performance Improvements

* reduce the number of lookahead chars for parsing `task_list_item`s ([37e92ff](https://github.com/ikatyang/tree-sitter-markdown/commit/37e92ff))


### BREAKING CHANGES

* `checkbox`s are renamed with `task_list_item_marker`
* `task_list_item_marker`s are now part of the first `paragraph` in `task_list_item`s



## [0.1.1](https://github.com/ikatyang/tree-sitter-markdown/compare/v0.1.0...v0.1.1) (2019-10-01)


### Performance Improvements

* remove unnecessary buffering for block-level scanning ([b92a780](https://github.com/ikatyang/tree-sitter-markdown/commit/b92a780))



## 0.1.0 (2019-09-30)


### Features

* initial implementation ([a794f46](https://github.com/ikatyang/tree-sitter-markdown/commit/a794f46))


================================================
FILE: Cargo.toml
================================================
[package]
name = "tree-sitter-markdown"
description = "Markdown grammar for tree-sitter"
version = "0.7.1"
keywords = ["incremental", "parsing", "markdown"]
categories = ["parsing", "text-editors"]
repository = "https://github.com/ikatyang/tree-sitter-markdown"
edition = "2018"
license = "MIT"

build = "bindings/rust/build.rs"
include = [
  "/bindings/rust/",
  "/src/",
  "/CHANGELOG.md",
  "/grammar.js",
  "/LICENSE",
  "/README.md"
]

[lib]
path = "bindings/rust/lib.rs"

[dependencies]
tree-sitter = "0.19"

[build-dependencies]
cc = "1.0"


================================================
FILE: LICENSE
================================================
The MIT License (MIT)

Copyright (c) Ika <ikatyang@gmail.com> (https://github.com/ikatyang)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: README.md
================================================
# tree-sitter-markdown

[![npm](https://img.shields.io/npm/v/tree-sitter-markdown.svg)](https://www.npmjs.com/package/tree-sitter-markdown)
[![crates](https://img.shields.io/crates/v/tree-sitter-markdown.svg)](https://crates.io/crates/tree-sitter-markdown)
[![build](https://img.shields.io/travis/com/ikatyang/tree-sitter-markdown/master.svg)](https://travis-ci.com/ikatyang/tree-sitter-markdown/builds)

Markdown ([CommonMark Spec v0.29-gfm](https://github.github.com/gfm/)) grammar for [tree-sitter](https://github.com/tree-sitter/tree-sitter)

_Note: This grammar is based on the assumption that **[link label matchings](https://github.github.com/gfm/#matches) will never fail** since reference links can come before their reference definitions, which causes it hard to do incremental parsing without this assumption._

[Changelog](https://github.com/ikatyang/tree-sitter-markdown/blob/master/CHANGELOG.md)

## Install

```sh
npm install tree-sitter-markdown tree-sitter
```

## Usage

```js
const Parser = require("tree-sitter");
const Markdown = require("tree-sitter-markdown");

const parser = new Parser();
parser.setLanguage(Markdown);

const sourceCode = `
# foo
-     bar
  baz
`;

const tree = parser.parse(sourceCode);
console.log(tree.rootNode.toString());
// (document
//   (atx_heading
//     (atx_heading_marker)
//     (heading_content
//       (text)))
//   (tight_list
//     (list_item
//       (list_marker)
//       (indented_code_block
//         (text))
//       (paragraph
//         (text)))))
```

## License

MIT © [Ika](https://github.com/ikatyang)


================================================
FILE: binding.gyp
================================================
{
  "targets": [
    {
      "target_name": "tree_sitter_markdown_binding",
      "include_dirs": [
        "<!(node -e \"require('nan')\")",
        "src"
      ],
      "sources": [
        "src/parser.c",
        "bindings/node/binding.cc",
        "src/scanner.cc"
      ],
      "cflags_c": [
        "-std=c99",
        "-fexceptions"
      ],
      "defines": [
        "TREE_SITTER_MARKDOWN_AVOID_CRASH"
      ],
      "conditions": [
        ["OS=='mac'", { "xcode_settings": { "GCC_ENABLE_CPP_EXCEPTIONS": "YES" } }]
      ]
    }
  ]
}


================================================
FILE: bindings/node/binding.cc
================================================
#include "tree_sitter/parser.h"
#include <node.h>
#include "nan.h"

using namespace v8;

extern "C" TSLanguage * tree_sitter_markdown();

namespace {

NAN_METHOD(New) {}

void Init(Local<Object> exports, Local<Object> module) {
  Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(New);
  tpl->SetClassName(Nan::New("Language").ToLocalChecked());
  tpl->InstanceTemplate()->SetInternalFieldCount(1);

  Local<Function> constructor = Nan::GetFunction(tpl).ToLocalChecked();
  Local<Object> instance = constructor->NewInstance(Nan::GetCurrentContext()).ToLocalChecked();
  Nan::SetInternalFieldPointer(instance, 0, tree_sitter_markdown());

  Nan::Set(instance, Nan::New("name").ToLocalChecked(), Nan::New("markdown").ToLocalChecked());
  Nan::Set(module, Nan::New("exports").ToLocalChecked(), instance);
}

NODE_MODULE(tree_sitter_markdown_binding, Init)

}  // namespace


================================================
FILE: bindings/node/index.js
================================================
try {
  module.exports = require("../../build/Release/tree_sitter_markdown_binding");
} catch (error1) {
  if (error1.code !== 'MODULE_NOT_FOUND') {
    throw error1;
  }
  try {
    module.exports = require("../../build/Debug/tree_sitter_markdown_binding");
  } catch (error2) {
    if (error2.code !== 'MODULE_NOT_FOUND') {
      throw error2;
    }
    throw error1
  }
}

try {
  module.exports.nodeTypeInfo = require("../../src/node-types.json");
} catch (_) {}


================================================
FILE: bindings/rust/build.rs
================================================
fn main() {
    let src_dir = std::path::Path::new("src");

    let mut c_config = cc::Build::new();
    c_config.include(&src_dir);
    c_config
        .flag_if_supported("-Wno-unused-parameter")
        .flag_if_supported("-Wno-unused-but-set-variable")
        .flag_if_supported("-Wno-trigraphs");
    let parser_path = src_dir.join("parser.c");
    c_config.file(&parser_path);

    // If your language uses an external scanner written in C,
    // then include this block of code:

    /*
    let scanner_path = src_dir.join("scanner.c");
    c_config.file(&scanner_path);
    println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap());
    */

    c_config.compile("parser");
    println!("cargo:rerun-if-changed={}", parser_path.to_str().unwrap());

    // If your language uses an external scanner written in C++,
    // then include this block of code:

    let mut cpp_config = cc::Build::new();
    cpp_config.cpp(true);
    cpp_config.include(&src_dir);
    cpp_config
        .define("TREE_SITTER_MARKDOWN_AVOID_CRASH", None)
        .flag_if_supported("-Wno-unused-parameter")
        .flag_if_supported("-Wno-unused-but-set-variable");
    let scanner_path = src_dir.join("scanner.cc");
    cpp_config.file(&scanner_path);
    cpp_config.compile("scanner");
    println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap());
}


================================================
FILE: bindings/rust/lib.rs
================================================
//! This crate provides markdown language support for the [tree-sitter][] parsing library.
//!
//! Typically, you will use the [language][language func] function to add this language to a
//! tree-sitter [Parser][], and then use the parser to parse some code:
//!
//! ```
//! let code = "";
//! let mut parser = tree_sitter::Parser::new();
//! parser.set_language(tree_sitter_markdown::language()).expect("Error loading markdown grammar");
//! let tree = parser.parse(code, None).unwrap();
//! ```
//!
//! [Language]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Language.html
//! [language func]: fn.language.html
//! [Parser]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Parser.html
//! [tree-sitter]: https://tree-sitter.github.io/

use tree_sitter::Language;

extern "C" {
    fn tree_sitter_markdown() -> Language;
}

/// Get the tree-sitter [Language][] for this grammar.
///
/// [Language]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Language.html
pub fn language() -> Language {
    unsafe { tree_sitter_markdown() }
}

/// The content of the [`node-types.json`][] file for this grammar.
///
/// [`node-types.json`]: https://tree-sitter.github.io/tree-sitter/using-parsers#static-node-types
pub const NODE_TYPES: &'static str = include_str!("../../src/node-types.json");

// Uncomment these to include any queries that this grammar contains

// pub const HIGHLIGHTS_QUERY: &'static str = include_str!("../../queries/highlights.scm");
// pub const INJECTIONS_QUERY: &'static str = include_str!("../../queries/injections.scm");
// pub const LOCALS_QUERY: &'static str = include_str!("../../queries/locals.scm");
// pub const TAGS_QUERY: &'static str = include_str!("../../queries/tags.scm");

#[cfg(test)]
mod tests {
    #[test]
    fn test_can_load_grammar() {
        let mut parser = tree_sitter::Parser::new();
        parser
            .set_language(super::language())
            .expect("Error loading markdown language");
        assert_eq!(format!("{:?}", parser.parse("abc", None).unwrap()), "{Tree {Node document (0, 0) - (0, 3)}}")
    }
}


================================================
FILE: corpus/custom.txt
================================================
================================================================================
Fenced code block - trailing blank lines are considered part of its content
================================================================================
- ```


- ~~~


- ```
	
	
- ~~~
	
	
- ```
    
    
- ~~~
    
    
-
--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (line_break))))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (line_break))))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (virtual_space)
          (virtual_space)
          (line_break)
          (virtual_space)
          (virtual_space))))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (virtual_space)
          (virtual_space)
          (line_break)
          (virtual_space)
          (virtual_space))))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (text)
          (line_break)
          (text))))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (text)
          (line_break)
          (text))))
    (list_item
      (list_marker))))

================================================================================
Fenced code block - EOF-only newlines are NOT considered part of its content
================================================================================
- ```


--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content)))))

================================================================================
Table (extension) - too more indentation in list item [is NOT table]
================================================================================
-  | abc | def |
       | --- | --- |

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text)))))

================================================================================
Table (extension) - more indentation in list item [is table]
================================================================================
-  | abc | def |
    | --- | --- |

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (table
        (table_header_row
          (table_cell
            (text))
          (table_cell
            (text)))
        (table_delimiter_row
          (table_column_alignment)
          (table_column_alignment))))))

================================================================================
Table (extension) - same indentation in list item [is table]
================================================================================
-  | abc | def |
   | --- | --- |

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (table
        (table_header_row
          (table_cell
            (text))
          (table_cell
            (text)))
        (table_delimiter_row
          (table_column_alignment)
          (table_column_alignment))))))

================================================================================
Table (extension) - less indentation in list item [is NOT table]
================================================================================
-  | abc | def |
  | --- | --- |

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text)))))

================================================================================
Table (extension) - too more indentation in non-list item [is NOT table]
================================================================================
>  | abc | def |
>     | --- | --- |

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Table (extension) - more indentation in non-list item [is table]
================================================================================
>  | abc | def |
>   | --- | --- |

--------------------------------------------------------------------------------

(document
  (block_quote
    (table
      (table_header_row
        (table_cell
          (text))
        (table_cell
          (text)))
      (table_delimiter_row
        (table_column_alignment)
        (table_column_alignment)))))

================================================================================
Table (extension) - same indentation in non-list item [is table]
================================================================================
>  | abc | def |
>  | --- | --- |

--------------------------------------------------------------------------------

(document
  (block_quote
    (table
      (table_header_row
        (table_cell
          (text))
        (table_cell
          (text)))
      (table_delimiter_row
        (table_column_alignment)
        (table_column_alignment)))))

================================================================================
Table (extension) - less indentation in non-list item [is table]
================================================================================
>  | abc | def |
> | --- | --- |

--------------------------------------------------------------------------------

(document
  (block_quote
    (table
      (table_header_row
        (table_cell
          (text))
        (table_cell
          (text)))
      (table_delimiter_row
        (table_column_alignment)
        (table_column_alignment)))))

================================================================================
Table (extension) - too less indentation in non-list item [is NOT table]
================================================================================
> | abc | def |
| --- | --- |

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Table (extension) - escaped column separator
================================================================================
| \| | \\| | \\\| | \\\\| |
| -- | --- | ---- | ----- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (backslash_escape)
        (text))
      (table_cell
        (text)
        (backslash_escape)
        (text))
      (table_cell
        (text)
        (backslash_escape)
        (backslash_escape)
        (text))
      (table_cell
        (text)
        (backslash_escape)
        (backslash_escape)
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in code span
================================================================================
| `\|` | `\\|` | `\\\|` | `\\\\|` |
| ---- | ----- | ------ | ------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (code_span
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (code_span
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (code_span
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (code_span
          (text)
          (backslash_escape))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in autolink (URI)
================================================================================
| <abc:\|> | <abc:\\|> | <abc:\\\|> | <abc:\\\\|> |
| -------- | --------- | ---------- | ----------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (uri_autolink
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (uri_autolink
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (uri_autolink
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (uri_autolink
          (text)
          (backslash_escape))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in autolink (email)
================================================================================
| <\|@example.com> | <\\|@example.com> | <\|\|@example.com> |
| ---------------- | ----------------- | ------------------ |
| is-autolink      | is-NOT-autolink   | is-autolink        |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (email_autolink
          (backslash_escape)
          (text))
        (text))
      (table_cell
        (text)
        (backslash_escape)
        (text))
      (table_cell
        (text)
        (email_autolink
          (backslash_escape)
          (backslash_escape)
          (text))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text))
      (table_cell
        (text))
      (table_cell
        (text)))))

================================================================================
Table (extension) - escaped column separator in autolink (extension)
================================================================================
| www.a.com\| | www.a.com\\| | www.a.com\\\| | www.a.com\\\\| |
| ----------- | ------------ | ------------- | -------------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (www_autolink
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (www_autolink
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (www_autolink
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (www_autolink
          (text)
          (backslash_escape))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in raw html (unquoted attribute value)
================================================================================
| <x x=\|> | <x x=\\|> | <x x=\\\|> | <x x=\\\\|> |
| -------- | --------- | ---------- | ----------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in raw html (single-quoted attribute value)
================================================================================
| <x x='\|'> | <x x='\\|'> | <x x='\\\|'> | <x x='\\\\|'> |
| ---------- | ----------- | ------------ | ------------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in raw html (double-quoted attribute value)
================================================================================
| <x x="\|"> | <x x="\\|"> | <x x="\\\|"> | <x x="\\\\|"> |
| ---------- | ----------- | ------------ | ------------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text))
      (table_cell
        (text)
        (html_open_tag
          (html_tag_name)
          (html_atrribute
            (html_attribute_key)
            (html_attribute_value
              (text)
              (backslash_escape))))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in raw html (html comment)
================================================================================
| <!--\|--> | <!--\\|--> | <!--\\\|--> | <!--\\\\|--> |
| --------- | ---------- | ----------- | ------------ |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (html_comment
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_comment
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_comment
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_comment
          (text)
          (backslash_escape))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in raw html (processing instruction)
================================================================================
| <?\|?> | <?\\|?> | <?\\\|?> | <?\\\\|?> |
| ------ | ------- | -------- | --------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (html_processing_instruction
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_processing_instruction
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_processing_instruction
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_processing_instruction
          (text)
          (backslash_escape))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in raw html (declaration)
================================================================================
| <!X \|> | <!X \\|> | <!X \\\|> | <!X \\\\|> |
| ------- | -------- | --------- | ---------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (html_declaration
          (html_declaration_name)
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_declaration
          (html_declaration_name)
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_declaration
          (html_declaration_name)
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_declaration
          (html_declaration_name)
          (text)
          (backslash_escape))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Table (extension) - escaped column separator in raw html (CDATA)
================================================================================
| <![CDATA[\|]]> | <![CDATA[\\|]]> | <![CDATA[\\\|]]> | <![CDATA[\\\\|]]> |
| -------------- | --------------- | ---------------- | ----------------- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (html_cdata_section
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_cdata_section
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_cdata_section
          (text)
          (backslash_escape))
        (text))
      (table_cell
        (text)
        (html_cdata_section
          (text)
          (backslash_escape))
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Task list item (extension) - setext heading takes precedence over it
================================================================================
- [ ] text
  ===
- [x] text
  ===

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (setext_heading
        (heading_content
          (text))
        (setext_h1_underline)))
    (list_item
      (list_marker)
      (setext_heading
        (heading_content
          (text))
        (setext_h1_underline)))))

================================================================================
Autolink (extension) - valid domain
================================================================================
is-NOT-autolink www.example
is-NOT-autolink www.example.
is-autolink     www.example.com
is-NOT-autolink www.example.co_m
is-NOT-autolink www.e_xample.com
is-autolink     www.su_b.example.com

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)
    (soft_line_break)
    (text)
    (www_autolink
      (text))
    (soft_line_break)
    (text)
    (soft_line_break)
    (text)
    (soft_line_break)
    (text)
    (www_autolink
      (text))))

================================================================================
Virtual space
================================================================================
   -    	three virtual spaces

- ```
	two virtual spaces
  ```

-  <script>
	/* one virtual space */</script>

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (indented_code_block
        (virtual_space)
        (virtual_space)
        (virtual_space)
        (text)))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (virtual_space)
          (virtual_space)
          (text))))
    (list_item
      (list_marker)
      (html_block
        (text)
        (line_break)
        (virtual_space)
        (text)))))

================================================================================
Unnamed 1
================================================================================
<a a=a
a a a>

--------------------------------------------------------------------------------

(document
  (paragraph
    (html_open_tag
      (html_tag_name)
      (html_atrribute
        (html_attribute_key)
        (html_attribute_value
          (text)))
      (html_atrribute
        (html_attribute_key))
      (html_atrribute
        (html_attribute_key))
      (html_atrribute
        (html_attribute_key)))))

================================================================================
Unnamed 2
================================================================================
[example]: https://example.com/

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))))

================================================================================
Empty Image Description
================================================================================
![]

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Super Long Word
================================================================================
12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Super Long Extended Autolinks
================================================================================
foo www.12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890.com/12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 bar

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (www_autolink
      (text))
    (text)))


================================================
FILE: corpus/issues.txt
================================================
================================================================================
#14 - Assertion failed caused by unexpected block delimiter behind the literal line break in unfinished inline stack
================================================================================
*$$
-:
<<<*$$
-:
<<<+-+-

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text)))
    (table_data_row
      (table_cell
        (text)))
    (table_data_row
      (table_cell
        (text)))))

================================================================================
#14 - Assertion failed caused by dot in the local-part of the extended email autolink
================================================================================
ss_*.
	$
6@-�~?�1:

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)
    (soft_line_break)
    (text)))

================================================================================
#14 - Assertion failed caused by backslash line break followed by backslash escape in link label
================================================================================
[
#k
V\
*)\\
]:[[z
[<!&<&s!j&P

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text)
      (backslash_escape)
      (text))
    (link_destination
      (text)))
  (paragraph
    (text)))

================================================================================
#14 - Assertion failed caused by unexpected backslash line break in table
================================================================================
*�wj\�2[
-|
&_&\


--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text)))
    (table_data_row
      (table_cell
        (text)))))

================================================================================
#14 - SIGSEGV caused by incorrect end condition for the unpaired link title
================================================================================
[](0 ()

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
#14 - Assertion failed caused by right parenthesis in link definition
================================================================================
[x]: x
)

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (text)))

================================================================================
#14 - Assertion failed caused by unpaired parenthesis with line break in link definition
================================================================================
[a]:b
(

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (text)))

================================================================================
#14 - Assertion failed caused by cut link definition
================================================================================
[`]:
a
b
c

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
#16 - infinite loop caused by overlapped delimiter range
================================================================================
[(https://example.com/foo[bar]

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (uri_autolink
      (text))
    (link
      (link_text
        (text)))))


================================================
FILE: corpus/spec.txt
================================================
================================================================================
Example 1 - https://github.github.com/gfm/#example-1
================================================================================
	foo	baz		bim

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)))

================================================================================
Example 2 - https://github.github.com/gfm/#example-2
================================================================================
  	foo	baz		bim

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)))

================================================================================
Example 3 - https://github.github.com/gfm/#example-3
================================================================================
    a	a
    ὐ	a

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 4 - https://github.github.com/gfm/#example-4
================================================================================
  - foo

	bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))))

================================================================================
Example 5 - https://github.github.com/gfm/#example-5
================================================================================
- foo

		bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (indented_code_block
        (virtual_space)
        (virtual_space)
        (text)))))

================================================================================
Example 6 - https://github.github.com/gfm/#example-6
================================================================================
>		foo

--------------------------------------------------------------------------------

(document
  (block_quote
    (indented_code_block
      (virtual_space)
      (virtual_space)
      (text))))

================================================================================
Example 7 - https://github.github.com/gfm/#example-7
================================================================================
-		foo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (indented_code_block
        (virtual_space)
        (virtual_space)
        (text)))))

================================================================================
Example 8 - https://github.github.com/gfm/#example-8
================================================================================
    foo
	bar

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 9 - https://github.github.com/gfm/#example-9
================================================================================
 - foo
   - bar
	 - baz

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text))
          (tight_list
            (list_item
              (list_marker)
              (paragraph
                (text)))))))))

================================================================================
Example 10 - https://github.github.com/gfm/#example-10
================================================================================
#	Foo

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text))))

================================================================================
Example 11 - https://github.github.com/gfm/#example-11
================================================================================
*	*	*	

--------------------------------------------------------------------------------

(document
  (thematic_break))

================================================================================
Example 12 - https://github.github.com/gfm/#example-12
================================================================================
- `one
- two`

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 13 - https://github.github.com/gfm/#example-13
================================================================================
***
---
___

--------------------------------------------------------------------------------

(document
  (thematic_break)
  (thematic_break)
  (thematic_break))

================================================================================
Example 14 - https://github.github.com/gfm/#example-14
================================================================================
+++

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Example 15 - https://github.github.com/gfm/#example-15
================================================================================
===

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Example 16 - https://github.github.com/gfm/#example-16
================================================================================
--
**
__

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 17 - https://github.github.com/gfm/#example-17
================================================================================
 ***
  ***
   ***

--------------------------------------------------------------------------------

(document
  (thematic_break)
  (thematic_break)
  (thematic_break))

================================================================================
Example 18 - https://github.github.com/gfm/#example-18
================================================================================
    ***

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)))

================================================================================
Example 19 - https://github.github.com/gfm/#example-19
================================================================================
Foo
    ***

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 20 - https://github.github.com/gfm/#example-20
================================================================================
_____________________________________

--------------------------------------------------------------------------------

(document
  (thematic_break))

================================================================================
Example 21 - https://github.github.com/gfm/#example-21
================================================================================
 - - -

--------------------------------------------------------------------------------

(document
  (thematic_break))

================================================================================
Example 22 - https://github.github.com/gfm/#example-22
================================================================================
 **  * ** * ** * **

--------------------------------------------------------------------------------

(document
  (thematic_break))

================================================================================
Example 23 - https://github.github.com/gfm/#example-23
================================================================================
-     -      -      -

--------------------------------------------------------------------------------

(document
  (thematic_break))

================================================================================
Example 24 - https://github.github.com/gfm/#example-24
================================================================================
- - - -    

--------------------------------------------------------------------------------

(document
  (thematic_break))

================================================================================
Example 25 - https://github.github.com/gfm/#example-25
================================================================================
_ _ _ _ a

a------

---a---

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (paragraph
    (text))
  (paragraph
    (text)))

================================================================================
Example 26 - https://github.github.com/gfm/#example-26
================================================================================
 *-*

--------------------------------------------------------------------------------

(document
  (paragraph
    (emphasis
      (text))))

================================================================================
Example 27 - https://github.github.com/gfm/#example-27
================================================================================
- foo
***
- bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (thematic_break)
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 28 - https://github.github.com/gfm/#example-28
================================================================================
Foo
***
bar

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (thematic_break)
  (paragraph
    (text)))

================================================================================
Example 29 - https://github.github.com/gfm/#example-29
================================================================================
Foo
---
bar

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (paragraph
    (text)))

================================================================================
Example 30 - https://github.github.com/gfm/#example-30
================================================================================
* Foo
* * *
* Bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (thematic_break)
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 31 - https://github.github.com/gfm/#example-31
================================================================================
- Foo
- * * *

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (thematic_break))))

================================================================================
Example 32 - https://github.github.com/gfm/#example-32
================================================================================
# foo
## foo
### foo
#### foo
##### foo
###### foo

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h2_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h3_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h4_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h5_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h6_marker)
    (heading_content
      (text))))

================================================================================
Example 33 - https://github.github.com/gfm/#example-33
================================================================================
####### foo

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Example 34 - https://github.github.com/gfm/#example-34
================================================================================
#5 bolt

#hashtag

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (paragraph
    (text)))

================================================================================
Example 35 - https://github.github.com/gfm/#example-35
================================================================================
\## foo

--------------------------------------------------------------------------------

(document
  (paragraph
    (backslash_escape)
    (text)))

================================================================================
Example 36 - https://github.github.com/gfm/#example-36
================================================================================
# foo *bar* \*baz\*

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text)
      (emphasis
        (text))
      (text)
      (backslash_escape)
      (text)
      (backslash_escape))))

================================================================================
Example 37 - https://github.github.com/gfm/#example-37
================================================================================
#                  foo                     

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text))))

================================================================================
Example 38 - https://github.github.com/gfm/#example-38
================================================================================
 ### foo
  ## foo
   # foo

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h3_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h2_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text))))

================================================================================
Example 39 - https://github.github.com/gfm/#example-39
================================================================================
    # foo

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)))

================================================================================
Example 40 - https://github.github.com/gfm/#example-40
================================================================================
foo
    # bar

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 41 - https://github.github.com/gfm/#example-41
================================================================================
## foo ##
  ###   bar    ###

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h2_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h3_marker)
    (heading_content
      (text))))

================================================================================
Example 42 - https://github.github.com/gfm/#example-42
================================================================================
# foo ##################################
##### foo ##

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text)))
  (atx_heading
    (atx_h5_marker)
    (heading_content
      (text))))

================================================================================
Example 43 - https://github.github.com/gfm/#example-43
================================================================================
### foo ###     

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h3_marker)
    (heading_content
      (text))))

================================================================================
Example 44 - https://github.github.com/gfm/#example-44
================================================================================
### foo ### b

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h3_marker)
    (heading_content
      (text))))

================================================================================
Example 45 - https://github.github.com/gfm/#example-45
================================================================================
# foo#

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text))))

================================================================================
Example 46 - https://github.github.com/gfm/#example-46
================================================================================
### foo \###
## foo #\##
# foo \#

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h3_marker)
    (heading_content
      (text)
      (backslash_escape)
      (text)))
  (atx_heading
    (atx_h2_marker)
    (heading_content
      (text)
      (backslash_escape)
      (text)))
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text)
      (backslash_escape))))

================================================================================
Example 47 - https://github.github.com/gfm/#example-47
================================================================================
****
## foo
****

--------------------------------------------------------------------------------

(document
  (thematic_break)
  (atx_heading
    (atx_h2_marker)
    (heading_content
      (text)))
  (thematic_break))

================================================================================
Example 48 - https://github.github.com/gfm/#example-48
================================================================================
Foo bar
# baz
Bar foo

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text)))
  (paragraph
    (text)))

================================================================================
Example 49 - https://github.github.com/gfm/#example-49
================================================================================
## 
#
### ###

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h2_marker))
  (atx_heading
    (atx_h1_marker))
  (atx_heading
    (atx_h3_marker)
    (heading_content
      (text))))

================================================================================
Example 50 - https://github.github.com/gfm/#example-50
================================================================================
Foo *bar*
=========

Foo *bar*
---------

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text)
      (emphasis
        (text)))
    (setext_h1_underline))
  (setext_heading
    (heading_content
      (text)
      (emphasis
        (text)))
    (setext_h2_underline)))

================================================================================
Example 51 - https://github.github.com/gfm/#example-51
================================================================================
Foo *bar
baz*
====

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text)
      (emphasis
        (text)
        (soft_line_break)
        (text)))
    (setext_h1_underline)))

================================================================================
Example 52 - https://github.github.com/gfm/#example-52
================================================================================
  Foo *bar
baz*	
====

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text)
      (emphasis
        (text)
        (soft_line_break)
        (text)))
    (setext_h1_underline)))

================================================================================
Example 53 - https://github.github.com/gfm/#example-53
================================================================================
Foo
-------------------------

Foo
=

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (setext_heading
    (heading_content
      (text))
    (setext_h1_underline)))

================================================================================
Example 54 - https://github.github.com/gfm/#example-54
================================================================================
   Foo
---

  Foo
-----

  Foo
  ===

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (setext_heading
    (heading_content
      (text))
    (setext_h1_underline)))

================================================================================
Example 55 - https://github.github.com/gfm/#example-55
================================================================================
    Foo
    ---

    Foo
---

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text))
  (thematic_break))

================================================================================
Example 56 - https://github.github.com/gfm/#example-56
================================================================================
Foo
   ----      

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline)))

================================================================================
Example 57 - https://github.github.com/gfm/#example-57
================================================================================
Foo
    ---

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 58 - https://github.github.com/gfm/#example-58
================================================================================
Foo
= =

Foo
--- -

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text))
  (paragraph
    (text))
  (thematic_break))

================================================================================
Example 59 - https://github.github.com/gfm/#example-59
================================================================================
Foo  
-----

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline)))

================================================================================
Example 60 - https://github.github.com/gfm/#example-60
================================================================================
Foo\
----

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline)))

================================================================================
Example 61 - https://github.github.com/gfm/#example-61
================================================================================
`Foo
----
`

<a title="a lot
---
of dashes"/>

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (paragraph
    (text))
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (paragraph
    (text)))

================================================================================
Example 62 - https://github.github.com/gfm/#example-62
================================================================================
> Foo
---

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)))
  (thematic_break))

================================================================================
Example 63 - https://github.github.com/gfm/#example-63
================================================================================
> foo
bar
===

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)
      (soft_line_break)
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 64 - https://github.github.com/gfm/#example-64
================================================================================
- Foo
---

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (thematic_break))

================================================================================
Example 65 - https://github.github.com/gfm/#example-65
================================================================================
Foo
Bar
---

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text)
      (soft_line_break)
      (text))
    (setext_h2_underline)))

================================================================================
Example 66 - https://github.github.com/gfm/#example-66
================================================================================
---
Foo
---
Bar
---
Baz

--------------------------------------------------------------------------------

(document
  (thematic_break)
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (paragraph
    (text)))

================================================================================
Example 67 - https://github.github.com/gfm/#example-67
================================================================================

====

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Example 68 - https://github.github.com/gfm/#example-68
================================================================================
---
---

--------------------------------------------------------------------------------

(document
  (thematic_break)
  (thematic_break))

================================================================================
Example 69 - https://github.github.com/gfm/#example-69
================================================================================
- foo
-----

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (thematic_break))

================================================================================
Example 70 - https://github.github.com/gfm/#example-70
================================================================================
    foo
---

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text))
  (thematic_break))

================================================================================
Example 71 - https://github.github.com/gfm/#example-71
================================================================================
> foo
-----

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)))
  (thematic_break))

================================================================================
Example 72 - https://github.github.com/gfm/#example-72
================================================================================
\> foo
------

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (backslash_escape)
      (text))
    (setext_h2_underline)))

================================================================================
Example 73 - https://github.github.com/gfm/#example-73
================================================================================
Foo

bar
---
baz

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (paragraph
    (text)))

================================================================================
Example 74 - https://github.github.com/gfm/#example-74
================================================================================
Foo
bar

---

baz

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text))
  (thematic_break)
  (paragraph
    (text)))

================================================================================
Example 75 - https://github.github.com/gfm/#example-75
================================================================================
Foo
bar
* * *
baz

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text))
  (thematic_break)
  (paragraph
    (text)))

================================================================================
Example 76 - https://github.github.com/gfm/#example-76
================================================================================
Foo
bar
\---
baz

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 77 - https://github.github.com/gfm/#example-77
================================================================================
    a simple
      indented code block

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 78 - https://github.github.com/gfm/#example-78
================================================================================
  - foo

    bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))))

================================================================================
Example 79 - https://github.github.com/gfm/#example-79
================================================================================
1.  foo

    - bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text)))))))

================================================================================
Example 80 - https://github.github.com/gfm/#example-80
================================================================================
    <a/>
    *hi*

    - one

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)))

================================================================================
Example 81 - https://github.github.com/gfm/#example-81
================================================================================
    chunk1

    chunk2
  
 
 
    chunk3

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (line_break)
    (line_break)
    (text)))

================================================================================
Example 82 - https://github.github.com/gfm/#example-82
================================================================================
    chunk1
      
      chunk2

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 83 - https://github.github.com/gfm/#example-83
================================================================================
Foo
    bar


--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 84 - https://github.github.com/gfm/#example-84
================================================================================
    foo
bar

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text))
  (paragraph
    (text)))

================================================================================
Example 85 - https://github.github.com/gfm/#example-85
================================================================================
# Heading
    foo
Heading
------
    foo
----

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text)))
  (indented_code_block
    (text))
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (indented_code_block
    (text))
  (thematic_break))

================================================================================
Example 86 - https://github.github.com/gfm/#example-86
================================================================================
        foo
    bar

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 87 - https://github.github.com/gfm/#example-87
================================================================================

    
    foo
    


--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)))

================================================================================
Example 88 - https://github.github.com/gfm/#example-88
================================================================================
    foo  

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)))

================================================================================
Example 89 - https://github.github.com/gfm/#example-89
================================================================================
```
<
 >
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 90 - https://github.github.com/gfm/#example-90
================================================================================
~~~
<
 >
~~~

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 91 - https://github.github.com/gfm/#example-91
================================================================================
``
foo
``

--------------------------------------------------------------------------------

(document
  (paragraph
    (code_span
      (text))))

================================================================================
Example 92 - https://github.github.com/gfm/#example-92
================================================================================
```
aaa
~~~
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 93 - https://github.github.com/gfm/#example-93
================================================================================
~~~
aaa
```
~~~

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 94 - https://github.github.com/gfm/#example-94
================================================================================
````
aaa
```
``````

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 95 - https://github.github.com/gfm/#example-95
================================================================================
~~~~
aaa
~~~
~~~~

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 96 - https://github.github.com/gfm/#example-96
================================================================================
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block))

================================================================================
Example 97 - https://github.github.com/gfm/#example-97
================================================================================
`````

```
aaa

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (line_break)
      (text)
      (line_break)
      (text))))

================================================================================
Example 98 - https://github.github.com/gfm/#example-98
================================================================================
> ```
> aaa

bbb

--------------------------------------------------------------------------------

(document
  (block_quote
    (fenced_code_block
      (code_fence_content
        (text))))
  (paragraph
    (text)))

================================================================================
Example 99 - https://github.github.com/gfm/#example-99
================================================================================
```

  
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (line_break)
      (text))))

================================================================================
Example 100 - https://github.github.com/gfm/#example-100
================================================================================
```
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block))

================================================================================
Example 101 - https://github.github.com/gfm/#example-101
================================================================================
 ```
 aaa
aaa
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 102 - https://github.github.com/gfm/#example-102
================================================================================
  ```
aaa
  aaa
aaa
  ```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text)
      (line_break)
      (text))))

================================================================================
Example 103 - https://github.github.com/gfm/#example-103
================================================================================
   ```
   aaa
    aaa
  aaa
   ```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text)
      (line_break)
      (text))))

================================================================================
Example 104 - https://github.github.com/gfm/#example-104
================================================================================
    ```
    aaa
    ```

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 105 - https://github.github.com/gfm/#example-105
================================================================================
```
aaa
  ```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text))))

================================================================================
Example 106 - https://github.github.com/gfm/#example-106
================================================================================
   ```
aaa
  ```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text))))

================================================================================
Example 107 - https://github.github.com/gfm/#example-107
================================================================================
```
aaa
    ```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 108 - https://github.github.com/gfm/#example-108
================================================================================
``` ```
aaa

--------------------------------------------------------------------------------

(document
  (paragraph
    (code_span
      (text))
    (soft_line_break)
    (text)))

================================================================================
Example 109 - https://github.github.com/gfm/#example-109
================================================================================
~~~~~~
aaa
~~~ ~~

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)
      (line_break)
      (text))))

================================================================================
Example 110 - https://github.github.com/gfm/#example-110
================================================================================
foo
```
bar
```
baz

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (fenced_code_block
    (code_fence_content
      (text)))
  (paragraph
    (text)))

================================================================================
Example 111 - https://github.github.com/gfm/#example-111
================================================================================
foo
---
~~~
bar
~~~
# baz

--------------------------------------------------------------------------------

(document
  (setext_heading
    (heading_content
      (text))
    (setext_h2_underline))
  (fenced_code_block
    (code_fence_content
      (text)))
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text))))

================================================================================
Example 112 - https://github.github.com/gfm/#example-112
================================================================================
```ruby
def foo(x)
  return 3
end
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (info_string
      (text))
    (code_fence_content
      (text)
      (line_break)
      (text)
      (line_break)
      (text))))

================================================================================
Example 113 - https://github.github.com/gfm/#example-113
================================================================================
~~~~    ruby startline=3 $%@#$
def foo(x)
  return 3
end
~~~~~~~

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (info_string
      (text))
    (code_fence_content
      (text)
      (line_break)
      (text)
      (line_break)
      (text))))

================================================================================
Example 114 - https://github.github.com/gfm/#example-114
================================================================================
````;
````

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (info_string
      (text))))

================================================================================
Example 115 - https://github.github.com/gfm/#example-115
================================================================================
``` aa ```
foo

--------------------------------------------------------------------------------

(document
  (paragraph
    (code_span
      (text))
    (soft_line_break)
    (text)))

================================================================================
Example 116 - https://github.github.com/gfm/#example-116
================================================================================
~~~ aa ``` ~~~
foo
~~~

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (info_string
      (text))
    (code_fence_content
      (text))))

================================================================================
Example 117 - https://github.github.com/gfm/#example-117
================================================================================
```
``` aaa
```

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text))))

================================================================================
Example 118 - https://github.github.com/gfm/#example-118
================================================================================
<table><tr><td>
<pre>
**Hello**,

_world_.
</pre>
</td></tr></table>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text))
  (paragraph
    (emphasis
      (text))
    (text)
    (soft_line_break)
    (html_close_tag
      (html_tag_name)))
  (html_block
    (text)))

================================================================================
Example 119 - https://github.github.com/gfm/#example-119
================================================================================
<table>
  <tr>
    <td>
           hi
    </td>
  </tr>
</table>

okay.

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text))
  (paragraph
    (text)))

================================================================================
Example 120 - https://github.github.com/gfm/#example-120
================================================================================
 <div>
  *hello*
         <foo><a>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 121 - https://github.github.com/gfm/#example-121
================================================================================
</div>
*foo*

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 122 - https://github.github.com/gfm/#example-122
================================================================================
<DIV CLASS="foo">

*Markdown*

</DIV>

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (paragraph
    (emphasis
      (text)))
  (html_block
    (text)))

================================================================================
Example 123 - https://github.github.com/gfm/#example-123
================================================================================
<div id="foo"
  class="bar">
</div>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 124 - https://github.github.com/gfm/#example-124
================================================================================
<div id="foo" class="bar
  baz">
</div>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 125 - https://github.github.com/gfm/#example-125
================================================================================
<div>
*foo*

*bar*

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text))
  (paragraph
    (emphasis
      (text))))

================================================================================
Example 126 - https://github.github.com/gfm/#example-126
================================================================================
<div id="foo"
*hi*

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 127 - https://github.github.com/gfm/#example-127
================================================================================
<div class
foo

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 128 - https://github.github.com/gfm/#example-128
================================================================================
<div *???-&&&-<---
*foo*

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 129 - https://github.github.com/gfm/#example-129
================================================================================
<div><a href="bar">*foo*</a></div>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)))

================================================================================
Example 130 - https://github.github.com/gfm/#example-130
================================================================================
<table><tr><td>
foo
</td></tr></table>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 131 - https://github.github.com/gfm/#example-131
================================================================================
<div></div>
``` c
int x = 33;
```

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 132 - https://github.github.com/gfm/#example-132
================================================================================
<a href="foo">
*bar*
</a>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 133 - https://github.github.com/gfm/#example-133
================================================================================
<Warning>
*bar*
</Warning>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 134 - https://github.github.com/gfm/#example-134
================================================================================
<i class="foo">
*bar*
</i>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 135 - https://github.github.com/gfm/#example-135
================================================================================
</ins>
*bar*

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)))

================================================================================
Example 136 - https://github.github.com/gfm/#example-136
================================================================================
<del>
*foo*
</del>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 137 - https://github.github.com/gfm/#example-137
================================================================================
<del>

*foo*

</del>

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (paragraph
    (emphasis
      (text)))
  (html_block
    (text)))

================================================================================
Example 138 - https://github.github.com/gfm/#example-138
================================================================================
<del>*foo*</del>

--------------------------------------------------------------------------------

(document
  (paragraph
    (html_open_tag
      (html_tag_name))
    (emphasis
      (text))
    (html_close_tag
      (html_tag_name))))

================================================================================
Example 139 - https://github.github.com/gfm/#example-139
================================================================================
<pre language="haskell"><code>
import Text.HTML.TagSoup

main :: IO ()
main = print $ parseTags tags
</code></pre>
okay

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text))
  (paragraph
    (text)))

================================================================================
Example 140 - https://github.github.com/gfm/#example-140
================================================================================
<script type="text/javascript">
// JavaScript example

document.getElementById("demo").innerHTML = "Hello JavaScript!";
</script>
okay

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (text))
  (paragraph
    (text)))

================================================================================
Example 141 - https://github.github.com/gfm/#example-141
================================================================================
<style
  type="text/css">
h1 {color:red;}

p {color:blue;}
</style>
okay

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (text))
  (paragraph
    (text)))

================================================================================
Example 142 - https://github.github.com/gfm/#example-142
================================================================================
<style
  type="text/css">

foo

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)))

================================================================================
Example 143 - https://github.github.com/gfm/#example-143
================================================================================
> <div>
> foo

bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (html_block
      (text)
      (line_break)
      (text)))
  (paragraph
    (text)))

================================================================================
Example 144 - https://github.github.com/gfm/#example-144
================================================================================
- <div>
- foo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (html_block
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 145 - https://github.github.com/gfm/#example-145
================================================================================
<style>p{color:red;}</style>
*foo*

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (paragraph
    (emphasis
      (text))))

================================================================================
Example 146 - https://github.github.com/gfm/#example-146
================================================================================
<!-- foo -->*bar*
*baz*

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (paragraph
    (emphasis
      (text))))

================================================================================
Example 147 - https://github.github.com/gfm/#example-147
================================================================================
<script>
foo
</script>1. *bar*

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 148 - https://github.github.com/gfm/#example-148
================================================================================
<!-- Foo

bar
   baz -->
okay

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (text))
  (paragraph
    (text)))

================================================================================
Example 149 - https://github.github.com/gfm/#example-149
================================================================================
<?php

  echo '>';

?>
okay

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text))
  (paragraph
    (text)))

================================================================================
Example 150 - https://github.github.com/gfm/#example-150
================================================================================
<!DOCTYPE html>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)))

================================================================================
Example 151 - https://github.github.com/gfm/#example-151
================================================================================
<![CDATA[
function matchwo(a,b)
{
  if (a < b && a < 0) then {
    return 1;

  } else {

    return 0;
  }
}
]]>
okay

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text))
  (paragraph
    (text)))

================================================================================
Example 152 - https://github.github.com/gfm/#example-152
================================================================================
  <!-- foo -->

    <!-- foo -->

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (indented_code_block
    (text)))

================================================================================
Example 153 - https://github.github.com/gfm/#example-153
================================================================================
  <div>

    <div>

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (indented_code_block
    (text)))

================================================================================
Example 154 - https://github.github.com/gfm/#example-154
================================================================================
Foo
<div>
bar
</div>

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 155 - https://github.github.com/gfm/#example-155
================================================================================
<div>
bar
</div>
*foo*

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 156 - https://github.github.com/gfm/#example-156
================================================================================
Foo
<a href="bar">
baz

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (html_open_tag
      (html_tag_name)
      (html_atrribute
        (html_attribute_key)
        (html_attribute_value
          (text))))
    (soft_line_break)
    (text)))

================================================================================
Example 157 - https://github.github.com/gfm/#example-157
================================================================================
<div>

*Emphasized* text.

</div>

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (paragraph
    (emphasis
      (text))
    (text))
  (html_block
    (text)))

================================================================================
Example 158 - https://github.github.com/gfm/#example-158
================================================================================
<div>
*Emphasized* text.
</div>

--------------------------------------------------------------------------------

(document
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 159 - https://github.github.com/gfm/#example-159
================================================================================
<table>

<tr>

<td>
Hi
</td>

</tr>

</table>

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (html_block
    (text))
  (html_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text))
  (html_block
    (text))
  (html_block
    (text)))

================================================================================
Example 160 - https://github.github.com/gfm/#example-160
================================================================================
<table>

  <tr>

    <td>
      Hi
    </td>

  </tr>

</table>

--------------------------------------------------------------------------------

(document
  (html_block
    (text))
  (html_block
    (text))
  (indented_code_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text))
  (html_block
    (text))
  (html_block
    (text)))

================================================================================
Example 161 - https://github.github.com/gfm/#example-161
================================================================================
[foo]: /url "title"

[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))
    (link_title
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 162 - https://github.github.com/gfm/#example-162
================================================================================
   [foo]: 
      /url  
           'the title'  

[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))
    (link_title
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 163 - https://github.github.com/gfm/#example-163
================================================================================
[Foo*bar\]]:my_(url) 'title (with parens)'

[Foo*bar\]]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text)
      (backslash_escape))
    (link_destination
      (text))
    (link_title
      (text)))
  (paragraph
    (link
      (link_text
        (text)
        (backslash_escape)))))

================================================================================
Example 164 - https://github.github.com/gfm/#example-164
================================================================================
[Foo bar]:
<my url>
'title'

[Foo bar]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))
    (link_title
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 165 - https://github.github.com/gfm/#example-165
================================================================================
[foo]: /url '
title
line1
line2
'

[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))
    (link_title
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 166 - https://github.github.com/gfm/#example-166
================================================================================
[foo]: /url 'title

with blank line'

[foo]

--------------------------------------------------------------------------------

(document
  (paragraph
    (link
      (link_text
        (text)))
    (text))
  (paragraph
    (text))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 167 - https://github.github.com/gfm/#example-167
================================================================================
[foo]:
/url

[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 168 - https://github.github.com/gfm/#example-168
================================================================================
[foo]:

[foo]

--------------------------------------------------------------------------------

(document
  (paragraph
    (link
      (link_text
        (text)))
    (text))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 169 - https://github.github.com/gfm/#example-169
================================================================================
[foo]: <>

[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 170 - https://github.github.com/gfm/#example-170
================================================================================
[foo]: <bar>(baz)

[foo]

--------------------------------------------------------------------------------

(document
  (paragraph
    (link
      (link_text
        (text)))
    (text)
    (html_open_tag
      (html_tag_name))
    (text))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 171 - https://github.github.com/gfm/#example-171
================================================================================
[foo]: /url\bar\*baz "foo\"bar\baz"

[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)
      (backslash_escape)
      (text))
    (link_title
      (text)
      (backslash_escape)
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 172 - https://github.github.com/gfm/#example-172
================================================================================
[foo]

[foo]: url

--------------------------------------------------------------------------------

(document
  (paragraph
    (link
      (link_text
        (text))))
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))))

================================================================================
Example 173 - https://github.github.com/gfm/#example-173
================================================================================
[foo]

[foo]: first
[foo]: second

--------------------------------------------------------------------------------

(document
  (paragraph
    (link
      (link_text
        (text))))
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))))

================================================================================
Example 174 - https://github.github.com/gfm/#example-174
================================================================================
[FOO]: /url

[Foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 175 - https://github.github.com/gfm/#example-175
================================================================================
[ΑΓΩ]: /φου

[αγω]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 176 - https://github.github.com/gfm/#example-176
================================================================================
[foo]: /url

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))))

================================================================================
Example 177 - https://github.github.com/gfm/#example-177
================================================================================
[
foo
]: /url
bar

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (text)))

================================================================================
Example 178 - https://github.github.com/gfm/#example-178
================================================================================
[foo]: /url "title" ok

--------------------------------------------------------------------------------

(document
  (paragraph
    (link
      (link_text
        (text)))
    (text)))

================================================================================
Example 179 - https://github.github.com/gfm/#example-179
================================================================================
[foo]: /url
"title" ok

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (text)))

================================================================================
Example 180 - https://github.github.com/gfm/#example-180
================================================================================
    [foo]: /url "title"

[foo]

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 181 - https://github.github.com/gfm/#example-181
================================================================================
```
[foo]: /url
```

[foo]

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text)))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 182 - https://github.github.com/gfm/#example-182
================================================================================
Foo
[bar]: /baz

[bar]

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (link
      (link_text
        (text)))
    (text))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 183 - https://github.github.com/gfm/#example-183
================================================================================
# [Foo]
[foo]: /url
> bar

--------------------------------------------------------------------------------

(document
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text)
      (link
        (link_text
          (text)))))
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 184 - https://github.github.com/gfm/#example-184
================================================================================
[foo]: /url
bar
===
[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (setext_heading
    (heading_content
      (text))
    (setext_h1_underline))
  (paragraph
    (link
      (link_text
        (text)))))

================================================================================
Example 185 - https://github.github.com/gfm/#example-185
================================================================================
[foo]: /url
===
[foo]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (text)
    (soft_line_break)
    (link
      (link_text
        (text)))))

================================================================================
Example 186 - https://github.github.com/gfm/#example-186
================================================================================
[foo]: /foo-url "foo"
[bar]: /bar-url
  "bar"
[baz]: /baz-url

[foo],
[bar],
[baz]

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))
    (link_title
      (text)))
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))
    (link_title
      (text)))
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text)))
  (paragraph
    (link
      (link_text
        (text)))
    (text)
    (soft_line_break)
    (link
      (link_text
        (text)))
    (text)
    (soft_line_break)
    (link
      (link_text
        (text)))))

================================================================================
Example 187 - https://github.github.com/gfm/#example-187
================================================================================
[foo]

> [foo]: /url

--------------------------------------------------------------------------------

(document
  (paragraph
    (link
      (link_text
        (text))))
  (block_quote
    (link_reference_definition
      (link_label
        (text))
      (link_destination
        (text)))))

================================================================================
Example 188 - https://github.github.com/gfm/#example-188
================================================================================
[foo]: /url

--------------------------------------------------------------------------------

(document
  (link_reference_definition
    (link_label
      (text))
    (link_destination
      (text))))

================================================================================
Example 189 - https://github.github.com/gfm/#example-189
================================================================================
aaa

bbb

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (paragraph
    (text)))

================================================================================
Example 190 - https://github.github.com/gfm/#example-190
================================================================================
aaa
bbb

ccc
ddd

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text))
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 191 - https://github.github.com/gfm/#example-191
================================================================================
aaa


bbb

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (paragraph
    (text)))

================================================================================
Example 192 - https://github.github.com/gfm/#example-192
================================================================================
  aaa
 bbb

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 193 - https://github.github.com/gfm/#example-193
================================================================================
aaa
             bbb
                                       ccc

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 194 - https://github.github.com/gfm/#example-194
================================================================================
   aaa
bbb

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 195 - https://github.github.com/gfm/#example-195
================================================================================
    aaa
bbb

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text))
  (paragraph
    (text)))

================================================================================
Example 196 - https://github.github.com/gfm/#example-196
================================================================================
aaa     
bbb     

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (hard_line_break)
    (text)))

================================================================================
Example 197 - https://github.github.com/gfm/#example-197
================================================================================
  

aaa
  

# aaa

  

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (atx_heading
    (atx_h1_marker)
    (heading_content
      (text))))

================================================================================
Example 198 - https://github.github.com/gfm/#example-198
================================================================================
| foo | bar |
| --- | --- |
| baz | bim |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text))
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text))
      (table_cell
        (text)))))

================================================================================
Example 199 - https://github.github.com/gfm/#example-199
================================================================================
| abc | defghi |
:-: | -----------:
bar | baz

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text))
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text))
      (table_cell
        (text)))))

================================================================================
Example 200 - https://github.github.com/gfm/#example-200
================================================================================
| f\|oo  |
| ------ |
| b `\|` az |
| b **\|** im |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text)
        (backslash_escape)
        (text)))
    (table_delimiter_row
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text)
        (code_span
          (backslash_escape))
        (text)))
    (table_data_row
      (table_cell
        (text)
        (strong_emphasis
          (backslash_escape))
        (text)))))

================================================================================
Example 201 - https://github.github.com/gfm/#example-201
================================================================================
| abc | def |
| --- | --- |
| bar | baz |
> bar

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text))
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text))
      (table_cell
        (text))))
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 202 - https://github.github.com/gfm/#example-202
================================================================================
| abc | def |
| --- | --- |
| bar | baz |
bar

bar

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text))
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text))
      (table_cell
        (text)))
    (table_data_row
      (table_cell
        (text))))
  (paragraph
    (text)))

================================================================================
Example 203 - https://github.github.com/gfm/#example-203
================================================================================
| abc | def |
| --- |
| bar |

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 204 - https://github.github.com/gfm/#example-204
================================================================================
| abc | def |
| --- | --- |
| bar |
| bar | baz | boo |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text))
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment))
    (table_data_row
      (table_cell
        (text)))
    (table_data_row
      (table_cell
        (text))
      (table_cell
        (text))
      (table_cell
        (text)))))

================================================================================
Example 205 - https://github.github.com/gfm/#example-205
================================================================================
| abc | def |
| --- | --- |

--------------------------------------------------------------------------------

(document
  (table
    (table_header_row
      (table_cell
        (text))
      (table_cell
        (text)))
    (table_delimiter_row
      (table_column_alignment)
      (table_column_alignment))))

================================================================================
Example 206 - https://github.github.com/gfm/#example-206
================================================================================
> # Foo
> bar
> baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (atx_heading
      (atx_h1_marker)
      (heading_content
        (text)))
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 207 - https://github.github.com/gfm/#example-207
================================================================================
># Foo
>bar
> baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (atx_heading
      (atx_h1_marker)
      (heading_content
        (text)))
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 208 - https://github.github.com/gfm/#example-208
================================================================================
   > # Foo
   > bar
 > baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (atx_heading
      (atx_h1_marker)
      (heading_content
        (text)))
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 209 - https://github.github.com/gfm/#example-209
================================================================================
    > # Foo
    > bar
    > baz

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)
    (line_break)
    (text)))

================================================================================
Example 210 - https://github.github.com/gfm/#example-210
================================================================================
> # Foo
> bar
baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (atx_heading
      (atx_h1_marker)
      (heading_content
        (text)))
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 211 - https://github.github.com/gfm/#example-211
================================================================================
> bar
baz
> foo

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)
      (soft_line_break)
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 212 - https://github.github.com/gfm/#example-212
================================================================================
> foo
---

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)))
  (thematic_break))

================================================================================
Example 213 - https://github.github.com/gfm/#example-213
================================================================================
> - foo
- bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (tight_list
      (list_item
        (list_marker)
        (paragraph
          (text)))))
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 214 - https://github.github.com/gfm/#example-214
================================================================================
>     foo
    bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (indented_code_block
      (text)))
  (indented_code_block
    (text)))

================================================================================
Example 215 - https://github.github.com/gfm/#example-215
================================================================================
> ```
foo
```

--------------------------------------------------------------------------------

(document
  (block_quote
    (fenced_code_block))
  (paragraph
    (text))
  (fenced_code_block))

================================================================================
Example 216 - https://github.github.com/gfm/#example-216
================================================================================
> foo
    - bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 217 - https://github.github.com/gfm/#example-217
================================================================================
>

--------------------------------------------------------------------------------

(document
  (block_quote))

================================================================================
Example 218 - https://github.github.com/gfm/#example-218
================================================================================
>
>  
> 

--------------------------------------------------------------------------------

(document
  (block_quote))

================================================================================
Example 219 - https://github.github.com/gfm/#example-219
================================================================================
>
> foo
>  

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 220 - https://github.github.com/gfm/#example-220
================================================================================
> foo

> bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)))
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 221 - https://github.github.com/gfm/#example-221
================================================================================
> foo
> bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 222 - https://github.github.com/gfm/#example-222
================================================================================
> foo
>
> bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text))
    (paragraph
      (text))))

================================================================================
Example 223 - https://github.github.com/gfm/#example-223
================================================================================
foo
> bar

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 224 - https://github.github.com/gfm/#example-224
================================================================================
> aaa
***
> bbb

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)))
  (thematic_break)
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 225 - https://github.github.com/gfm/#example-225
================================================================================
> bar
baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)
      (soft_line_break)
      (text))))

================================================================================
Example 226 - https://github.github.com/gfm/#example-226
================================================================================
> bar

baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)))
  (paragraph
    (text)))

================================================================================
Example 227 - https://github.github.com/gfm/#example-227
================================================================================
> bar
>
baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (paragraph
      (text)))
  (paragraph
    (text)))

================================================================================
Example 228 - https://github.github.com/gfm/#example-228
================================================================================
> > > foo
bar

--------------------------------------------------------------------------------

(document
  (block_quote
    (block_quote
      (block_quote
        (paragraph
          (text)
          (soft_line_break)
          (text))))))

================================================================================
Example 229 - https://github.github.com/gfm/#example-229
================================================================================
>>> foo
> bar
>>baz

--------------------------------------------------------------------------------

(document
  (block_quote
    (block_quote
      (block_quote
        (paragraph
          (text)
          (soft_line_break)
          (text)
          (soft_line_break)
          (text))))))

================================================================================
Example 230 - https://github.github.com/gfm/#example-230
================================================================================
>     code

>    not code

--------------------------------------------------------------------------------

(document
  (block_quote
    (indented_code_block
      (text)))
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 231 - https://github.github.com/gfm/#example-231
================================================================================
A paragraph
with two lines.

    indented code

> A block quote.

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text))
  (indented_code_block
    (text))
  (block_quote
    (paragraph
      (text))))

================================================================================
Example 232 - https://github.github.com/gfm/#example-232
================================================================================
1.  A paragraph
    with two lines.

        indented code

    > A block quote.

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text))
      (indented_code_block
        (text))
      (block_quote
        (paragraph
          (text))))))

================================================================================
Example 233 - https://github.github.com/gfm/#example-233
================================================================================
- one

 two

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (paragraph
    (text)))

================================================================================
Example 234 - https://github.github.com/gfm/#example-234
================================================================================
- one

  two

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))))

================================================================================
Example 235 - https://github.github.com/gfm/#example-235
================================================================================
 -    one

     two

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (indented_code_block
    (text)))

================================================================================
Example 236 - https://github.github.com/gfm/#example-236
================================================================================
 -    one

      two

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))))

================================================================================
Example 237 - https://github.github.com/gfm/#example-237
================================================================================
   > > 1.  one
>>
>>     two

--------------------------------------------------------------------------------

(document
  (block_quote
    (block_quote
      (loose_list
        (list_item
          (list_marker)
          (paragraph
            (text))
          (paragraph
            (text)))))))

================================================================================
Example 238 - https://github.github.com/gfm/#example-238
================================================================================
>>- one
>>
  >  > two

--------------------------------------------------------------------------------

(document
  (block_quote
    (block_quote
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text))))
      (paragraph
        (text)))))

================================================================================
Example 239 - https://github.github.com/gfm/#example-239
================================================================================
-one

2.two

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (paragraph
    (text)))

================================================================================
Example 240 - https://github.github.com/gfm/#example-240
================================================================================
- foo


  bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))))

================================================================================
Example 241 - https://github.github.com/gfm/#example-241
================================================================================
1.  foo

    ```
    bar
    ```

    baz

    > bam

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (fenced_code_block
        (code_fence_content
          (text)))
      (paragraph
        (text))
      (block_quote
        (paragraph
          (text))))))

================================================================================
Example 242 - https://github.github.com/gfm/#example-242
================================================================================
- Foo

      bar


      baz

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (indented_code_block
        (text)
        (line_break)
        (line_break)
        (line_break)
        (text)))))

================================================================================
Example 243 - https://github.github.com/gfm/#example-243
================================================================================
123456789. ok

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 244 - https://github.github.com/gfm/#example-244
================================================================================
1234567890. not ok

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Example 245 - https://github.github.com/gfm/#example-245
================================================================================
0. ok

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 246 - https://github.github.com/gfm/#example-246
================================================================================
003. ok

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 247 - https://github.github.com/gfm/#example-247
================================================================================
-1. not ok

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Example 248 - https://github.github.com/gfm/#example-248
================================================================================
- foo

      bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (indented_code_block
        (text)))))

================================================================================
Example 249 - https://github.github.com/gfm/#example-249
================================================================================
  10.  foo

           bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (indented_code_block
        (text)))))

================================================================================
Example 250 - https://github.github.com/gfm/#example-250
================================================================================
    indented code

paragraph

    more code

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text))
  (paragraph
    (text))
  (indented_code_block
    (text)))

================================================================================
Example 251 - https://github.github.com/gfm/#example-251
================================================================================
1.     indented code

   paragraph

       more code

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (indented_code_block
        (text))
      (paragraph
        (text))
      (indented_code_block
        (text)))))

================================================================================
Example 252 - https://github.github.com/gfm/#example-252
================================================================================
1.      indented code

   paragraph

       more code

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (indented_code_block
        (text))
      (paragraph
        (text))
      (indented_code_block
        (text)))))

================================================================================
Example 253 - https://github.github.com/gfm/#example-253
================================================================================
   foo

bar

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (paragraph
    (text)))

================================================================================
Example 254 - https://github.github.com/gfm/#example-254
================================================================================
-    foo

  bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (paragraph
    (text)))

================================================================================
Example 255 - https://github.github.com/gfm/#example-255
================================================================================
-  foo

   bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))))

================================================================================
Example 256 - https://github.github.com/gfm/#example-256
================================================================================
-
  foo
-
  ```
  bar
  ```
-
      baz

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (text))))
    (list_item
      (list_marker)
      (indented_code_block
        (text)))))

================================================================================
Example 257 - https://github.github.com/gfm/#example-257
================================================================================
-   
  foo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 258 - https://github.github.com/gfm/#example-258
================================================================================
-

  foo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)))
  (paragraph
    (text)))

================================================================================
Example 259 - https://github.github.com/gfm/#example-259
================================================================================
- foo
-
- bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 260 - https://github.github.com/gfm/#example-260
================================================================================
- foo
-   
- bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 261 - https://github.github.com/gfm/#example-261
================================================================================
1. foo
2.
3. bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 262 - https://github.github.com/gfm/#example-262
================================================================================
*

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker))))

================================================================================
Example 263 - https://github.github.com/gfm/#example-263
================================================================================
foo
*

foo
1.

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text))
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 264 - https://github.github.com/gfm/#example-264
================================================================================
 1.  A paragraph
     with two lines.

         indented code

     > A block quote.

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text))
      (indented_code_block
        (text))
      (block_quote
        (paragraph
          (text))))))

================================================================================
Example 265 - https://github.github.com/gfm/#example-265
================================================================================
  1.  A paragraph
      with two lines.

          indented code

      > A block quote.

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text))
      (indented_code_block
        (text))
      (block_quote
        (paragraph
          (text))))))

================================================================================
Example 266 - https://github.github.com/gfm/#example-266
================================================================================
   1.  A paragraph
       with two lines.

           indented code

       > A block quote.

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text))
      (indented_code_block
        (text))
      (block_quote
        (paragraph
          (text))))))

================================================================================
Example 267 - https://github.github.com/gfm/#example-267
================================================================================
    1.  A paragraph
        with two lines.

            indented code

        > A block quote.

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)
    (line_break)
    (line_break)
    (text)))

================================================================================
Example 268 - https://github.github.com/gfm/#example-268
================================================================================
  1.  A paragraph
with two lines.

          indented code

      > A block quote.

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text))
      (indented_code_block
        (text))
      (block_quote
        (paragraph
          (text))))))

================================================================================
Example 269 - https://github.github.com/gfm/#example-269
================================================================================
  1.  A paragraph
    with two lines.

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text)))))

================================================================================
Example 270 - https://github.github.com/gfm/#example-270
================================================================================
> 1. > Blockquote
continued here.

--------------------------------------------------------------------------------

(document
  (block_quote
    (tight_list
      (list_item
        (list_marker)
        (block_quote
          (paragraph
            (text)
            (soft_line_break)
            (text)))))))

================================================================================
Example 271 - https://github.github.com/gfm/#example-271
================================================================================
> 1. > Blockquote
> continued here.

--------------------------------------------------------------------------------

(document
  (block_quote
    (tight_list
      (list_item
        (list_marker)
        (block_quote
          (paragraph
            (text)
            (soft_line_break)
            (text)))))))

================================================================================
Example 272 - https://github.github.com/gfm/#example-272
================================================================================
- foo
  - bar
    - baz
      - boo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text))
          (tight_list
            (list_item
              (list_marker)
              (paragraph
                (text))
              (tight_list
                (list_item
                  (list_marker)
                  (paragraph
                    (text)))))))))))

================================================================================
Example 273 - https://github.github.com/gfm/#example-273
================================================================================
- foo
 - bar
  - baz
   - boo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 274 - https://github.github.com/gfm/#example-274
================================================================================
10) foo
    - bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text)))))))

================================================================================
Example 275 - https://github.github.com/gfm/#example-275
================================================================================
10) foo
   - bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 276 - https://github.github.com/gfm/#example-276
================================================================================
- - foo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text)))))))

================================================================================
Example 277 - https://github.github.com/gfm/#example-277
================================================================================
1. - 2. foo

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (tight_list
        (list_item
          (list_marker)
          (tight_list
            (list_item
              (list_marker)
              (paragraph
                (text)))))))))

================================================================================
Example 278 - https://github.github.com/gfm/#example-278
================================================================================
- # Foo
- Bar
  ---
  baz

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (atx_heading
        (atx_h1_marker)
        (heading_content
          (text))))
    (list_item
      (list_marker)
      (setext_heading
        (heading_content
          (text))
        (setext_h2_underline))
      (paragraph
        (text)))))

================================================================================
Example 279 - https://github.github.com/gfm/#example-279
================================================================================
- [ ] foo
- [x] bar

--------------------------------------------------------------------------------

(document
  (tight_list
    (task_list_item
      (list_marker)
      (paragraph
        (task_list_item_marker)
        (text)))
    (task_list_item
      (list_marker)
      (paragraph
        (task_list_item_marker)
        (text)))))

================================================================================
Example 280 - https://github.github.com/gfm/#example-280
================================================================================
- [x] foo
  - [ ] bar
  - [x] baz
- [ ] bim

--------------------------------------------------------------------------------

(document
  (tight_list
    (task_list_item
      (list_marker)
      (paragraph
        (task_list_item_marker)
        (text))
      (tight_list
        (task_list_item
          (list_marker)
          (paragraph
            (task_list_item_marker)
            (text)))
        (task_list_item
          (list_marker)
          (paragraph
            (task_list_item_marker)
            (text)))))
    (task_list_item
      (list_marker)
      (paragraph
        (task_list_item_marker)
        (text)))))

================================================================================
Example 281 - https://github.github.com/gfm/#example-281
================================================================================
- foo
- bar
+ baz

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 282 - https://github.github.com/gfm/#example-282
================================================================================
1. foo
2. bar
3) baz

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 283 - https://github.github.com/gfm/#example-283
================================================================================
Foo
- bar
- baz

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 284 - https://github.github.com/gfm/#example-284
================================================================================
The number of windows in my house is
14.  The number of doors is 6.

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (soft_line_break)
    (text)))

================================================================================
Example 285 - https://github.github.com/gfm/#example-285
================================================================================
The number of windows in my house is
1.  The number of doors is 6.

--------------------------------------------------------------------------------

(document
  (paragraph
    (text))
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 286 - https://github.github.com/gfm/#example-286
================================================================================
- foo

- bar


- baz

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 287 - https://github.github.com/gfm/#example-287
================================================================================
- foo
  - bar
    - baz


      bim

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text))
          (loose_list
            (list_item
              (list_marker)
              (paragraph
                (text))
              (paragraph
                (text)))))))))

================================================================================
Example 288 - https://github.github.com/gfm/#example-288
================================================================================
- foo
- bar

<!-- -->

- baz
- bim

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (html_block
    (text))
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 289 - https://github.github.com/gfm/#example-289
================================================================================
-   foo

    notcode

-   foo

<!-- -->

    code

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (html_block
    (text))
  (indented_code_block
    (text)))

================================================================================
Example 290 - https://github.github.com/gfm/#example-290
================================================================================
- a
 - b
  - c
   - d
  - e
 - f
- g

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 291 - https://github.github.com/gfm/#example-291
================================================================================
1. a

  2. b

   3. c

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 292 - https://github.github.com/gfm/#example-292
================================================================================
- a
 - b
  - c
   - d
    - e

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)
        (soft_line_break)
        (text)))))

================================================================================
Example 293 - https://github.github.com/gfm/#example-293
================================================================================
1. a

  2. b

    3. c

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text))))
  (indented_code_block
    (text)))

================================================================================
Example 294 - https://github.github.com/gfm/#example-294
================================================================================
- a
- b

- c

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 295 - https://github.github.com/gfm/#example-295
================================================================================
* a
*

* c

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 296 - https://github.github.com/gfm/#example-296
================================================================================
- a
- b

  c
- d

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text))
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 297 - https://github.github.com/gfm/#example-297
================================================================================
- a
- b

  [ref]: /url
- d

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (paragraph
        (text))
      (link_reference_definition
        (link_label
          (text))
        (link_destination
          (text))))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 298 - https://github.github.com/gfm/#example-298
================================================================================
- a
- ```
  b


  ```
- c

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (text)
          (line_break)
          (line_break))))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 299 - https://github.github.com/gfm/#example-299
================================================================================
- a
  - b

    c
- d

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (loose_list
        (list_item
          (list_marker)
          (paragraph
            (text))
          (paragraph
            (text)))))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 300 - https://github.github.com/gfm/#example-300
================================================================================
* a
  > b
  >
* c

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (block_quote
        (paragraph
          (text))))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 301 - https://github.github.com/gfm/#example-301
================================================================================
- a
  > b
  ```
  c
  ```
- d

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (block_quote
        (paragraph
          (text)))
      (fenced_code_block
        (code_fence_content
          (text))))
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 302 - https://github.github.com/gfm/#example-302
================================================================================
- a

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text)))))

================================================================================
Example 303 - https://github.github.com/gfm/#example-303
================================================================================
- a
  - b

--------------------------------------------------------------------------------

(document
  (tight_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text)))))))

================================================================================
Example 304 - https://github.github.com/gfm/#example-304
================================================================================
1. ```
   foo
   ```

   bar

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (fenced_code_block
        (code_fence_content
          (text)))
      (paragraph
        (text)))))

================================================================================
Example 305 - https://github.github.com/gfm/#example-305
================================================================================
* foo
  * bar

  baz

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text))))
      (paragraph
        (text)))))

================================================================================
Example 306 - https://github.github.com/gfm/#example-306
================================================================================
- a
  - b
  - c

- d
  - e
  - f

--------------------------------------------------------------------------------

(document
  (loose_list
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text)))
        (list_item
          (list_marker)
          (paragraph
            (text)))))
    (list_item
      (list_marker)
      (paragraph
        (text))
      (tight_list
        (list_item
          (list_marker)
          (paragraph
            (text)))
        (list_item
          (list_marker)
          (paragraph
            (text)))))))

================================================================================
Example 307 - https://github.github.com/gfm/#example-307
================================================================================
`hi`lo`

--------------------------------------------------------------------------------

(document
  (paragraph
    (code_span
      (text))
    (text)))

================================================================================
Example 308 - https://github.github.com/gfm/#example-308
================================================================================
\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\=\>\?\@\[\\\]\^\_\`\{\|\}\~

--------------------------------------------------------------------------------

(document
  (paragraph
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)
    (backslash_escape)))

================================================================================
Example 309 - https://github.github.com/gfm/#example-309
================================================================================
\	\A\a\ \3\φ\«

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)))

================================================================================
Example 310 - https://github.github.com/gfm/#example-310
================================================================================
\*not emphasized*
\<br/> not a tag
\[not a link](/foo)
\`not code`
1\. not a list
\* not a list
\# not a heading
\[foo]: /url "not a reference"
\&ouml; not a character entity

--------------------------------------------------------------------------------

(document
  (paragraph
    (backslash_escape)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)
    (soft_line_break)
    (text)
    (backslash_escape)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)
    (soft_line_break)
    (backslash_escape)
    (text)))

================================================================================
Example 311 - https://github.github.com/gfm/#example-311
================================================================================
\\*emphasis*

--------------------------------------------------------------------------------

(document
  (paragraph
    (backslash_escape)
    (emphasis
      (text))))

================================================================================
Example 312 - https://github.github.com/gfm/#example-312
================================================================================
foo\
bar

--------------------------------------------------------------------------------

(document
  (paragraph
    (text)
    (hard_line_break)
    (text)))

================================================================================
Example 313 - https://github.github.com/gfm/#example-313
================================================================================
`` \[\` ``

--------------------------------------------------------------------------------

(document
  (paragraph
    (code_span
      (text))))

================================================================================
Example 314 - https://github.github.com/gfm/#example-314
================================================================================
    \[\]

--------------------------------------------------------------------------------

(document
  (indented_code_block
    (text)))

================================================================================
Example 315 - https://github.github.com/gfm/#example-315
================================================================================
~~~
\[\]
~~~

--------------------------------------------------------------------------------

(document
  (fenced_code_block
    (code_fence_content
      (text))))

================================================================================
Example 316 - https://github.github.com/gfm/#example-316
================================================================================
<http://example.com?find=\*>

--------------------------------------------------------------------------------

(docume
Download .txt
gitextract_ozpv5ftm/

├── .editorconfig
├── .gitattributes
├── .gitignore
├── .gitmodules
├── .npmignore
├── .travis.yml
├── .versionrc.js
├── CHANGELOG.md
├── Cargo.toml
├── LICENSE
├── README.md
├── binding.gyp
├── bindings/
│   ├── node/
│   │   ├── binding.cc
│   │   └── index.js
│   └── rust/
│       ├── build.rs
│       └── lib.rs
├── corpus/
│   ├── custom.txt
│   ├── issues.txt
│   └── spec.txt
├── docs/
│   ├── assets/
│   │   ├── tree-sitter-markdown-0.7.1/
│   │   │   └── tree-sitter-markdown.wasm
│   │   ├── tree-sitter-playground-0.19.3/
│   │   │   ├── LICENSE
│   │   │   ├── playground.js
│   │   │   └── style.css
│   │   └── web-tree-sitter-0.19.3/
│   │       ├── LICENSE
│   │       ├── tree-sitter.js
│   │       └── tree-sitter.wasm
│   └── index.html
├── gfm-spec/
│   ├── spec.txt
│   └── update.sh
├── grammar.js
├── package.json
├── scripts/
│   ├── generate-playground.js
│   ├── setup-tree-sitter.sh
│   ├── update-generated-utils.block-data.json
│   ├── update-generated-utils.inline-data.json
│   ├── update-generated-utils.js
│   └── update-spec-corpus.js
└── src/
    ├── grammar.json
    ├── node-types.json
    ├── parser.c
    ├── scanner.cc
    ├── tree_sitter/
    │   └── parser.h
    └── tree_sitter_markdown/
        ├── block_context.cc
        ├── block_context.h
        ├── block_delimiter.cc
        ├── block_delimiter.h
        ├── block_scan.cc
        ├── block_scan.h
        ├── block_scan_util.generated.cc
        ├── block_scan_util.generated.h
        ├── inline_context.cc
        ├── inline_context.h
        ├── inline_delimiter.cc
        ├── inline_delimiter.h
        ├── inline_scan.cc
        ├── inline_scan.h
        ├── inline_scan_util.generated.cc
        ├── inline_scan_util.generated.h
        ├── lexer.cc
        ├── lexer.h
        ├── parse_table.cc
        ├── parse_table.h
        ├── predicate.cc
        ├── predicate.h
        ├── predicate_util.generated.cc
        ├── predicate_util.generated.h
        ├── shared_type.cc
        ├── shared_type.h
        ├── token_type.h
        ├── util.cc
        └── util.h
Download .txt
SYMBOL INDEX (395 symbols across 41 files)

FILE: .versionrc.js
  function createTomlUpdater (line 21) | function createTomlUpdater() {

FILE: bindings/node/binding.cc
  function NAN_METHOD (line 11) | NAN_METHOD(New) {}
  function Init (line 13) | void Init(Local<Object> exports, Local<Object> module) {

FILE: bindings/rust/build.rs
  function main (line 1) | fn main() {

FILE: bindings/rust/lib.rs
  function tree_sitter_markdown (line 21) | fn tree_sitter_markdown() -> Language;
  function language (line 27) | pub fn language() -> Language {
  constant NODE_TYPES (line 34) | pub const NODE_TYPES: &'static str = include_str!("../../src/node-types....
  function test_can_load_grammar (line 46) | fn test_can_load_grammar() {

FILE: docs/assets/tree-sitter-playground-0.19.3/playground.js
  function handleLanguageChange (line 82) | async function handleLanguageChange() {
  function handleCodeChange (line 105) | async function handleCodeChange(editor, changes) {
  function renderTree (line 127) | async function renderTree() {
  function runTreeQuery (line 208) | function runTreeQuery(_, startRow, endRow) {
  function handleQueryChange (line 244) | function handleQueryChange() {
  function handleCursorMovement (line 309) | function handleCursorMovement() {
  function handleTreeClick (line 350) | function handleTreeClick(event) {
  function handleLoggingChange (line 367) | function handleLoggingChange() {
  function handleQueryEnableChange (line 381) | function handleQueryEnableChange() {
  function treeEditForEditorChange (line 392) | function treeEditForEditorChange(change) {
  function colorForCaptureName (line 418) | function colorForCaptureName(capture) {
  function getLocalStorageItem (line 423) | function getLocalStorageItem(key) {
  function setLocalStorageItem (line 427) | function setLocalStorageItem(key, value) {
  function loadState (line 431) | function loadState() {
  function saveState (line 444) | function saveState() {
  function saveQueryState (line 450) | function saveQueryState() {
  function debounce (line 455) | function debounce(func, wait, immediate) {

FILE: docs/assets/web-tree-sitter-0.19.3/tree-sitter.js
  function M (line 1) | function M(e,t){if(!g){g=new WeakMap;for(var n=0;n<H.length;n++){var r=H...
  function S (line 1) | function S(e,t,n,r){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32...
  function A (line 1) | function A(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32")...
  function N (line 1) | function N(e,t){e||se("Assertion failed: "+t)}
  function L (line 1) | function L(e,t,n){for(var r=t+n,s=t;e[s]&&!(s>=r);)++s;if(s-t>16&&e.suba...
  function O (line 1) | function O(e,t){return e?L(R,e,t):""}
  function $ (line 1) | function $(e,t,n,r){if(!(r>0))return 0;for(var s=n,o=n+r-1,_=0;_<e.lengt...
  function U (line 1) | function U(e,t,n){return $(e,R,t,n)}
  function D (line 1) | function D(e){for(var t=0,n=0;n<e.length;++n){var r=e.charCodeAt(n);r>=5...
  function j (line 1) | function j(e){var t=D(e)+1,n=je(t);return $(e,C,n,t),n}
  function z (line 1) | function z(e){k=e,Module.HEAP8=C=new Int8Array(e),Module.HEAP16=q=new In...
  function ne (line 1) | function ne(e){J++,Module.monitorRunDependencies&&Module.monitorRunDepen...
  function re (line 1) | function re(e){if(J--,Module.monitorRunDependencies&&Module.monitorRunDe...
  function se (line 1) | function se(e){throw Module.onAbort&&Module.onAbort(e),p(e+=""),x=!0,1,e...
  function oe (line 1) | function oe(e,t){return String.prototype.startsWith?e.startsWith(t):0===...
  function ae (line 1) | function ae(e){return oe(e,_e)}
  function ie (line 1) | function ie(e){return oe(e,ue)}
  function fe (line 1) | function fe(e){try{if(e==me&&y)return new Uint8Array(y);if(d)return d(e)...
  function ge (line 1) | function ge(e){for(;e.length>0;){var t=e.shift();if("function"!=typeof t...
  function we (line 1) | function we(e){var t=0;function n(){for(var n=0,r=1;;){var s=e[t++];if(n...
  function ye (line 1) | function ye(){return I||Me>0}
  function ve (line 1) | function ve(e){return-1!=["__cpp_exception","__wasm_apply_data_relocs","...
  function Ie (line 1) | function Ie(e,t){var n={};for(var r in e){var s=e[r];"object"==typeof s&...
  function Se (line 1) | function Se(e){return 0==e.indexOf("dynCall_")||-1!=["setTempRet0","getT...
  function Ae (line 1) | function Ae(e,t){var n,r;return t&&(n=Module.asm["orig$"+e]),n||(n=Modul...
  function xe (line 1) | function xe(e,t){var n=we(e);function r(){var r=Math.pow(2,n.memoryAlign...
  function Ne (line 1) | function Ne(e,t){for(var n in e)if(e.hasOwnProperty(n)){var r=Se(n);Modu...
  function Pe (line 1) | function Pe(e,t){"__main__"!=e||Ee.loadedLibNames[e]||(Ee.loadedLibs[-1]...
  function ke (line 1) | function ke(){for(var e in pe)if(0==pe[e].value){var t=Ae(e,!0);"functio...
  function Ce (line 1) | function Ce(){se()}
  function qe (line 1) | function qe(e,t){var n,r;if(0===e)n=Date.now();else{if(1!==e&&4!==e||!Re...
  function Te (line 1) | function Te(e){try{return v.grow(e-k.byteLength+65535>>>16),z(v.buffer),...
  function We (line 1) | function We(e){He(e)}
  function Ze (line 1) | function Ze(e){b(0|e)}
  function t (line 1) | function t(e,t){var n=e.exports;n=Ie(n,1024),Module.asm=n;var r,s=we(t);...
  function n (line 1) | function n(e){t(e.instance,e.module)}
  function r (line 1) | function r(t){return function(){if(!y&&(a||u)){if("function"==typeof fet...
  function ze (line 1) | function ze(e){this.name="ExitStatus",this.message="Program terminated w...
  function Be (line 1) | function Be(e){function t(){Fe||(Fe=!0,Module.calledRun=!0,x||(Y=!0,ge(V...
  function He (line 1) | function He(e,t){e,t&&ye()&&0===e||(ye()||(!0,Module.onExit&&Module.onEx...
  class Parser (line 1) | class Parser{static init(){return dt}constructor(){if(null==ut)throw new...
    method init (line 1) | static init(){return dt}
    method constructor (line 1) | constructor(){if(null==ut)throw new Error("You must first call Parser....
    method delete (line 1) | delete(){Ve._ts_parser_delete(this[0]),Ve._free(this[1]),this[0]=0,thi...
    method setLanguage (line 1) | setLanguage(e){let t;if(e){if(e.constructor!==Language)throw new Error...
    method getLanguage (line 1) | getLanguage(){return this.language}
    method parse (line 1) | parse(e,t,n){if("string"==typeof e)it=((t,n,r)=>e.slice(t,r));else{if(...
    method reset (line 1) | reset(){Ve._ts_parser_parse_wasm(this[0])}
    method setTimeoutMicros (line 1) | setTimeoutMicros(e){Ve._ts_parser_set_timeout_micros(this[0],e)}
    method getTimeoutMicros (line 1) | getTimeoutMicros(){return Ve._ts_parser_timeout_micros(this[0])}
    method setLogger (line 1) | setLogger(e){if(e){if("function"!=typeof e)throw new Error("Logger cal...
    method getLogger (line 1) | getLogger(){return this.logCallback}
  class Tree (line 1) | class Tree{constructor(e,t,n,r){ft(e),this[0]=t,this.language=n,this.tex...
    method constructor (line 1) | constructor(e,t,n,r){ft(e),this[0]=t,this.language=n,this.textCallback=r}
    method copy (line 1) | copy(){const e=Ve._ts_tree_copy(this[0]);return new Tree(Xe,e,this.lan...
    method delete (line 1) | delete(){Ve._ts_tree_delete(this[0]),this[0]=0}
    method edit (line 1) | edit(e){!function(e){let t=ut;yt(t,e.startPosition),yt(t+=Je,e.oldEndP...
    method rootNode (line 1) | get rootNode(){return Ve._ts_tree_root_node_wasm(this[0]),gt(this)}
    method getLanguage (line 1) | getLanguage(){return this.language}
    method walk (line 1) | walk(){return this.rootNode.walk()}
    method getChangedRanges (line 1) | getChangedRanges(e){if(e.constructor!==Tree)throw new TypeError("Argum...
  class Node (line 1) | class Node{constructor(e,t){ft(e),this.tree=t}get typeId(){return ht(thi...
    method constructor (line 1) | constructor(e,t){ft(e),this.tree=t}
    method typeId (line 1) | get typeId(){return ht(this),Ve._ts_node_symbol_wasm(this.tree[0])}
    method type (line 1) | get type(){return this.tree.language.types[this.typeId]||"ERROR"}
    method endPosition (line 1) | get endPosition(){return ht(this),Ve._ts_node_end_point_wasm(this.tree...
    method endIndex (line 1) | get endIndex(){return ht(this),Ve._ts_node_end_index_wasm(this.tree[0])}
    method text (line 1) | get text(){return ct(this.tree,this.startIndex,this.endIndex)}
    method isNamed (line 1) | isNamed(){return ht(this),1===Ve._ts_node_is_named_wasm(this.tree[0])}
    method hasError (line 1) | hasError(){return ht(this),1===Ve._ts_node_has_error_wasm(this.tree[0])}
    method hasChanges (line 1) | hasChanges(){return ht(this),1===Ve._ts_node_has_changes_wasm(this.tre...
    method isMissing (line 1) | isMissing(){return ht(this),1===Ve._ts_node_is_missing_wasm(this.tree[...
    method equals (line 1) | equals(e){return this.id===e.id}
    method child (line 1) | child(e){return ht(this),Ve._ts_node_child_wasm(this.tree[0],e),gt(thi...
    method namedChild (line 1) | namedChild(e){return ht(this),Ve._ts_node_named_child_wasm(this.tree[0...
    method childForFieldId (line 1) | childForFieldId(e){return ht(this),Ve._ts_node_child_by_field_id_wasm(...
    method childForFieldName (line 1) | childForFieldName(e){const t=this.tree.language.fields.indexOf(e);if(-...
    method childCount (line 1) | get childCount(){return ht(this),Ve._ts_node_child_count_wasm(this.tre...
    method namedChildCount (line 1) | get namedChildCount(){return ht(this),Ve._ts_node_named_child_count_wa...
    method firstChild (line 1) | get firstChild(){return this.child(0)}
    method firstNamedChild (line 1) | get firstNamedChild(){return this.namedChild(0)}
    method lastChild (line 1) | get lastChild(){return this.child(this.childCount-1)}
    method lastNamedChild (line 1) | get lastNamedChild(){return this.namedChild(this.namedChildCount-1)}
    method children (line 1) | get children(){if(!this._children){ht(this),Ve._ts_node_children_wasm(...
    method namedChildren (line 1) | get namedChildren(){if(!this._namedChildren){ht(this),Ve._ts_node_name...
    method descendantsOfType (line 1) | descendantsOfType(e,t,n){Array.isArray(e)||(e=[e]),t||(t=tt),n||(n=tt)...
    method nextSibling (line 1) | get nextSibling(){return ht(this),Ve._ts_node_next_sibling_wasm(this.t...
    method previousSibling (line 1) | get previousSibling(){return ht(this),Ve._ts_node_prev_sibling_wasm(th...
    method nextNamedSibling (line 1) | get nextNamedSibling(){return ht(this),Ve._ts_node_next_named_sibling_...
    method previousNamedSibling (line 1) | get previousNamedSibling(){return ht(this),Ve._ts_node_prev_named_sibl...
    method parent (line 1) | get parent(){return ht(this),Ve._ts_node_parent_wasm(this.tree[0]),gt(...
    method descendantForIndex (line 1) | descendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof t)th...
    method namedDescendantForIndex (line 1) | namedDescendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof...
    method descendantForPosition (line 1) | descendantForPosition(e,t=e){if(!pt(e)||!pt(t))throw new Error("Argume...
    method namedDescendantForPosition (line 1) | namedDescendantForPosition(e,t=e){if(!pt(e)||!pt(t))throw new Error("A...
    method walk (line 1) | walk(){return ht(this),Ve._ts_tree_cursor_new_wasm(this.tree[0]),new T...
    method toString (line 1) | toString(){ht(this);const e=Ve._ts_node_to_string_wasm(this.tree[0]),t...
  class TreeCursor (line 1) | class TreeCursor{constructor(e,t){ft(e),this.tree=t,Mt(this)}delete(){wt...
    method constructor (line 1) | constructor(e,t){ft(e),this.tree=t,Mt(this)}
    method delete (line 1) | delete(){wt(this),Ve._ts_tree_cursor_delete_wasm(this.tree[0]),this[0]...
    method reset (line 1) | reset(e){ht(e),wt(this,ut+Ye),Ve._ts_tree_cursor_reset_wasm(this.tree[...
    method nodeType (line 1) | get nodeType(){return this.tree.language.types[this.nodeTypeId]||"ERROR"}
    method nodeTypeId (line 1) | get nodeTypeId(){return wt(this),Ve._ts_tree_cursor_current_node_type_...
    method nodeId (line 1) | get nodeId(){return wt(this),Ve._ts_tree_cursor_current_node_id_wasm(t...
    method nodeIsNamed (line 1) | get nodeIsNamed(){return wt(this),1===Ve._ts_tree_cursor_current_node_...
    method nodeIsMissing (line 1) | get nodeIsMissing(){return wt(this),1===Ve._ts_tree_cursor_current_nod...
    method nodeText (line 1) | get nodeText(){wt(this);const e=Ve._ts_tree_cursor_start_index_wasm(th...
    method startPosition (line 1) | get startPosition(){return wt(this),Ve._ts_tree_cursor_start_position_...
    method endPosition (line 1) | get endPosition(){return wt(this),Ve._ts_tree_cursor_end_position_wasm...
    method startIndex (line 1) | get startIndex(){return wt(this),Ve._ts_tree_cursor_start_index_wasm(t...
    method endIndex (line 1) | get endIndex(){return wt(this),Ve._ts_tree_cursor_end_index_wasm(this....
    method currentNode (line 1) | currentNode(){return wt(this),Ve._ts_tree_cursor_current_node_wasm(thi...
    method currentFieldId (line 1) | currentFieldId(){return wt(this),Ve._ts_tree_cursor_current_field_id_w...
    method currentFieldName (line 1) | currentFieldName(){return this.tree.language.fields[this.currentFieldI...
    method gotoFirstChild (line 1) | gotoFirstChild(){wt(this);const e=Ve._ts_tree_cursor_goto_first_child_...
    method gotoNextSibling (line 1) | gotoNextSibling(){wt(this);const e=Ve._ts_tree_cursor_goto_next_siblin...
    method gotoParent (line 1) | gotoParent(){wt(this);const e=Ve._ts_tree_cursor_goto_parent_wasm(this...
  class Language (line 1) | class Language{constructor(e,t){ft(e),this[0]=t,this.types=new Array(Ve....
    method constructor (line 1) | constructor(e,t){ft(e),this[0]=t,this.types=new Array(Ve._ts_language_...
    method version (line 1) | get version(){return Ve._ts_language_version(this[0])}
    method fieldCount (line 1) | get fieldCount(){return this.fields.length-1}
    method fieldIdForName (line 1) | fieldIdForName(e){const t=this.fields.indexOf(e);return-1!==t?t:null}
    method fieldNameForId (line 1) | fieldNameForId(e){return this.fields[e]||null}
    method idForNodeType (line 1) | idForNodeType(e,t){const n=D(e),r=Ve._malloc(n+1);U(e,r,n+1);const s=V...
    method nodeTypeCount (line 1) | get nodeTypeCount(){return Ve._ts_language_symbol_count(this[0])}
    method nodeTypeForId (line 1) | nodeTypeForId(e){const t=Ve._ts_language_symbol_name(this[0],e);return...
    method nodeTypeIsNamed (line 1) | nodeTypeIsNamed(e){return!!Ve._ts_language_type_is_named_wasm(this[0],e)}
    method nodeTypeIsVisible (line 1) | nodeTypeIsVisible(e){return!!Ve._ts_language_type_is_visible_wasm(this...
    method query (line 1) | query(e){const t=D(e),n=Ve._malloc(t+1);U(e,n,t+1);const r=Ve._ts_quer...
    method load (line 1) | static load(e){let t;if(e instanceof Uint8Array)t=Promise.resolve(e);e...
  class Query (line 1) | class Query{constructor(e,t,n,r,s,o,_,a){ft(e),this[0]=t,this.captureNam...
    method constructor (line 1) | constructor(e,t,n,r,s,o,_,a){ft(e),this[0]=t,this.captureNames=n,this....
    method delete (line 1) | delete(){Ve._ts_query_delete(this[0]),this[0]=0}
    method matches (line 1) | matches(e,t,n){t||(t=tt),n||(n=tt),ht(e),Ve._ts_query_matches_wasm(thi...
    method captures (line 1) | captures(e,t,n){t||(t=tt),n||(n=tt),ht(e),Ve._ts_query_captures_wasm(t...
    method predicatesForPattern (line 1) | predicatesForPattern(e){return this.predicates[e]}
  function ct (line 1) | function ct(e,t,n){const r=n-t;let s=e.textCallback(t,null,n);for(t+=s.l...
  function mt (line 1) | function mt(e,t,n,r){for(let s=0,o=r.length;s<o;s++){const o=A(n,"i32"),...
  function ft (line 1) | function ft(e){if(e!==Xe)throw new Error("Illegal constructor")}
  function pt (line 1) | function pt(e){return e&&"number"==typeof e.row&&"number"==typeof e.column}
  function ht (line 1) | function ht(e){let t=ut;S(t,e.id,"i32"),S(t+=Qe,e.startIndex,"i32"),S(t+...
  function gt (line 1) | function gt(e,t=ut){const n=A(t,"i32");if(0===n)return null;const r=A(t+...
  function wt (line 1) | function wt(e,t=ut){S(t+0*Qe,e[0],"i32"),S(t+1*Qe,e[1],"i32"),S(t+2*Qe,e...
  function Mt (line 1) | function Mt(e){e[0]=A(ut+0*Qe,"i32"),e[1]=A(ut+1*Qe,"i32"),e[2]=A(ut+2*Q...
  function yt (line 1) | function yt(e,t){S(e,t.row,"i32"),S(e+Qe,t.column,"i32")}
  function bt (line 1) | function bt(e){return{row:A(e,"i32"),column:A(e+Qe,"i32")}}
  function Et (line 1) | function Et(e,t){yt(e,t.startPosition),yt(e+=Je,t.endPosition),S(e+=Je,t...
  function vt (line 1) | function vt(e){const t={};return t.startPosition=bt(e),e+=Je,t.endPositi...

FILE: grammar.js
  function _ (line 283) | function _(alias_value, ...rule_names) {
  function global_alias (line 300) | function global_alias(grammar_json, alias_map) {
  function recursive_alias (line 317) | function recursive_alias(rule, alias_map, checklist) {

FILE: scripts/update-generated-utils.js
  function generateScanUtil (line 135) | function generateScanUtil(functionSignature, pathData, isCaseSensitive) {
  function generatePredicateUtil (line 189) | function generatePredicateUtil(functionNameToCategoriesMap) {

FILE: scripts/update-spec-corpus.js
  function getSpecExamples (line 5) | function getSpecExamples(specFilename) {
  function writeTest (line 21) | function writeTest(filename, specExamples) {

FILE: src/parser.c
  function ts_lex (line 1755) | static bool ts_lex(TSLexer *lexer, TSStateId state) {
  function TSLanguage (line 35328) | extern const TSLanguage *tree_sitter_markdown(void) {

FILE: src/scanner.cc
  type Scanner (line 34) | struct Scanner {
    method Scanner (line 43) | Scanner() {
    method serialize (line 47) | unsigned serialize(unsigned char *buffer) {
    method deserialize (line 61) | void deserialize(const unsigned char *buffer, unsigned length) {
    method scan (line 83) | bool scan(TSLexer *lexer, const bool *valid_symbols) {
  function tree_sitter_markdown_external_scanner_destroy (line 294) | void tree_sitter_markdown_external_scanner_destroy(void *payload) {
  function tree_sitter_markdown_external_scanner_serialize (line 299) | unsigned tree_sitter_markdown_external_scanner_serialize(void *payload, ...
  function tree_sitter_markdown_external_scanner_deserialize (line 304) | void tree_sitter_markdown_external_scanner_deserialize(void *payload, co...
  function tree_sitter_markdown_external_scanner_scan (line 309) | bool tree_sitter_markdown_external_scanner_scan(void *payload, TSLexer *...

FILE: src/tree_sitter/parser.h
  type TSStateId (line 16) | typedef uint16_t TSStateId;
  type TSSymbol (line 19) | typedef uint16_t TSSymbol;
  type TSFieldId (line 20) | typedef uint16_t TSFieldId;
  type TSLanguage (line 21) | typedef struct TSLanguage TSLanguage;
  type TSFieldMapEntry (line 24) | typedef struct {
  type TSFieldMapSlice (line 30) | typedef struct {
  type TSSymbolMetadata (line 35) | typedef struct {
  type TSLexer (line 41) | typedef struct TSLexer TSLexer;
  type TSLexer (line 43) | struct TSLexer {
  type TSParseActionType (line 53) | typedef enum {
  type TSParseAction (line 60) | typedef union {
  type TSLexMode (line 77) | typedef struct {
  type TSParseActionEntry (line 82) | typedef union {
  type TSLanguage (line 90) | struct TSLanguage {

FILE: src/tree_sitter_markdown/block_context.cc
  type tree_sitter_markdown (line 3) | namespace tree_sitter_markdown {
    function Symbol (line 6) | Symbol BlockContext::sym() const { return sym_; }
    function LexedLength (line 7) | LexedLength BlockContext::len() const { return len_; }
    function LexedColumn (line 8) | LexedColumn BlockContext::ind() const { return ind_; }
    function ParseState (line 9) | ParseState BlockContext::pst() const { TREE_SITTER_MARKDOWN_ASSERT(pst...
    function BlockContext (line 36) | BlockContext &BlockContextStack::back() { return stk_.back(); }
    function BlockContext (line 37) | const BlockContext &BlockContextStack::back() const { return stk_.back...

FILE: src/tree_sitter_markdown/block_context.h
  function namespace (line 8) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/block_delimiter.cc
  type tree_sitter_markdown (line 5) | namespace tree_sitter_markdown {
    function Symbol (line 7) | Symbol BlockDelimiter::sym() const { return sym_; }
    function LexedLength (line 8) | LexedLength BlockDelimiter::len() const { return len_; }
    function LexedColumn (line 9) | LexedColumn BlockDelimiter::ind() const { return ind_; }
    function LexedPosition (line 11) | const LexedPosition &BlockDelimiter::pos() const { TREE_SITTER_MARKDOW...
    function LexedPosition (line 12) | const LexedPosition &BlockDelimiter::end_pos() const { TREE_SITTER_MAR...
    function TokenType (line 53) | TokenType BlockDelimiter::tkn_typ(LexedCharacter c) const {
    function BlockDelimiter (line 119) | BlockDelimiter &BlockDelimiterList::front() { return list_.front(); }
    function BlockDelimiter (line 120) | BlockDelimiter &BlockDelimiterList::back() { return list_.back(); }
    function BlockDelimiter (line 122) | BlockDelimiter *BlockDelimiterList::lit_lbk(const LexedRow row) {

FILE: src/tree_sitter_markdown/block_delimiter.h
  function namespace (line 9) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/block_scan.cc
  type tree_sitter_markdown (line 7) | namespace tree_sitter_markdown {
    function BlockScanResult (line 9) | BlockScanResult scn_blk_nod(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function push_lst_nod_mkr_if_necessary (line 26) | void push_lst_nod_mkr_if_necessary(BlockDelimiterList &blk_dlms, Block...
    function scn_blk (line 51) | void scn_blk(Lexer &lxr, BlockDelimiterList &blk_dlms, const BlockCont...
    function scn_eol (line 86) | bool /*is_interrupted*/ scn_eol(Lexer &lxr, BlockDelimiterList &blk_dl...
    function LexedColumn (line 486) | LexedColumn adv_blk_pfx(Lexer &lxr, BlockContextStack::ConstIterator &...
    function LexedColumn (line 490) | LexedColumn adv_blk_pfx(Lexer &lxr, BlockContextStack::ConstIterator &...
    function scn_tbl_dlm_row (line 529) | bool scn_tbl_dlm_row(Lexer &lxr, const uint16_t tbl_col_cnt) {
    function BlockScanResult (line 555) | BlockScanResult scn_ind_cod(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 565) | BlockScanResult scn_blk_asr(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 569) | BlockScanResult scn_blk_btk(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 573) | BlockScanResult scn_blk_eql(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 577) | BlockScanResult scn_blk_hsh(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 589) | BlockScanResult scn_blk_hyp(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 593) | BlockScanResult scn_blk_lng(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 700) | BlockScanResult scn_blk_num(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 704) | BlockScanResult scn_blk_pls(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 708) | BlockScanResult scn_blk_rng(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 717) | BlockScanResult scn_blk_tld(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 721) | BlockScanResult scn_blk_usc(Lexer &lxr, BlockDelimiterList &blk_dlms, ...
    function BlockScanResult (line 725) | BlockScanResult scn_fen_cod(
    function BlockScanResult (line 752) | BlockScanResult scn_num_lst_itm(
    function BlockScanResult (line 788) | BlockScanResult scn_stx_and_thm_brk_and_lst_itm(

FILE: src/tree_sitter_markdown/block_scan.h
  function namespace (line 11) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/block_scan_util.generated.cc
  type tree_sitter_markdown (line 3) | namespace tree_sitter_markdown {
    function adv_blk_htm_tag_nam (line 5) | void adv_blk_htm_tag_nam(Lexer &lxr, LexedLength &scr_len, LexedLength...

FILE: src/tree_sitter_markdown/block_scan_util.generated.h
  function namespace (line 6) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/inline_context.cc
  type tree_sitter_markdown (line 3) | namespace tree_sitter_markdown {
    function ParseState (line 6) | ParseState InlineContext::pst() const { TREE_SITTER_MARKDOWN_ASSERT(is...
    function LexedLength (line 12) | LexedLength InlineContext::btk_len() const { return btk_len_; }
    function InlineContext (line 40) | InlineContext &InlineContextStack::back() { return stk_.back(); }
    function InlineContext (line 41) | const InlineContext &InlineContextStack::back() const { return stk_.ba...
    function InlineContext (line 42) | const InlineContext &InlineContextStack::back(const uint8_t offset) co...

FILE: src/tree_sitter_markdown/inline_context.h
  function namespace (line 8) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/inline_delimiter.cc
  type tree_sitter_markdown (line 6) | namespace tree_sitter_markdown {
    function Symbol (line 9) | Symbol MinimizedInlineDelimiter::sym() const { return sym_; }
    function LexedLength (line 10) | LexedLength MinimizedInlineDelimiter::len() const { return len_; }
    function TokenType (line 30) | TokenType MinimizedInlineDelimiter::tkn_typ(LexedCharacter cur_chr, Le...
    function MinimizedInlineDelimiter (line 170) | MinimizedInlineDelimiter &MinimizedInlineDelimiterList::front() { retu...
    function Symbol (line 199) | Symbol InlineDelimiter::sym() const { return sym_; }
    function LexedLength (line 200) | LexedLength InlineDelimiter::len() const { return len_; }
    function LexedLength (line 201) | LexedLength InlineDelimiter::ori_len() const { return ori_len_; }
    function LexedPosition (line 202) | const LexedPosition &InlineDelimiter::pos() const { return pos_; }
    function LexedPosition (line 203) | const LexedPosition &InlineDelimiter::end_pos() const { return end_pos...
    function InlineDelimiterCustomData (line 204) | InlineDelimiterCustomData InlineDelimiter::ctm_dat() const { return ct...
    function InlineDelimiter (line 206) | InlineDelimiter *InlineDelimiter::end_dlm() const { return end_dlm_; }
    function MinimizedInlineDelimiter (line 218) | MinimizedInlineDelimiter InlineDelimiter::to_min() const { return Mini...
    function InlineDelimiter (line 223) | InlineDelimiter &InlineDelimiterList::front() { return list_.front(); }

FILE: src/tree_sitter_markdown/inline_delimiter.h
  function namespace (line 9) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/inline_scan.cc
  type tree_sitter_markdown (line 14) | namespace tree_sitter_markdown {
    function is_in_tbl (line 16) | bool is_in_tbl(const BlockContextStack &blk_ctx_stk) {
    function scn_mid (line 24) | void scn_mid(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineContextS...
    function Symbol (line 32) | Symbol scn_inl(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineContex...
    function Symbol (line 41) | Symbol scn_inl(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineContex...
    function scn_blk_txt (line 174) | bool scn_blk_txt(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    type ExtendedAutolinkDomainSegment (line 309) | struct ExtendedAutolinkDomainSegment {
      method has_usc (line 314) | bool has_usc() const { return has_usc_; }
      method LexedPosition (line 315) | LexedPosition end_pos() const { return end_pos_; }
      method ExtendedAutolinkDomainSegment (line 316) | ExtendedAutolinkDomainSegment(bool has_usc, LexedPosition end_pos):
    function scn_ext_aut_lnk_vld_dmn (line 320) | bool scn_ext_aut_lnk_vld_dmn(Lexer &lxr) {
    function scn_ext_aut_lnk (line 354) | bool scn_ext_aut_lnk(Lexer &lxr, InlineDelimiterList &inl_dlms, Inline...
    function scn_inl_amp (line 508) | bool scn_inl_amp(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_asr (line 554) | bool scn_inl_asr(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_bng (line 558) | bool scn_inl_bng(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_bsl (line 572) | bool scn_inl_bsl(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_btk (line 644) | bool scn_inl_btk(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_cln (line 666) | bool scn_inl_cln(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_dqt (line 701) | bool scn_inl_dqt(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_eql (line 708) | bool scn_inl_eql(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_hsh (line 721) | bool scn_inl_hsh(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_hyp (line 732) | bool scn_inl_hyp(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_lbt (line 763) | bool scn_inl_lbt(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_lng (line 809) | bool scn_inl_lng(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_lpr (line 885) | bool scn_inl_lpr(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_pip (line 907) | bool scn_inl_pip(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_qus (line 920) | bool scn_inl_qus(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_rbt (line 935) | bool scn_inl_rbt(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_rng (line 1017) | bool scn_inl_rng(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_rpr (line 1077) | bool scn_inl_rpr(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_slh (line 1110) | bool scn_inl_slh(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_sqt (line 1131) | bool scn_inl_sqt(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_tld (line 1138) | bool scn_inl_tld(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_usc (line 1171) | bool scn_inl_usc(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_inl_txt (line 1175) | bool scn_inl_txt(Lexer &lxr, InlineDelimiterList &inl_dlms, InlineCont...
    function scn_aut_lnk_htm_opn_tag_txt (line 1377) | bool scn_aut_lnk_htm_opn_tag_txt(
    function scn_dlm_run (line 1434) | bool scn_dlm_run(
    function scn_lnk_tit_bgn (line 1573) | bool scn_lnk_tit_bgn(
    function scn_lnk_tit_end (line 1586) | bool scn_lnk_tit_end(
    function scn_htm_atr_val_bgn (line 1633) | bool scn_htm_atr_val_bgn(
    function scn_htm_atr_val_end (line 1648) | bool scn_htm_atr_val_end(
    function hdl_lnk_dst_imp_bgn_mkr (line 1669) | bool hdl_lnk_dst_imp_bgn_mkr(Lexer &lxr, InlineDelimiterList &inl_dlms...
    function hdl_lnk_dst_imp_end_mkr (line 1679) | bool hdl_lnk_dst_imp_end_mkr(Lexer &lxr, InlineDelimiterList &inl_dlms...
    function hdl_htm_atr_uqt_bgn_mkr (line 1695) | bool hdl_htm_atr_uqt_bgn_mkr(Lexer &lxr, InlineDelimiterList &inl_dlms...
    function hdl_htm_atr_uqt_end_mkr (line 1704) | bool hdl_htm_atr_uqt_end_mkr(Lexer &lxr, InlineDelimiterList &inl_dlms...
    function hdl_paired_lnk_end (line 1717) | void hdl_paired_lnk_end(Lexer &lxr, InlineDelimiterList &inl_dlms, Inl...
    function hdl_paired_lnk_ref_def (line 1753) | void hdl_paired_lnk_ref_def(Lexer &lxr, InlineDelimiterList &inl_dlms,...
    function hdl_unpaired_inl_dlm (line 1775) | void hdl_unpaired_inl_dlm(Lexer &lxr, InlineDelimiterList &inl_dlms, I...

FILE: src/tree_sitter_markdown/inline_scan.h
  function namespace (line 11) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/inline_scan_util.generated.cc
  type tree_sitter_markdown (line 3) | namespace tree_sitter_markdown {
    function adv_inl_ent_ref_nam (line 5) | void adv_inl_ent_ref_nam(Lexer &lxr, LexedLength &ent_ref_len) {

FILE: src/tree_sitter_markdown/inline_scan_util.generated.h
  function namespace (line 6) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/lexer.cc
  type tree_sitter_markdown (line 6) | namespace tree_sitter_markdown {
    function LexedIndex (line 8) | LexedIndex Lexer::cur_idx() const { return cur_idx_; }
    function LexedRow (line 9) | LexedRow Lexer::cur_row() const { return cur_row_; }
    function LexedColumn (line 10) | LexedColumn Lexer::cur_col() const { return cur_col_; }
    function LexedPosition (line 11) | LexedPosition Lexer::cur_pos() const { return LexedPosition(cur_idx_, ...
    function LexedPosition (line 12) | LexedPosition Lexer::cur_pos(const LexedIndex offset_idx) const { retu...
    function LexedCharacter (line 13) | LexedCharacter Lexer::cur_chr() const { return cur_chr_; }
    function LexedCharacter (line 14) | LexedCharacter Lexer::lka_chr() const { return lka_chr_; }
    function LexedLength (line 15) | LexedLength Lexer::cur_spc() const { return cur_spc_; }
    function LexedColumn (line 16) | LexedColumn Lexer::cur_ind() const { return cur_ind_; }
    function LexedLength (line 154) | LexedLength Lexer::adv_rpt_len(const LexedCharacter chr, const LexedLe...
    function LexedLength (line 159) | LexedLength Lexer::adv_rpt_len(bool (*is_chr)(LexedCharacter), const L...
    function LexedLength (line 227) | LexedLength Lexer::clc_vtr_spc_cnt(const LexedColumn cur_ind, const Le...

FILE: src/tree_sitter_markdown/lexer.h
  function namespace (line 9) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/parse_table.cc
  type tree_sitter_markdown (line 5) | namespace tree_sitter_markdown {
    function is_inl_sym (line 7) | bool is_inl_sym(const Symbol sym) { return sym >= FIRST_INLINE_SYMBOL ...
    function is_inl_cls_mrk_sym (line 8) | bool is_inl_cls_mrk_sym(const Symbol sym) { return sym >= FIRST_INLINE...
    function is_blk_sym (line 9) | bool is_blk_sym(const Symbol sym) { return sym >= FIRST_BLOCK_SYMBOL &...
    function is_blk_opn_sym (line 10) | bool is_blk_opn_sym(const Symbol sym) { return sym >= FIRST_BLOCK_OPEN...
    function is_blk_cls_sym (line 11) | bool is_blk_cls_sym(const Symbol sym) { return sym >= FIRST_BLOCK_CLOS...
    function is_paired_blk_syms (line 12) | bool is_paired_blk_syms(const Symbol opn_sym, const Symbol cls_sym) {
    function Symbol (line 16) | Symbol get_blk_cls_sym(const Symbol opn_sym) {
    function ParseState (line 54) | ParseState blk_sym_pst(const Symbol sym) {
    function ParseState (line 75) | ParseState inl_sym_pst(const Symbol sym, const bool has_asr, const boo...
    function vld_sym (line 140) | bool vld_sym(const Symbol sym, const ParseState pst) {

FILE: src/tree_sitter_markdown/parse_table.h
  function namespace (line 4) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/predicate.cc
  type tree_sitter_markdown (line 5) | namespace tree_sitter_markdown {
    function is_wsp_chr (line 7) | bool is_wsp_chr(const LexedCharacter c) { return c == ' ' || c == '\t'; }
    function is_lbk_chr (line 8) | bool is_lbk_chr(const LexedCharacter c) { return c == '\n' || c == '\r...
    function is_eof_chr (line 9) | bool is_eof_chr(const LexedCharacter c) { return c == 0; }
    function is_eol_chr (line 10) | bool is_eol_chr(const LexedCharacter c) { return is_lbk_chr(c) || is_e...
    function is_wht_chr (line 11) | bool is_wht_chr(const LexedCharacter c) { return is_wsp_chr(c) || is_e...
    function is_non_wht_chr (line 12) | bool is_non_wht_chr(const LexedCharacter c) { return !is_wht_chr(c); }
    function is_num_chr (line 13) | bool is_num_chr(const LexedCharacter c) { return c >= '0' && c <= '9'; }
    function is_hex_chr (line 14) | bool is_hex_chr(const LexedCharacter c) { return is_num_chr(c) || (c >...
    function is_asc_ltr_chr (line 15) | bool is_asc_ltr_chr(const LexedCharacter c) { return is_low_asc_ltr_ch...
    function is_low_asc_ltr_chr (line 16) | bool is_low_asc_ltr_chr(const LexedCharacter c) { return c >= 'a' && c...
    function is_upp_asc_ltr_chr (line 17) | bool is_upp_asc_ltr_chr(const LexedCharacter c) { return c >= 'A' && c...
    function is_asc_pun_chr (line 18) | bool is_asc_pun_chr(const LexedCharacter c) {
    function is_uni_pun_chr (line 26) | bool is_uni_pun_chr(const LexedCharacter c) {
    function is_asc_wht_chr (line 29) | bool is_asc_wht_chr(const LexedCharacter c) {
    function is_uni_wht_chr (line 32) | bool is_uni_wht_chr(const LexedCharacter c) {
    function is_lfk_dlm_run (line 35) | bool is_lfk_dlm_run(const LexedCharacter left, const LexedCharacter ri...
    function is_rfk_dlm_run (line 40) | bool is_rfk_dlm_run(const LexedCharacter left, const LexedCharacter ri...
    function can_opn_asr (line 45) | bool can_opn_asr(const LexedCharacter left, const LexedCharacter right) {
    function can_cls_asr (line 48) | bool can_cls_asr(const LexedCharacter left, const LexedCharacter right) {
    function can_opn_usc (line 51) | bool can_opn_usc(const LexedCharacter left, const LexedCharacter right) {
    function can_cls_usc (line 55) | bool can_cls_usc(const LexedCharacter left, const LexedCharacter right) {
    function is_aut_lnk_eml_dmn_sid_chr (line 60) | bool is_aut_lnk_eml_dmn_sid_chr(const LexedCharacter c) {
    function is_aut_lnk_eml_dmn_mid_chr (line 63) | bool is_aut_lnk_eml_dmn_mid_chr(const LexedCharacter c) {
    function is_ext_aut_lnk_bgn (line 67) | bool is_ext_aut_lnk_bgn(const LexedCharacter cur_chr, const LexedChara...

FILE: src/tree_sitter_markdown/predicate.h
  function namespace (line 6) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/predicate_util.generated.cc
  type tree_sitter_markdown (line 3) | namespace tree_sitter_markdown {
    function is_unicode_Zs (line 5) | bool is_unicode_Zs(LexedCharacter c) { return c == 0x20 || c == 0xa0 |...
    function is_unicode_Pc_Pd_Pe_Pf_Pi_Po_Ps (line 6) | bool is_unicode_Pc_Pd_Pe_Pf_Pi_Po_Ps(LexedCharacter c) { return (c >= ...

FILE: src/tree_sitter_markdown/predicate_util.generated.h
  function namespace (line 6) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/shared_type.cc
  type tree_sitter_markdown (line 5) | namespace tree_sitter_markdown {
    function LexedIndex (line 7) | LexedIndex LexedPosition::idx() const { return idx_; }
    function LexedRow (line 8) | LexedRow LexedPosition::row() const { return row_; }
    function LexedColumn (line 9) | LexedColumn LexedPosition::col() const { return col_; }
    function LexedPosition (line 17) | LexedPosition LexedPosition::clone_add(const LexedIndex offset_idx) co...
    function LexedLength (line 19) | LexedLength LexedPosition::dist(const LexedPosition &pos) const {

FILE: src/tree_sitter_markdown/shared_type.h
  function namespace (line 6) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/token_type.h
  function namespace (line 4) | namespace tree_sitter_markdown {

FILE: src/tree_sitter_markdown/util.cc
  type tree_sitter_markdown (line 3) | namespace tree_sitter_markdown {
    function adv_blk_htm_end (line 5) | bool adv_blk_htm_end(Lexer &lxr) {
    function vld_sym (line 36) | bool vld_sym(const Symbol sym, const BlockContextStack &blk_ctx_stk) {
    function vld_sym (line 40) | bool vld_sym(const Symbol sym, const BlockContextStack &blk_ctx_stk, c...
    function is_lst_itm_bgn (line 46) | bool is_lst_itm_bgn(const Symbol sym) {

FILE: src/tree_sitter_markdown/util.h
  function namespace (line 9) | namespace tree_sitter_markdown {
Condensed preview — 71 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,630K chars).
[
  {
    "path": ".editorconfig",
    "chars": 192,
    "preview": "root = true\n\n[*]\ncharset = utf-8\nend_of_line = lf\nindent_size = 2\nindent_style = space\ninsert_final_newline = true\ntrim_"
  },
  {
    "path": ".gitattributes",
    "chars": 218,
    "preview": "* text eol=lf\n*.wasm binary\n\n/src/** linguist-generated\n/src/scanner.* linguist-generated=false\n/src/tree_sitter_markdow"
  },
  {
    "path": ".gitignore",
    "chars": 29,
    "preview": "/build\n/node_modules\n/target\n"
  },
  {
    "path": ".gitmodules",
    "chars": 118,
    "preview": "[submodule \"tree-sitter\"]\n\tpath = tree-sitter\n\turl = https://github.com/ikatyang/tree-sitter\n\tbranch = v0.19.3-custom\n"
  },
  {
    "path": ".npmignore",
    "chars": 0,
    "preview": ""
  },
  {
    "path": ".travis.yml",
    "chars": 312,
    "preview": "language: rust\n\nrust:\n  - stable\n\nscript:\n  - if [ ! -d \"./tree-sitter/target/release\" ]; then bash ./scripts/setup-tree"
  },
  {
    "path": ".versionrc.js",
    "chars": 670,
    "preview": "module.exports = {\n  preset: \"angular\",\n  scripts: {\n    postbump: [\n      \"cargo package --list --allow-dirty && git ad"
  },
  {
    "path": "CHANGELOG.md",
    "chars": 5480,
    "preview": "# Changelog\n\nAll notable changes to this project will be documented in this file. See [standard-version](https://github."
  },
  {
    "path": "Cargo.toml",
    "chars": 547,
    "preview": "[package]\nname = \"tree-sitter-markdown\"\ndescription = \"Markdown grammar for tree-sitter\"\nversion = \"0.7.1\"\nkeywords = [\""
  },
  {
    "path": "LICENSE",
    "chars": 1116,
    "preview": "The MIT License (MIT)\n\nCopyright (c) Ika <ikatyang@gmail.com> (https://github.com/ikatyang)\n\nPermission is hereby grante"
  },
  {
    "path": "README.md",
    "chars": 1578,
    "preview": "# tree-sitter-markdown\n\n[![npm](https://img.shields.io/npm/v/tree-sitter-markdown.svg)](https://www.npmjs.com/package/tr"
  },
  {
    "path": "binding.gyp",
    "chars": 547,
    "preview": "{\n  \"targets\": [\n    {\n      \"target_name\": \"tree_sitter_markdown_binding\",\n      \"include_dirs\": [\n        \"<!(node -e "
  },
  {
    "path": "bindings/node/binding.cc",
    "chars": 877,
    "preview": "#include \"tree_sitter/parser.h\"\n#include <node.h>\n#include \"nan.h\"\n\nusing namespace v8;\n\nextern \"C\" TSLanguage * tree_si"
  },
  {
    "path": "bindings/node/index.js",
    "chars": 467,
    "preview": "try {\n  module.exports = require(\"../../build/Release/tree_sitter_markdown_binding\");\n} catch (error1) {\n  if (error1.co"
  },
  {
    "path": "bindings/rust/build.rs",
    "chars": 1363,
    "preview": "fn main() {\n    let src_dir = std::path::Path::new(\"src\");\n\n    let mut c_config = cc::Build::new();\n    c_config.includ"
  },
  {
    "path": "bindings/rust/lib.rs",
    "chars": 2075,
    "preview": "//! This crate provides markdown language support for the [tree-sitter][] parsing library.\n//!\n//! Typically, you will u"
  },
  {
    "path": "corpus/custom.txt",
    "chars": 27036,
    "preview": "================================================================================\nFenced code block - trailing blank line"
  },
  {
    "path": "corpus/issues.txt",
    "chars": 4496,
    "preview": "================================================================================\n#14 - Assertion failed caused by unexpe"
  },
  {
    "path": "corpus/spec.txt",
    "chars": 307915,
    "preview": "================================================================================\nExample 1 - https://github.github.com/g"
  },
  {
    "path": "docs/assets/tree-sitter-playground-0.19.3/LICENSE",
    "chars": 1080,
    "preview": "The MIT License (MIT)\n\nCopyright (c) 2018 Max Brunsfeld\n\nPermission is hereby granted, free of charge, to any person obt"
  },
  {
    "path": "docs/assets/tree-sitter-playground-0.19.3/playground.js",
    "chars": 13968,
    "preview": "let tree;\n\n(async () => {\n  const CAPTURE_REGEX = /@\\s*([\\w\\._-]+)/g;\n  const COLORS_BY_INDEX = [\n    'blue',\n    'choco"
  },
  {
    "path": "docs/assets/tree-sitter-playground-0.19.3/style.css",
    "chars": 11413,
    "preview": "/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webki"
  },
  {
    "path": "docs/assets/web-tree-sitter-0.19.3/LICENSE",
    "chars": 1080,
    "preview": "The MIT License (MIT)\n\nCopyright (c) 2018 Max Brunsfeld\n\nPermission is hereby granted, free of charge, to any person obt"
  },
  {
    "path": "docs/assets/web-tree-sitter-0.19.3/tree-sitter.js",
    "chars": 50416,
    "preview": "var Module=void 0!==Module?Module:{};!function(e,t){\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof "
  },
  {
    "path": "docs/index.html",
    "chars": 4115,
    "preview": "<!DOCTYPE html>\n<html>\n\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n  <meta name=\"view"
  },
  {
    "path": "gfm-spec/spec.txt",
    "chars": 216270,
    "preview": "# Introduction\n\n## What is GitHub Flavored Markdown?\n\nGitHub Flavored Markdown, often shortened as GFM, is the dialect o"
  },
  {
    "path": "gfm-spec/update.sh",
    "chars": 107,
    "preview": "DIRNAME=$(dirname \"${BASH_SOURCE[0]}\")\n\ncurl https://github.github.com/gfm/spec.txt -o \"$DIRNAME/spec.txt\"\n"
  },
  {
    "path": "grammar.js",
    "chars": 17531,
    "preview": "module.exports = grammar({\n  name: \"markdown\",\n\n  externals: $ => [\n    $._eof,\n    $._lka,\n\n    $._thm_brk_bgn,        "
  },
  {
    "path": "package.json",
    "chars": 997,
    "preview": "{\n  \"name\": \"tree-sitter-markdown\",\n  \"version\": \"0.7.1\",\n  \"description\": \"Markdown grammar for tree-sitter\",\n  \"keywor"
  },
  {
    "path": "scripts/generate-playground.js",
    "chars": 1318,
    "preview": "const generatePlayground = require(\"../tree-sitter/script/generate-playground\");\n\ngeneratePlayground(\"docs\", {\n  name: \""
  },
  {
    "path": "scripts/setup-tree-sitter.sh",
    "chars": 85,
    "preview": "git submodule update --init\ncd tree-sitter\n./script/build-wasm\ncargo build --release\n"
  },
  {
    "path": "scripts/update-generated-utils.block-data.json",
    "chars": 845,
    "preview": "{\n  \"scr\": [\"script\", \"pre\", \"style\"],\n  \"div\": [\n    \"address\",\n    \"article\",\n    \"aside\",\n    \"base\",\n    \"basefont\","
  },
  {
    "path": "scripts/update-generated-utils.inline-data.json",
    "chars": 26757,
    "preview": "[\n  \"AElig\",\n  \"AMP\",\n  \"Aacute\",\n  \"Abreve\",\n  \"Acirc\",\n  \"Acy\",\n  \"Afr\",\n  \"Agrave\",\n  \"Alpha\",\n  \"Amacr\",\n  \"And\",\n  "
  },
  {
    "path": "scripts/update-generated-utils.js",
    "chars": 5691,
    "preview": "const fs = require(\"fs\");\nconst unicodeRegex = require(\"unicode-regex\");\nconst blockData = require(\"./update-generated-u"
  },
  {
    "path": "scripts/update-spec-corpus.js",
    "chars": 911,
    "preview": "const fs = require(\"fs\");\n\nwriteTest(\"./corpus/spec.txt\", getSpecExamples(\"./gfm-spec/spec.txt\"));\n\nfunction getSpecExam"
  },
  {
    "path": "src/grammar.json",
    "chars": 78727,
    "preview": "{\n  \"name\": \"markdown\",\n  \"rules\": {\n    \"document\": {\n      \"type\": \"SEQ\",\n      \"members\": [\n        {\n          \"type"
  },
  {
    "path": "src/node-types.json",
    "chars": 32566,
    "preview": "[\n  {\n    \"type\": \"atx_heading\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"r"
  },
  {
    "path": "src/parser.c",
    "chars": 939987,
    "preview": "#include <tree_sitter/parser.h>\n\n#if defined(__GNUC__) || defined(__clang__)\n#pragma GCC diagnostic push\n#pragma GCC dia"
  },
  {
    "path": "src/scanner.cc",
    "chars": 10210,
    "preview": "#include <tree_sitter/parser.h>\n#include <cassert>\n#include <list>\n#include <vector>\n\n#include \"./tree_sitter_markdown/t"
  },
  {
    "path": "src/tree_sitter/parser.h",
    "chars": 5326,
    "preview": "#ifndef TREE_SITTER_PARSER_H_\n#define TREE_SITTER_PARSER_H_\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n#include <stdbool.h"
  },
  {
    "path": "src/tree_sitter_markdown/block_context.cc",
    "chars": 2910,
    "preview": "#include \"./block_context.h\"\n\nnamespace tree_sitter_markdown {\n\nbool BlockContext::has_fst_ctn() const { return has_fst_"
  },
  {
    "path": "src/tree_sitter_markdown/block_context.h",
    "chars": 1559,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_BLOCK_CONTEXT_H_\n#define TREE_SITTER_MARKDOWN_BLOCK_CONTEXT_H_\n\n#include <vector>\n#include "
  },
  {
    "path": "src/tree_sitter_markdown/block_delimiter.cc",
    "chars": 9870,
    "preview": "#include \"./block_delimiter.h\"\n\n#include \"./predicate.h\"\n\nnamespace tree_sitter_markdown {\n\nSymbol BlockDelimiter::sym()"
  },
  {
    "path": "src/tree_sitter_markdown/block_delimiter.h",
    "chars": 2176,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_BLOCK_DELIMITER_H_\n#define TREE_SITTER_MARKDOWN_BLOCK_DELIMITER_H_\n\n#include <list>\n#includ"
  },
  {
    "path": "src/tree_sitter_markdown/block_scan.cc",
    "chars": 37113,
    "preview": "#include \"./block_scan.h\"\n\n#include \"./block_scan_util.generated.h\"\n#include \"./predicate.h\"\n#include \"./util.h\"\n\nnamesp"
  },
  {
    "path": "src/tree_sitter_markdown/block_scan.h",
    "chars": 4369,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_BLOCK_SCAN_H_\n#define TREE_SITTER_MARKDOWN_BLOCK_SCAN_H_\n\n#include \"./block_context.h\"\n#inc"
  },
  {
    "path": "src/tree_sitter_markdown/block_scan_util.generated.cc",
    "chars": 16475,
    "preview": "#include \"./block_scan_util.generated.h\"\n\nnamespace tree_sitter_markdown {\n\nvoid adv_blk_htm_tag_nam(Lexer &lxr, LexedLe"
  },
  {
    "path": "src/tree_sitter_markdown/block_scan_util.generated.h",
    "chars": 330,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_BLOCK_SCAN_UTIL_GENERATED_H_\n#define TREE_SITTER_MARKDOWN_BLOCK_SCAN_UTIL_GENERATED_H_\n\n#in"
  },
  {
    "path": "src/tree_sitter_markdown/inline_context.cc",
    "chars": 4174,
    "preview": "#include \"./inline_context.h\"\n\nnamespace tree_sitter_markdown {\n\nInlineDelimiterList::Iterator InlineContext::dlm_itr() "
  },
  {
    "path": "src/tree_sitter_markdown/inline_context.h",
    "chars": 1722,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_INLINE_CONTEXT_H_\n#define TREE_SITTER_MARKDOWN_INLINE_CONTEXT_H_\n\n#include <list>\n#include "
  },
  {
    "path": "src/tree_sitter_markdown/inline_delimiter.cc",
    "chars": 11830,
    "preview": "#include \"./inline_delimiter.h\"\n#include \"./predicate.h\"\n\n#define MAX_INL_DLM_LEN 0b11111111\n\nnamespace tree_sitter_mark"
  },
  {
    "path": "src/tree_sitter_markdown/inline_delimiter.h",
    "chars": 2891,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_INLINE_DELIMITER_H_\n#define TREE_SITTER_MARKDOWN_INLINE_DELIMITER_H_\n\n#include <list>\n#incl"
  },
  {
    "path": "src/tree_sitter_markdown/inline_scan.cc",
    "chars": 77797,
    "preview": "#include \"./inline_scan.h\"\n\n#include \"./block_scan.h\"\n#include \"./inline_scan_util.generated.h\"\n#include \"./predicate.h\""
  },
  {
    "path": "src/tree_sitter_markdown/inline_scan.h",
    "chars": 11478,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_INLINE_SCAN_H_\n#define TREE_SITTER_MARKDOWN_INLINE_SCAN_H_\n\n#include \"./block_context.h\"\n#i"
  },
  {
    "path": "src/tree_sitter_markdown/inline_scan_util.generated.cc",
    "chars": 495733,
    "preview": "#include \"./inline_scan_util.generated.h\"\n\nnamespace tree_sitter_markdown {\n\nvoid adv_inl_ent_ref_nam(Lexer &lxr, LexedL"
  },
  {
    "path": "src/tree_sitter_markdown/inline_scan_util.generated.h",
    "chars": 318,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_INLINE_SCAN_UTIL_GENERATED_H_\n#define TREE_SITTER_MARKDOWN_INLINE_SCAN_UTIL_GENERATED_H_\n\n#"
  },
  {
    "path": "src/tree_sitter_markdown/lexer.cc",
    "chars": 7791,
    "preview": "#include \"./lexer.h\"\n\n#include <cstring>\n#include \"./predicate.h\"\n\nnamespace tree_sitter_markdown {\n\nLexedIndex Lexer::c"
  },
  {
    "path": "src/tree_sitter_markdown/lexer.h",
    "chars": 3023,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_TRACED_LEXER_H_\n#define TREE_SITTER_MARKDOWN_TRACED_LEXER_H_\n\n#include <tree_sitter/parser."
  },
  {
    "path": "src/tree_sitter_markdown/parse_table.cc",
    "chars": 24785,
    "preview": "#include \"./parse_table.h\"\n\n#include <cassert>\n\nnamespace tree_sitter_markdown {\n\nbool is_inl_sym(const Symbol sym) { re"
  },
  {
    "path": "src/tree_sitter_markdown/parse_table.h",
    "chars": 6419,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_PARSE_TABLE_H_\n#define TREE_SITTER_MARKDOWN_PARSE_TABLE_H_\n\nnamespace tree_sitter_markdown "
  },
  {
    "path": "src/tree_sitter_markdown/predicate.cc",
    "chars": 3419,
    "preview": "#include \"./predicate.h\"\n\n#include \"./predicate_util.generated.h\"\n\nnamespace tree_sitter_markdown {\n\nbool is_wsp_chr(con"
  },
  {
    "path": "src/tree_sitter_markdown/predicate.h",
    "chars": 1773,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_PREDICATE_H_\n#define TREE_SITTER_MARKDOWN_PREDICATE_H_\n\n#include \"./shared_type.h\"\n\nnamespa"
  },
  {
    "path": "src/tree_sitter_markdown/predicate_util.generated.cc",
    "chars": 4995,
    "preview": "#include \"./predicate_util.generated.h\"\n\nnamespace tree_sitter_markdown {\n\nbool is_unicode_Zs(LexedCharacter c) { return"
  },
  {
    "path": "src/tree_sitter_markdown/predicate_util.generated.h",
    "chars": 350,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_PREDICATE_UTIL_GENERATED_H_\n#define TREE_SITTER_MARKDOWN_PREDICATE_UTIL_GENERATED_H_\n\n#incl"
  },
  {
    "path": "src/tree_sitter_markdown/shared_type.cc",
    "chars": 1104,
    "preview": "#include \"./shared_type.h\"\n\n#include <cassert>\n\nnamespace tree_sitter_markdown {\n\nLexedIndex LexedPosition::idx() const "
  },
  {
    "path": "src/tree_sitter_markdown/shared_type.h",
    "chars": 1212,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_SHARED_TYPE_H_\n#define TREE_SITTER_MARKDOWN_SHARED_TYPE_H_\n\n#include <stdint.h>\n\nnamespace "
  },
  {
    "path": "src/tree_sitter_markdown/token_type.h",
    "chars": 3522,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_TOKEN_TYPE_H_\n#define TREE_SITTER_MARKDOWN_TOKEN_TYPE_H_\n\nnamespace tree_sitter_markdown {\n"
  },
  {
    "path": "src/tree_sitter_markdown/util.cc",
    "chars": 1812,
    "preview": "#include \"./util.h\"\n\nnamespace tree_sitter_markdown {\n\nbool adv_blk_htm_end(Lexer &lxr) {\n  if (lxr.adv_if('<')) {\n    i"
  },
  {
    "path": "src/tree_sitter_markdown/util.h",
    "chars": 548,
    "preview": "#ifndef TREE_SITTER_MARKDOWN_UTIL_H_\n#define TREE_SITTER_MARKDOWN_UTIL_H_\n\n#include \"./block_context.h\"\n#include \"./lexe"
  }
]

// ... and 2 more files (download for full content)

About this extraction

This page contains the full source code of the ikatyang/tree-sitter-markdown GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 71 files (2.4 MB), approximately 632.1k tokens, and a symbol index with 395 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!