Documentation ¶
Index ¶
- Constants
- type CheckRune
- type ItemType
- type Lexer
- func (l *Lexer) AcceptRun(c CheckRune)
- func (l *Lexer) AcceptUntil(c CheckRune)
- func (l *Lexer) Backup()
- func (l *Lexer) Emit(t ItemType)
- func (l *Lexer) Errorf(format string, args ...interface{}) StateFn
- func (l *Lexer) Ignore()
- func (l *Lexer) Init(input string)
- func (l *Lexer) Next() (result rune)
- func (l *Lexer) Peek() rune
- type StateFn
Constants ¶
View Source
const EOF = -1
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ItemType ¶
type ItemType int
ItemType is used to set the type of a token. These constants can be defined in the file containing state functions. Note that their value should be >= 5.
type Lexer ¶
type Lexer struct { // NOTE: Using a text scanner wouldn't work because it's designed for parsing // Golang. It won't keep track of start position, or allow us to retrieve // slice from [start:pos]. Better to just use normal string. Input string // string being scanned. Start int // start position of this item. Pos int // current position of this item. Width int // width of last rune read from input. Items chan item // channel of scanned items. Depth int // nesting of {} FilterDepth int // nesting of () inside filter directive. Mode int // mode based on information so far. }
func (*Lexer) AcceptUntil ¶
Click to show internal directories.
Click to hide internal directories.