# directive

URL: /patitas/api/parsing/blocks/directive/
Section: blocks
Description: Directive parsing for Patitas parser.

Handles MyST-style directive blocks with contract validation.

---

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

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

Share with AI

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

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

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

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

Module

#
`parsing.blocks.directive`

Directive parsing for Patitas parser.

Handles MyST-style directive blocks with contract validation.

1Class

## Classes

`DirectiveParsingMixin`

1

▼

Mixin for directive parsing with contract validation.

Required Host Attributes:
- _source: str…

Mixin for directive parsing with contract validation.

Required Host Attributes:

- _source: str

- _current: Token | None

- _directive_registry: DirectiveRegistry | None

- _directive_stack: list[str]

- _strict_contracts: bool

Required Host Methods:

- _at_end() -> bool

- _advance() -> Token | None

- _parse_block() -> Block | None

- _line_start_for_offset(offset: int) -> int

#### Methods

Internal Methods
1

▼

`_parse_directive`

0

`Directive (/patitas/api/nodes/#Directive)`

▼

Parse directive block (:::{name} ... :::).

Returns Directive with typed option…

`def _parse_directive(self: ParserHost) -> Directive`

Parse directive block (:::{name} ... :::).

Returns Directive with typed options. If a handler is registered,
uses the handler's options_class and parse() method. Otherwise,
creates Directive directly with default DirectiveOptions.

##### Returns

`Directive (/patitas/api/nodes/#Directive)`
