parser.ch

Declarations

Public Only
md
Publicnamespace
namespace md
MdParser
Publicstruct
struct MdParser { var tokens : *vector<Token> var pos : size_t var arena : *Arena var root : *MdRoot var in_link : bool }
peek_token
function
func peek_token(parser : &MdParser) : Token
Helpers
peek_token_at
function
func peek_token_at(parser : &MdParser, offset : size_t) : Token
get_token
function
func get_token(parser : &MdParser) : Token
increment
function
func increment(parser : &MdParser) : void
isEndMdToken
function
func isEndMdToken(t : int) : bool
Token checks
isHashToken
function
func isHashToken(t : int) : bool
isNewlineToken
function
func isNewlineToken(t : int) : bool
isGreaterThanToken
function
func isGreaterThanToken(t : int) : bool
isDashToken
function
func isDashToken(t : int) : bool
isPlusToken
function
func isPlusToken(t : int) : bool
isStarToken
function
func isStarToken(t : int) : bool
isUnderscoreToken
function
func isUnderscoreToken(t : int) : bool
isBacktickToken
function
func isBacktickToken(t : int) : bool
isEndOfFileToken
function
func isEndOfFileToken(t : int) : bool
isTextToken
function
func isTextToken(t : int) : bool
isColonToken
function
func isColonToken(t : int) : bool
isPipeToken
function
func isPipeToken(t : int) : bool
isNumberToken
function
func isNumberToken(t : int) : bool
isDotToken
function
func isDotToken(t : int) : bool
isFencedCodeStartToken
function
func isFencedCodeStartToken(t : int) : bool
isFencedCodeEndToken
function
func isFencedCodeEndToken(t : int) : bool
isCodeContentToken
function
func isCodeContentToken(t : int) : bool
isTildeToken
function
func isTildeToken(t : int) : bool
isLBracketToken
function
func isLBracketToken(t : int) : bool
isExclamationToken
function
func isExclamationToken(t : int) : bool
isChemicalStartToken
function
func isChemicalStartToken(t : int) : bool
isRBraceToken
function
func isRBraceToken(t : int) : bool
isRBracketToken
function
func isRBracketToken(t : int) : bool
isCaretToken
function
func isCaretToken(t : int) : bool
isEqualToken
function
func isEqualToken(t : int) : bool
isLParenToken
function
func isLParenToken(t : int) : bool
isRParenToken
function
func isRParenToken(t : int) : bool
isBlockEnd
function
func isBlockEnd(t : int) : bool
isLineEnd
function
func isLineEnd(t : int) : bool
isListStart
function
func isListStart(parser : &MdParser) : bool
isOrderedListStart
function
func isOrderedListStart(parser : &MdParser) : bool
isBlockStart
function
func isBlockStart(parser : &MdParser) : bool
trim_view
function
func trim_view(view : string_view) : string_view
skipWhitespace
function
func skipWhitespace(parser : &MdParser) : void
isWhitespaceOnlyText
function
func isWhitespaceOnlyText(txt : string_view) : bool
consumeSingleLeadingSpace
function
func consumeSingleLeadingSpace(parser : &MdParser) : void
tryParseTaskCheckbox
functionExtension
func tryParseTaskCheckbox(md : &MdParser) : *MdNode
parse
Publicfunction
func parse(tokens : *vector<Token>, arena : *Arena) : *MdRoot
parseBlockNode
functionExtension
func parseBlockNode(md : &MdParser) : *MdNode
isHorizontalRule
functionExtension
func isHorizontalRule(md : &MdParser) : bool
parseHorizontalRule
functionExtension
func parseHorizontalRule(md : &MdParser) : *MdNode
parseHeader
functionExtension
func parseHeader(md : &MdParser) : *MdNode
parseFencedCodeBlock
functionExtension
func parseFencedCodeBlock(md : &MdParser) : *MdNode
parseBlockquote
functionExtension
func parseBlockquote(md : &MdParser) : *MdNode
parseList
functionExtension
func parseList(md : &MdParser, ordered : bool, start : int) : *MdNode
parseOrderedList
functionExtension
func parseOrderedList(md : &MdParser) : *MdNode
parseTable
functionExtension
func parseTable(md : &MdParser) : *MdNode
parseTableRow
functionExtension
func parseTableRow(md : &MdParser, is_header : bool) : *MdNode
parseTableAlignmentRow
functionExtension
func parseTableAlignmentRow(md : &MdParser, table : *MdTable) : void
parseParagraph
functionExtension
func parseParagraph(md : &MdParser) : *MdNode
parseInlineNode
functionExtension
func parseInlineNode(md : &MdParser) : *MdNode
parseBoldOrItalic
functionExtension
func parseBoldOrItalic(md : &MdParser, marker : char) : *MdNode
parseStrikethrough
functionExtension
func parseStrikethrough(md : &MdParser) : *MdNode
parseSubscript
functionExtension
func parseSubscript(md : &MdParser) : *MdNode
parseSuperscript
functionExtension
func parseSuperscript(md : &MdParser) : *MdNode
parseMark
functionExtension
func parseMark(md : &MdParser) : *MdNode
parseInsert
functionExtension
func parseInsert(md : &MdParser) : *MdNode
parseFootnote
functionExtension
func parseFootnote(md : &MdParser) : *MdNode
parseFootnoteDef
functionExtension
func parseFootnoteDef(md : &MdParser) : *MdNode
parseAbbreviation
functionExtension
func parseAbbreviation(md : &MdParser) : *MdNode
parseCustomContainer
functionExtension
func parseCustomContainer(md : &MdParser) : *MdNode
parseDefinitionList
functionExtension
func parseDefinitionList(md : &MdParser) : *MdNode
parseUrl
functionExtension
func parseUrl(md : &MdParser) : string_view
parseImage
functionExtension
func parseImage(md : &MdParser) : *MdNode
parseInlineCode
functionExtension
func parseInlineCode(md : &MdParser) : *MdNode
parseReferenceDefinition
functionExtension
func parseReferenceDefinition(md : &MdParser) : *MdNode