Classes
LlmRenderer
9
▼
Render AST to structured plain text for LLM consumption.
No HTML. Preserves hierarchy via markdown…
LlmRenderer
9
▼
Render AST to structured plain text for LLM consumption.
No HTML. Preserves hierarchy via markdown-like markers. Labels non-text content explicitly.
Methods
render
1
str
▼
Render document to LLM-friendly plain text.
render
1
str
▼
def render(self, node: Document) -> str
Parameters
| Name | Type | Description |
|---|---|---|
node |
— |
Returns
str
Internal Methods 8 ▼
__init__
1
▼
__init__
1
▼
def __init__(self, source: str = '') -> None
Parameters
| Name | Type | Description |
|---|---|---|
source |
— |
Default:''
|
_render_block
2
▼
Render a block node.
_render_block
2
▼
def _render_block(self, block, sb: StringBuilder) -> None
Parameters
| Name | Type | Description |
|---|---|---|
block |
— |
|
sb |
— |
_render_list_item
2
▼
Render list item content.
_render_list_item
2
▼
def _render_list_item(self, item: ListItem, sb: StringBuilder) -> None
Parameters
| Name | Type | Description |
|---|---|---|
item |
— |
|
sb |
— |
_render_table
2
▼
Render table as markdown-style grid.
_render_table
2
▼
def _render_table(self, table: Table, sb: StringBuilder) -> None
Parameters
| Name | Type | Description |
|---|---|---|
table |
— |
|
sb |
— |
_inline_text
1
str
▼
Extract plain text from a node with inline children.
_inline_text
1
str
▼
def _inline_text(self, node) -> str
Parameters
| Name | Type | Description |
|---|---|---|
node |
— |
Returns
str
_render_inlines
2
▼
Render inline nodes.
_render_inlines
2
▼
def _render_inlines(self, inlines: tuple[Inline, ...], sb: StringBuilder) -> None
Parameters
| Name | Type | Description |
|---|---|---|
inlines |
— |
|
sb |
— |
_render_inline
2
▼
Render a single inline node.
_render_inline
2
▼
def _render_inline(self, inline: Inline, sb: StringBuilder) -> None
Parameters
| Name | Type | Description |
|---|---|---|
inline |
— |
|
sb |
— |
_inline_text_single
1
str
▼
Extract plain text from one inline (for table cells).
_inline_text_single
1
str
▼
def _inline_text_single(self, inline: Inline) -> str
Parameters
| Name | Type | Description |
|---|---|---|
inline |
— |
Returns
str
Functions
render_llm
2
str
▼
Render document to LLM-friendly plain text.
render_llm
2
str
▼
def render_llm(doc: Document, *, source: str = '') -> str
Parameters
| Name | Type | Description |
|---|---|---|
doc |
Document |
Document AST to render. |
source |
str |
Original source (for FencedCode zero-copy extraction). Default:''
|
Returns
str