Documentation ¶
Index ¶
Constants ¶
View Source
const ( NoState = -1 NumStates = 14 NumSymbols = 15 )
Variables ¶
View Source
var ActTab = ActionTable{ ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: -1, Ignore: "!_whitespace", }, ActionRow{ Accept: 9, Ignore: "", }, ActionRow{ Accept: 0, Ignore: "", }, ActionRow{ Accept: 3, Ignore: "", }, ActionRow{ Accept: 6, Ignore: "", }, ActionRow{ Accept: 4, Ignore: "", }, ActionRow{ Accept: 5, Ignore: "", }, ActionRow{ Accept: 4, Ignore: "", }, ActionRow{ Accept: 8, Ignore: "", }, ActionRow{ Accept: 7, Ignore: "", }, ActionRow{ Accept: 4, Ignore: "", }, ActionRow{ Accept: 8, Ignore: "", }, ActionRow{ Accept: 2, Ignore: "", }, }
View Source
var TransTab = TransitionTable{ func(r rune) int { switch { case r == 32: return 1 case 48 <= r && r <= 57: return 2 case r == 58: return 3 case r == 59: return 4 case r == 61: return 5 case 65 <= r && r <= 90: return 6 case r == 95: return 7 case 97 <= r && r <= 117: return 6 case r == 118: return 8 case 119 <= r && r <= 122: return 6 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case r == 46: return 9 case 48 <= r && r <= 57: return 2 } return NoState }, func(r rune) int { switch { case r == 61: return 10 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case 65 <= r && r <= 90: return 6 case r == 95: return 6 case 97 <= r && r <= 122: return 6 } return NoState }, func(r rune) int { switch { case 65 <= r && r <= 90: return 6 case r == 95: return 6 case 97 <= r && r <= 122: return 6 } return NoState }, func(r rune) int { switch { case 65 <= r && r <= 90: return 6 case r == 95: return 6 case r == 97: return 11 case 98 <= r && r <= 122: return 6 } return NoState }, func(r rune) int { switch { case 48 <= r && r <= 57: return 12 } return NoState }, func(r rune) int { switch { } return NoState }, func(r rune) int { switch { case 65 <= r && r <= 90: return 6 case r == 95: return 6 case 97 <= r && r <= 113: return 6 case r == 114: return 13 case 115 <= r && r <= 122: return 6 } return NoState }, func(r rune) int { switch { case 48 <= r && r <= 57: return 12 } return NoState }, func(r rune) int { switch { case 65 <= r && r <= 90: return 6 case r == 95: return 6 case 97 <= r && r <= 122: return 6 } 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.