Module

parsing.blocks.directive

Directive parsing for Patitas parser.

Handles MyST-style directive blocks with contract validation.

Classes

DirectiveParsingMixin 5
Mixin for directive parsing with contract validation. Required Host Attributes: - _current: To…

Mixin for directive parsing with contract validation.

Required Host Attributes:

  • _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

Attributes

Name Type Description
_current Token | None
_directive_registry object | None
_directive_stack list[str]
_strict_contracts bool

Methods

Internal Methods 1
_parse_directive 0 Directive
Parse directive block (:::{name} ... :::). Returns Directive with typed option…
def _parse_directive(self) -> 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