# parsing

URL: /patitas/api/parsing/
Section: parsing
Description: Parsing subsystem for Patitas Markdown parser.

Provides mixin classes for modular parsing functionality:
- `TokenNavigationMixin`: Token stream traversal
- `InlineParsingMixin`: Inline content (emphasis, links, code spans)
- `BlockParsingMixin`: Block-level content (paragraphs, lists, code blocks)

Architecture:
The parser uses a mixin-based design for separation of concerns,
following the same pattern as Kida's parser. Each mixin handles
one aspect of the Markdown grammar.

Example:
    >>> from patitas.parsing import (
    ...     TokenNavigationMixin,
    ...     InlineParsingMixin,
    ...     BlockParsingMixin,
    ... )
    >>> class Parser(TokenNavigationMixin, InlineParsingMixin, BlockParsingMixin):
    ...     pass

Public API:
TokenNavigationMixin: Token stream navigation and lookahead
InlineParsingMixin: Combined inline parsing (emphasis, links, etc.)
BlockParsingMixin: Combined block parsing (lists, tables, etc.)

---

> For a complete page index, fetch /patitas/llms.txt.

Open LLM text
(/patitas/api/parsing/index.txt)

Share with AI

Ask Claude
(https://claude.ai/new?q=Please%20help%20me%20understand%20this%20documentation%3A%20%2Fpatitas%2Fapi%2Fparsing%2Findex.txt)

Ask ChatGPT
(https://chatgpt.com/?q=Please%20help%20me%20understand%20this%20documentation%3A%20%2Fpatitas%2Fapi%2Fparsing%2Findex.txt)

Ask Gemini
(https://gemini.google.com/app?q=Please%20help%20me%20understand%20this%20documentation%3A%20%2Fpatitas%2Fapi%2Fparsing%2Findex.txt)

Ask Copilot
(https://copilot.microsoft.com/?q=Please%20help%20me%20understand%20this%20documentation%3A%20%2Fpatitas%2Fapi%2Fparsing%2Findex.txt)

Module

#
`parsing`

Parsing subsystem for Patitas Markdown parser.

Provides mixin classes for modular parsing functionality:

- `TokenNavigationMixin`: Token stream traversal

- `InlineParsingMixin`: Inline content (emphasis, links, code spans)

- `BlockParsingMixin`: Block-level content (paragraphs, lists, code blocks)

Architecture:

The parser uses a mixin-based design for separation of concerns,
following the same pattern as Kida's parser. Each mixin handles
one aspect of the Markdown grammar.

Example:

```
>>> from patitas.parsing import (
...     TokenNavigationMixin,
...     InlineParsingMixin,
...     BlockParsingMixin,
... )
>>> class Parser(TokenNavigationMixin, InlineParsingMixin, BlockParsingMixin):
...     pass
```

Public API:

TokenNavigationMixin: Token stream navigation and lookahead
InlineParsingMixin: Combined inline parsing (emphasis, links, etc.)
BlockParsingMixin: Combined block parsing (lists, tables, etc.)
