slyce-generate
slyce-generate
slyce.generate
Helpers
ExactEquality
Pointer
Pointer
TargetLanguage
TargetLanguage
slyce.generate.builder
Builders
grammar
Elem
NonOptElem
nt
*
+
ListNTBuilder
lexer
mode
slyce.generate.debugging
Result
Result
resultToHTML
slyce.generate.grammar
ExpandedGrammar
ExpandedGrammar
Identifier
NonTerminal
NamedNt
NamedListNtTail
AnonListNt
AssocNt
AnonOptNt
NonTerminal
ListType
Term
Raw
Terminal
Term
Identifier
NTGroup
BasicNT
LiftNT
ListNT
AssocNT
Optional
Production
Production
RawNT
RawNT
fromGrammar
AnonListNT
AnonListNT
Partial
GrammarInput
GrammarInput
Element
NonOptional
Optional
Element
Identifier
Terminal
NonTerminal
Raw
Identifier
NamedNonTerminal
NonTerminal
AssocNonTerminal
AssocNonTerminal
Type
ListNonTerminal
ListNonTerminal
Type
StandardNonTerminal
`:`
^
NonTerminal
LiftList
ParsingTable
ParsingTable
ParseState
ParseState
Action
Accept
EOFAction
LookAhead
Push
Reduce
Simple
Action
fromExpandedGrammar
slyce.generate.lexer
DFA
DFA
ForDebugging
State
fromNFA
LexerInput
LexerInput
Mode
Mode
Line
NFA
NFA
State
End
NonTrivial
TransitionOnChars
TransitionOnEpsilon
State
fromLexer
Regex
Regex
CharClass
CharClass
Group
Group
Repeat
Sequence
Sequence
Yields
Yields
ToMode
Pop
Push
Same
To
ToMode
Yield
ConstText
Terminal
Text
Yield
slyce.generate.main
ConvertGrammar
ConvertLexer
Main
slyce.generate.output
Extras
Extras
NonTerminal
NonTerminal
IndexedProduction
Production
CaseClass
Production
Productions
Single
Many
Productions
TypeDefinition
Trait
Type
Terminal
With
With
Type
Withs
One
Many
Withs
build
Result
Result
slyce.generate.output.formatters
Formatter
Formatter
slyce.generate.output.formatters.scala3
Scala3Formatter
slyce.generate.parsers
Grammar
NonTerminal
NonTerminal
AnonList
AnonList
_1
_2
_3
AnonList0Head
AnonList0Head
AnonList0Tail
AnonList0Tail
_1
_2
AnonList1Head
AnonList1Head
AnonList1Tail
AnonList1Tail
_1
_2
AnonList2Head
AnonList2Head
AnonList2Tail
AnonList2Tail
_1
_2
AnonList3Head
AnonList3Head
AnonList3Tail
AnonList3Tail
_1
_2
AnonList4Head
AnonList4Head
AnonList4Tail
AnonList4Tail
_1
_2
AssocNT
AssocPair
AssocType
AssocType
Lift
_1
_2
BasicNT
Char
Char
Lift
_1
_2
Element
ElementList
ElementList
_1
_2
Grammar
LiftElementList
LiftElementList
_1
_2
LiftNT
ListNT
ListNT
_1
_2
ListType
ListType
Lift
_1
_2
LookAhead
NT
NTBody
NTBody
Lift
_1
_2
_3
NonOptElement
NonOptElement
Lift
_1
_2
_3
_4
Optional_?
Optional_?
_1
_2
Optional_LookAhead
Optional_LookAhead
_1
_2
Raw
StandardNT
StandardNT
Lift
_1
_2
Terminal
Terminal
"
*
+
;
<
>
@lookAhead:
@start:
\?
^
`(`
`)`
`.`
`:`
chars
escChar
int
mode
nonTerminal
terminal
|
~
Lexer
NonTerminal
NonTerminal
AnonList0Head
AnonList0Head
AnonList0Tail
AnonList0Tail
_1
_2
AnonList1Head
AnonList1Head
AnonList1Tail
AnonList1Tail
_1
_2
AnonList2Head
AnonList2Head
_1
_2
AnonList2Tail
AnonList2Tail
_1
_2
AnonList3Head
AnonList3Head
AnonList3Tail
AnonList3Tail
_1
_2
AnonList4Head
AnonList4Head
AnonList4Tail
AnonList4Tail
_1
_2
CCChar
CCChar
Lift
_1
_2
CCChars
CCChars
_1
_2
_3
Char
Char
Lift
_1
_2
CharClass
CharClass
_1
_2
_3
_4
Group
Group
GroupInner
GroupInner
GroupInnerTail
GroupInnerTail
_1
_2
Lexer
Line
Mode
Optional_^
Optional_^
_1
_2
Quant
Quant
_1
_2
_3
_4
_5
_6
_7
Raw
Raw
Regex
Regex
_1
_2
_3
Sequence
Sequence
_1
_2
SubString
SubString
_1
_2
_3
_4
_5
ToMode
ToMode
_1
_2
_3
_4
Yield
YieldType
YieldType
Lift
_1
_2
_3
Terminal
Terminal
"
*
+
,
-
->
;
>>
@mode:
@start:
[
\?
]
^
`(`
`)`
`<-`
`@`
`{`
`}`
char
chars
escChar
escChars
int
mode
term
|
slyce-generate
/
slyce.generate.parsers
/
Lexer
Lexer
object
Lexer
extends
Parser
Graph
Supertypes
Self type
trait
Parser
class
Object
trait
Matchable
class
Any
Lexer
.type
Type members
Value members
Type members
Classlikes
sealed abstract
class
NonTerminal
(
val
ntName:
String
)
extends
NonTerminal
Companion:
object
object
NonTerminal
Companion:
class
sealed abstract
class
Terminal
(
val
tokName:
String
)
extends
Token
Companion:
object
object
Terminal
Companion:
class
Types
override
type
NTRoot
=
Lexer
Value members
Inherited methods
final
def
parse
(
source:
Source
):
Validated
[
NTRoot
]
Inherited from:
Parser
Concrete fields
override
val
grammar
:
Grammar
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState0
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState1
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState10
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState100
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState101
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState102
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState103
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState104
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState105
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState106
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState107
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState108
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState109
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState11
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState110
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState111
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState112
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState113
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState114
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState115
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState116
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState117
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState118
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState119
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState12
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState120
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState121
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState122
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState123
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState124
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState125
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState126
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState127
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState128
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState129
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState13
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState130
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState131
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState132
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState133
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState134
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState135
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState136
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState137
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState138
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState139
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState14
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState140
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState141
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState142
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState143
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState144
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState145
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState146
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState147
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState148
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState149
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState15
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState150
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState151
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState16
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState17
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState18
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState19
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState2
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState20
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState21
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState22
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState23
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState24
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState25
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState26
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState27
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState28
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState29
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState3
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState30
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState31
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState32
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState33
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState34
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState35
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState36
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState37
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState38
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState39
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState4
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState40
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState41
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState42
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState43
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState44
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState45
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState46
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState47
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState48
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState49
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState5
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState50
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState51
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState52
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState53
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState54
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState55
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState56
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState57
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState58
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState59
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState6
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState60
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState61
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState62
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState63
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState64
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState65
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState66
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState67
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState68
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState69
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState7
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState70
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState71
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState72
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState73
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState74
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState75
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState76
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState77
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState78
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState79
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState8
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState80
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState81
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState82
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState83
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState84
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState85
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState86
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState87
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState88
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState89
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState9
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState90
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState91
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState92
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState93
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState94
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState95
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState96
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState97
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState98
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
lazy
val
grammarState99
:
State
[
Terminal
,
NonTerminal
,
Lexer
]
override
val
lexer
:
Lexer
[
Terminal
]