
org.vesalainen.parsers.date.doc-files.SQLDateParser-sqlTime.html Maven / Gradle / Ivy
Grammar
This grammar is LALR(1)
Number of Rules 14
Number of Terminals 6
Number of Lr0 States7
Number of La States0
BNF
Accept ::= sqlTime
sqlTime ::= HH ':' mm ':' ss Z
HH ::= hour23
mm ::= minute
ss ::= second
Z ::= rfc822
Terminals
rfc822String4 = '[\+\-][0-9]{2}[0-9]{2}'
rfc822String2 = 'GMT[\+\-][0-9]{2}[0-9]{2}'
rfc822String1 = 'GMT[\+\-][0-9]{2}:[0-9]{2}'
rfc822String3 = '[\+\-][0-9]{2}:[0-9]{2}'
digit12 = '[0-9]{1,2}'
States
State 1
( )
State 2
( 1 )
Eof Reduce 0
State 3
( 1 )
':' Shift 4
State 4
( 3 )
State 5
( 4 )
':' Shift 6
State 6
( 5 )
State 7
( 6 )
sqlTime->HH ':' mm ':' ss . (1)
sqlTime->HH ':' mm ':' ss . (1)
rfc822String4 Sh/Rd 13
rfc822String3 Sh/Rd 12
rfc822String2 Sh/Rd 11
rfc822String1 Sh/Rd 10
Eof Reduce 1
First Map for Nonterminals
rfc822 ==>> { rfc822String1 rfc822String2 rfc822String3 rfc822String4}
Z ==>> { rfc822String1 rfc822String2 rfc822String3 rfc822String4}
Closure for Nonterminals
minute ==>> {}
rfc822 ==>> {}
second ==>> {}
hour23 ==>> {}
Accept ==>> { HH hour23 sqlTime}
Nullable Nonterminals
minute ==>> false
mm ==>> false
HH ==>> false
rfc822 ==>> false
second ==>> false
sqlTime ==>> false
ss ==>> false
hour23 ==>> false
Z ==>> false
Accept ==>> false