Documentation ¶
Index ¶
Constants ¶
View Source
const ( NoState = -1 NumStates = 22 NumSymbols = 25 )
Variables ¶
View Source
var ActTab = ActionTable{ ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: -1, Ignore: "!whitespace", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 2, Ignore: "", }, ActionRow{ Accept: 4, Ignore: "", }, ActionRow{ Accept: 5, Ignore: "", }, ActionRow{ Accept: 8, Ignore: "", }, ActionRow{ Accept: 9, Ignore: "", }, ActionRow{ Accept: 10, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 3, Ignore: "", }, ActionRow{ Accept: 11, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 12, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 6, Ignore: "", }, ActionRow{ Accept: 7, Ignore: "", }, }
View Source
var TransTab = TransitionTable{ func(r rune) int { switch { case r == 9: return 1 case r == 10: return 1 case r == 13: return 1 case r == 32: return 1 case r == 34: return 2 case r == 38: return 3 case r == 40: return 4 case r == 41: return 5 case 48 <= r && r <= 57: return 6 case r == 60: return 7 case r == 62: return 8 case r == 102: return 9 case r == 105: return 10 case r == 116: return 11 case r == 124: return 12 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case r == 34: return 13 default: return 2 } }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case 48 <= r && r <= 57: return 6 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case r == 97: return 14 } return NoState }, func(r rune) int { switch { case r == 110: return 15 } return NoState }, func(r rune) int { switch { case r == 114: return 16 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case r == 108: return 17 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case r == 117: return 18 } return NoState }, func(r rune) int { switch { case r == 115: return 19 } return NoState }, func(r rune) int { switch { case r == 101: return 20 } return NoState }, func(r rune) int { switch { case r == 101: return 21 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { } return NoState }, }
Functions ¶
This section is empty.
Types ¶
type ActionTable ¶
type Lexer ¶
func NewLexerFile ¶
type SourceContext ¶
type SourceContext struct {
Filepath string
}
SourceContext is a simple instance of a token.Context which contains the name of the source file.
func (*SourceContext) Source ¶
func (s *SourceContext) Source() string
type TransitionTable ¶
Let s be the current state Let r be the current input rune transitionTable[s](r) returns the next state.
Click to show internal directories.
Click to hide internal directories.