4.45. kink/doc/model/BLOCK¶
Provides blocks in sections of docs.
A block is either a paragraph block or a preformatted code block.
4.45.1. type block¶
A block is a text block in a section of a doc page.
4.45.1.1. Block.text¶
Block.text returns the text of the block.
4.45.1.2. Block.type¶
`type` returns the type of `Block`.
The result is "paragraph", "code", or "heading".
4.45.1.3. Block.to_json_val¶
Block.to_json_val converts the block to a JSON val.
Example:
:BLOCK.require_from('kink/doc/model/')
:Para <- BLOCK.new_paragraph('hey!')
stdout.print_line(Para.to_json_val.repr)
# => Flat_map("text" "hey!"; "type" "paragraph")
:Code <- BLOCK.new_code("1 + 2\n")
stdout.print_line(Code.to_json_val.repr)
# => Flat_map("text" "1 + 2\n"; "type" "code")
4.45.1.4. Block.op_eq(Another_block)¶
Two blocks are equal when they are of the same variant (paragraph or code), and have the same text.
4.45.2. BLOCK.new_paragraph(Text)¶
`new_paragraph` makes a block whose type is "paragraph".
Precondition:
• Text must be a str matching the pattern “[^\u0000-\u0020\u007f]([^\u0000-\u001f\u007f]*[^\u0000-\u0020\u007f])?”
4.45.3. BLOCK.new_code(Text)¶
`new_code` makes a block whose type is "code".
Precondition:
• `Text` must be a str matching the pattern “([^\u0000-\u001f\u007f]*\n)+”
4.45.4. BLOCK.new_heading(Text)¶
`new_heading` makes a block whose type is "heading".
Precondition:
• Text must be a str matching the pattern “[^\u0000-\u0020\u007f]([^\u0000-\u001f\u007f]*[^\u0000-\u0020\u007f])?”
4.45.5. BLOCK.is?(Val)¶
BLOCK.is? returns whether Val is a block.