class markdown::Scanner
sys::Obj markdown::Scanner
@Js
Scanner is a utility class for parsing lines
- find
- 
Scan until we find the given ch. Return the number of characters skipped, or -1 if we hit the end of the line.
- findMatch
- 
Consume characters until the given function returns true, or the end-of-line is reached. Return the number of characters skipped, or -1 if we reach the end. 
- hasNext
- 
Bool hasNext()Are there more characters to consume 
- make
- 
new make(SourceLine[] lines, Int lineIndex := 0, Int index := 0)
- makeLine
- 
new makeLine(SourceLine line)
- makeSourceLines
- 
new makeSourceLines(SourceLines sourceLines)
- match
- 
Consume characters while the given function returns trueand return the number of characters consumed.
- matchMultiple
- 
Consume as many chin a row as possible and return the number consumed.
- next
- 
Void next()Advance the scanner to the next character 
- nextCh
- 
Check if the specified char is next and advance the position. ch: the char to check (including newline chars)Return true if matched and position was advanced; false otherwise 
- nextStr
- 
Check if we have the specified content on the line and advance the position. Note that if you want to match newline characters, use nextCh.content: the text content to match on a single line (excluding newline)Return true if matched and position was advanced; false otherwise 
- peek
- 
Int peek()Peek at the next character without consuming it 
- peekCodePoint
- 
Int peekCodePoint()Peek at the next code point 
- peekPrevCodePoint
- 
Int peekPrevCodePoint()Peek at the previous codepoint 
- pos
- 
Position pos()Get the current position (current line, index into that line) 
- setPos
- 
Set the current position for the scanner 
- source
- 
SourceLines source(Position begin, Position end)For cases where the caller appends the result to a StrBuf, we could offer another method to avoid some unnecessary copying. 
- whitespace
- 
Int whitespace()Consume whitespace and return the number of whitespace characters consumed Whitespace is defined as space, \t, \n, \u000B, \f, and \r