Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
  • 2 commits
  • 1 file changed
  • 0 commit comments
  • 1 contributor
Commits on Apr 22, 2012
Jeffrey Kegler update tests c534343
Jeffrey Kegler update tests 0cf5a59
Showing with 248 additions and 245 deletions.
  1. +248 −245 r2/t/jirotka.t
View
493 r2/t/jirotka.t
@@ -115,87 +115,90 @@ my $grammar = Marpa::R2::Grammar->new(
$grammar->precompute();
Marpa::R2::Test::is(
- <<'END_OF_SYMBOLS', $grammar->show_symbols(), 'Symbols' );
-0: AS, lhs=[] terminal
-1: BY, lhs=[] terminal
-2: CREATE, lhs=[] terminal
-3: FALSE, lhs=[] terminal
-4: FOR, lhs=[] terminal
-5: METRIC, lhs=[] terminal
-6: PF, lhs=[] terminal
-7: SELECT, lhs=[] terminal
-8: TRUE, lhs=[] terminal
-9: WHERE, lhs=[] terminal
-10: WITH, lhs=[] terminal
-11: ID_METRIC, lhs=[] terminal
-12: SEPARATOR, lhs=[] terminal
-13: NUMBER, lhs=[] terminal
-14: Input, lhs=[0 1 2]
-15: Statement, lhs=[5]
-16: Input[Statement+], lhs=[3 4]
-17: TypeDef, lhs=[6]
-18: MetricSelect, lhs=[7 19 20 21 22]
-19: MetricExpr, lhs=[8]
-20: ByClause, lhs=[9 10]
-21: Match, lhs=[11 12]
-22: Filter, lhs=[13 14]
-23: WithPf, lhs=[17 18]
-24: FilterExpr, lhs=[15 16]
-25: ByClause[], lhs=[] nulling
-26: Match[], lhs=[] nulling
-27: Filter[], lhs=[] nulling
-28: WithPf[], lhs=[] nulling
-29: MetricSelect[R7:3], lhs=[23 24 25]
-30: MetricSelect[R7:4], lhs=[26 27 28]
-31: Input['], lhs=[29]
+ $grammar->show_symbols(),
+ <<'END_OF_SYMBOLS', 'Symbols' );
+0: AS, terminal
+1: BY, terminal
+2: CREATE, terminal
+3: FALSE, terminal
+4: FOR, terminal
+5: METRIC, terminal
+6: PF, terminal
+7: SELECT, terminal
+8: TRUE, terminal
+9: WHERE, terminal
+10: WITH, terminal
+11: ID_METRIC, terminal
+12: SEPARATOR, terminal
+13: NUMBER, terminal
+14: Input
+15: Statement
+16: TypeDef
+17: MetricSelect
+18: MetricExpr
+19: ByClause
+20: Match
+21: Filter
+22: WithPf
+23: FilterExpr
+24: Input[Seq], unproductive inaccessible
+25: ByClause[], nulling
+26: Match[], nulling
+27: Filter[], nulling
+28: WithPf[], nulling
+29: MetricSelect[R3:3]
+30: MetricSelect[R3:4]
+31: Input[']
END_OF_SYMBOLS
-Marpa::R2::Test::is( <<'END_OF_RULES', $grammar->show_rules(), 'Rules' );
+Marpa::R2::Test::is( $grammar->show_rules(),
+<<'END_OF_RULES', 'Rules' );
0: Input -> Statement /* !used discard_sep */
-1: Input -> Input[Statement+] /* vrhs real=0 */
-2: Input -> Input[Statement+] SEPARATOR /* vrhs real=1 */
-3: Input[Statement+] -> Statement /* vlhs real=1 */
-4: Input[Statement+] -> Input[Statement+] SEPARATOR Statement /* vlhs vrhs real=2 */
-5: Statement -> CREATE TypeDef
-6: TypeDef -> METRIC ID_METRIC AS MetricSelect
-7: MetricSelect -> SELECT MetricExpr ByClause Match Filter WithPf /* !used */
-8: MetricExpr -> NUMBER
-9: ByClause -> /* empty !used */
-10: ByClause -> BY
-11: Match -> /* empty !used */
-12: Match -> FOR
-13: Filter -> /* empty !used */
-14: Filter -> WHERE FilterExpr
-15: FilterExpr -> TRUE
-16: FilterExpr -> FALSE
-17: WithPf -> /* empty !used */
-18: WithPf -> WITH PF
-19: MetricSelect -> SELECT MetricExpr ByClause MetricSelect[R7:3] /* vrhs real=3 */
+1: Statement -> CREATE TypeDef
+2: TypeDef -> METRIC ID_METRIC AS MetricSelect
+3: MetricSelect -> SELECT MetricExpr ByClause Match Filter WithPf /* !used */
+4: MetricExpr -> NUMBER
+5: ByClause -> /* empty !used */
+6: ByClause -> BY
+7: Match -> /* empty !used */
+8: Match -> FOR
+9: Filter -> /* empty !used */
+10: Filter -> WHERE FilterExpr
+11: FilterExpr -> TRUE
+12: FilterExpr -> FALSE
+13: WithPf -> /* empty !used */
+14: WithPf -> WITH PF
+15: Input -> Input[Seq] /* unproductive vrhs real=0 */
+16: Input -> Input[Seq] SEPARATOR /* unproductive vrhs real=1 */
+17: Input[Seq] -> Statement /* inaccessible vlhs real=1 */
+18: Input[Seq] -> Input[Seq] SEPARATOR Statement /* unproductive inaccessible vlhs vrhs real=2 */
+19: MetricSelect -> SELECT MetricExpr ByClause MetricSelect[R3:3] /* vrhs real=3 */
20: MetricSelect -> SELECT MetricExpr ByClause Match[] Filter[] WithPf[]
-21: MetricSelect -> SELECT MetricExpr ByClause[] MetricSelect[R7:3] /* vrhs real=3 */
+21: MetricSelect -> SELECT MetricExpr ByClause[] MetricSelect[R3:3] /* vrhs real=3 */
22: MetricSelect -> SELECT MetricExpr ByClause[] Match[] Filter[] WithPf[]
-23: MetricSelect[R7:3] -> Match MetricSelect[R7:4] /* vlhs vrhs real=1 */
-24: MetricSelect[R7:3] -> Match Filter[] WithPf[] /* vlhs real=3 */
-25: MetricSelect[R7:3] -> Match[] MetricSelect[R7:4] /* vlhs vrhs real=1 */
-26: MetricSelect[R7:4] -> Filter WithPf /* vlhs real=2 */
-27: MetricSelect[R7:4] -> Filter WithPf[] /* vlhs real=2 */
-28: MetricSelect[R7:4] -> Filter[] WithPf /* vlhs real=2 */
+23: MetricSelect[R3:3] -> Match MetricSelect[R3:4] /* vlhs vrhs real=1 */
+24: MetricSelect[R3:3] -> Match Filter[] WithPf[] /* vlhs real=3 */
+25: MetricSelect[R3:3] -> Match[] MetricSelect[R3:4] /* vlhs vrhs real=1 */
+26: MetricSelect[R3:4] -> Filter WithPf /* vlhs real=2 */
+27: MetricSelect[R3:4] -> Filter WithPf[] /* vlhs real=2 */
+28: MetricSelect[R3:4] -> Filter[] WithPf /* vlhs real=2 */
29: Input['] -> Input /* vlhs real=1 */
END_OF_RULES
-Marpa::R2::Test::is( <<'END_OF_AHFA', $grammar->show_AHFA(), 'AHFA' );
+Marpa::R2::Test::is( $grammar->show_AHFA(),
+<<'END_OF_AHFA', 'AHFA' );
* S0:
Input['] -> . Input
<Input> => S2; leo(Input['])
* S1: predict
-Input -> . Input[Statement+]
-Input -> . Input[Statement+] SEPARATOR
-Input[Statement+] -> . Statement
-Input[Statement+] -> . Input[Statement+] SEPARATOR Statement
Statement -> . CREATE TypeDef
+Input -> . Input[Seq]
+Input -> . Input[Seq] SEPARATOR
+Input[Seq] -> . Statement
+Input[Seq] -> . Input[Seq] SEPARATOR Statement
<CREATE> => S3; S4
- <Input[Statement+]> => S6
- <Statement> => S5; leo(Input[Statement+])
+ <Input[Seq]> => S6
+ <Statement> => S5; leo(Input[Seq])
* S2: leo-c
Input['] -> Input .
* S3:
@@ -205,11 +208,11 @@ Statement -> CREATE . TypeDef
TypeDef -> . METRIC ID_METRIC AS MetricSelect
<METRIC> => S8
* S5: leo-c
-Input[Statement+] -> Statement .
+Input[Seq] -> Statement .
* S6:
-Input -> Input[Statement+] .
-Input -> Input[Statement+] . SEPARATOR
-Input[Statement+] -> Input[Statement+] . SEPARATOR Statement
+Input -> Input[Seq] .
+Input -> Input[Seq] . SEPARATOR
+Input[Seq] -> Input[Seq] . SEPARATOR Statement
<SEPARATOR> => S10; S9
* S7: leo-c
Statement -> CREATE TypeDef .
@@ -217,9 +220,9 @@ Statement -> CREATE TypeDef .
TypeDef -> METRIC . ID_METRIC AS MetricSelect
<ID_METRIC> => S11
* S9:
-Input -> Input[Statement+] SEPARATOR .
-Input[Statement+] -> Input[Statement+] SEPARATOR . Statement
- <Statement> => S12; leo(Input[Statement+])
+Input -> Input[Seq] SEPARATOR .
+Input[Seq] -> Input[Seq] SEPARATOR . Statement
+ <Statement> => S12; leo(Input[Seq])
* S10: predict
Statement -> . CREATE TypeDef
<CREATE> => S3; S4
@@ -227,78 +230,78 @@ Statement -> . CREATE TypeDef
TypeDef -> METRIC ID_METRIC . AS MetricSelect
<AS> => S13; S14
* S12: leo-c
-Input[Statement+] -> Input[Statement+] SEPARATOR Statement .
+Input[Seq] -> Input[Seq] SEPARATOR Statement .
* S13:
TypeDef -> METRIC ID_METRIC AS . MetricSelect
<MetricSelect> => S15; leo(TypeDef)
* S14: predict
-MetricSelect -> . SELECT MetricExpr ByClause MetricSelect[R7:3]
+MetricSelect -> . SELECT MetricExpr ByClause MetricSelect[R3:3]
MetricSelect -> . SELECT MetricExpr ByClause Match[] Filter[] WithPf[]
-MetricSelect -> . SELECT MetricExpr ByClause[] MetricSelect[R7:3]
+MetricSelect -> . SELECT MetricExpr ByClause[] MetricSelect[R3:3]
MetricSelect -> . SELECT MetricExpr ByClause[] Match[] Filter[] WithPf[]
<SELECT> => S16; S17
* S15: leo-c
TypeDef -> METRIC ID_METRIC AS MetricSelect .
* S16:
-MetricSelect -> SELECT . MetricExpr ByClause MetricSelect[R7:3]
+MetricSelect -> SELECT . MetricExpr ByClause MetricSelect[R3:3]
MetricSelect -> SELECT . MetricExpr ByClause Match[] Filter[] WithPf[]
-MetricSelect -> SELECT . MetricExpr ByClause[] MetricSelect[R7:3]
+MetricSelect -> SELECT . MetricExpr ByClause[] MetricSelect[R3:3]
MetricSelect -> SELECT . MetricExpr ByClause[] Match[] Filter[] WithPf[]
<MetricExpr> => S18; S19
* S17: predict
MetricExpr -> . NUMBER
<NUMBER> => S20
* S18:
-MetricSelect -> SELECT MetricExpr . ByClause MetricSelect[R7:3]
+MetricSelect -> SELECT MetricExpr . ByClause MetricSelect[R3:3]
MetricSelect -> SELECT MetricExpr . ByClause Match[] Filter[] WithPf[]
-MetricSelect -> SELECT MetricExpr ByClause[] . MetricSelect[R7:3]
+MetricSelect -> SELECT MetricExpr ByClause[] . MetricSelect[R3:3]
MetricSelect -> SELECT MetricExpr ByClause[] Match[] Filter[] WithPf[] .
<ByClause> => S21; S22
- <MetricSelect[R7:3]> => S23; leo(MetricSelect)
+ <MetricSelect[R3:3]> => S23; leo(MetricSelect)
* S19: predict
ByClause -> . BY
Match -> . FOR
Filter -> . WHERE FilterExpr
WithPf -> . WITH PF
-MetricSelect[R7:3] -> . Match MetricSelect[R7:4]
-MetricSelect[R7:3] -> . Match Filter[] WithPf[]
-MetricSelect[R7:3] -> Match[] . MetricSelect[R7:4]
-MetricSelect[R7:4] -> . Filter WithPf
-MetricSelect[R7:4] -> . Filter WithPf[]
-MetricSelect[R7:4] -> Filter[] . WithPf
+MetricSelect[R3:3] -> . Match MetricSelect[R3:4]
+MetricSelect[R3:3] -> . Match Filter[] WithPf[]
+MetricSelect[R3:3] -> Match[] . MetricSelect[R3:4]
+MetricSelect[R3:4] -> . Filter WithPf
+MetricSelect[R3:4] -> . Filter WithPf[]
+MetricSelect[R3:4] -> Filter[] . WithPf
<BY> => S24
<FOR> => S25
<Filter> => S31; S32
<Match> => S29; S30
- <MetricSelect[R7:4]> => S34; leo(MetricSelect[R7:3])
+ <MetricSelect[R3:4]> => S34; leo(MetricSelect[R3:3])
<WHERE> => S26; S27
<WITH> => S28
- <WithPf> => S33; leo(MetricSelect[R7:4])
+ <WithPf> => S33; leo(MetricSelect[R3:4])
* S20:
MetricExpr -> NUMBER .
* S21:
-MetricSelect -> SELECT MetricExpr ByClause . MetricSelect[R7:3]
+MetricSelect -> SELECT MetricExpr ByClause . MetricSelect[R3:3]
MetricSelect -> SELECT MetricExpr ByClause Match[] Filter[] WithPf[] .
- <MetricSelect[R7:3]> => S35; leo(MetricSelect)
+ <MetricSelect[R3:3]> => S35; leo(MetricSelect)
* S22: predict
Match -> . FOR
Filter -> . WHERE FilterExpr
WithPf -> . WITH PF
-MetricSelect[R7:3] -> . Match MetricSelect[R7:4]
-MetricSelect[R7:3] -> . Match Filter[] WithPf[]
-MetricSelect[R7:3] -> Match[] . MetricSelect[R7:4]
-MetricSelect[R7:4] -> . Filter WithPf
-MetricSelect[R7:4] -> . Filter WithPf[]
-MetricSelect[R7:4] -> Filter[] . WithPf
+MetricSelect[R3:3] -> . Match MetricSelect[R3:4]
+MetricSelect[R3:3] -> . Match Filter[] WithPf[]
+MetricSelect[R3:3] -> Match[] . MetricSelect[R3:4]
+MetricSelect[R3:4] -> . Filter WithPf
+MetricSelect[R3:4] -> . Filter WithPf[]
+MetricSelect[R3:4] -> Filter[] . WithPf
<FOR> => S25
<Filter> => S31; S32
<Match> => S29; S30
- <MetricSelect[R7:4]> => S34; leo(MetricSelect[R7:3])
+ <MetricSelect[R3:4]> => S34; leo(MetricSelect[R3:3])
<WHERE> => S26; S27
<WITH> => S28
- <WithPf> => S33; leo(MetricSelect[R7:4])
+ <WithPf> => S33; leo(MetricSelect[R3:4])
* S23: leo-c
-MetricSelect -> SELECT MetricExpr ByClause[] MetricSelect[R7:3] .
+MetricSelect -> SELECT MetricExpr ByClause[] MetricSelect[R3:3] .
* S24:
ByClause -> BY .
* S25:
@@ -315,32 +318,32 @@ FilterExpr -> . FALSE
WithPf -> WITH . PF
<PF> => S39
* S29:
-MetricSelect[R7:3] -> Match . MetricSelect[R7:4]
-MetricSelect[R7:3] -> Match Filter[] WithPf[] .
- <MetricSelect[R7:4]> => S40; leo(MetricSelect[R7:3])
+MetricSelect[R3:3] -> Match . MetricSelect[R3:4]
+MetricSelect[R3:3] -> Match Filter[] WithPf[] .
+ <MetricSelect[R3:4]> => S40; leo(MetricSelect[R3:3])
* S30: predict
Filter -> . WHERE FilterExpr
WithPf -> . WITH PF
-MetricSelect[R7:4] -> . Filter WithPf
-MetricSelect[R7:4] -> . Filter WithPf[]
-MetricSelect[R7:4] -> Filter[] . WithPf
+MetricSelect[R3:4] -> . Filter WithPf
+MetricSelect[R3:4] -> . Filter WithPf[]
+MetricSelect[R3:4] -> Filter[] . WithPf
<Filter> => S31; S32
<WHERE> => S26; S27
<WITH> => S28
- <WithPf> => S33; leo(MetricSelect[R7:4])
+ <WithPf> => S33; leo(MetricSelect[R3:4])
* S31:
-MetricSelect[R7:4] -> Filter . WithPf
-MetricSelect[R7:4] -> Filter WithPf[] .
- <WithPf> => S41; leo(MetricSelect[R7:4])
+MetricSelect[R3:4] -> Filter . WithPf
+MetricSelect[R3:4] -> Filter WithPf[] .
+ <WithPf> => S41; leo(MetricSelect[R3:4])
* S32: predict
WithPf -> . WITH PF
<WITH> => S28
* S33: leo-c
-MetricSelect[R7:4] -> Filter[] WithPf .
+MetricSelect[R3:4] -> Filter[] WithPf .
* S34: leo-c
-MetricSelect[R7:3] -> Match[] MetricSelect[R7:4] .
+MetricSelect[R3:3] -> Match[] MetricSelect[R3:4] .
* S35: leo-c
-MetricSelect -> SELECT MetricExpr ByClause MetricSelect[R7:3] .
+MetricSelect -> SELECT MetricExpr ByClause MetricSelect[R3:3] .
* S36: leo-c
Filter -> WHERE FilterExpr .
* S37:
@@ -350,143 +353,143 @@ FilterExpr -> TRUE .
* S39:
WithPf -> WITH PF .
* S40: leo-c
-MetricSelect[R7:3] -> Match MetricSelect[R7:4] .
+MetricSelect[R3:3] -> Match MetricSelect[R3:4] .
* S41: leo-c
-MetricSelect[R7:4] -> Filter WithPf .
+MetricSelect[R3:4] -> Filter WithPf .
END_OF_AHFA
-Marpa::R2::Test::is(
- <<'END_OF_AHFA_ITEMS', $grammar->show_AHFA_items(), 'AHFA Items' );
-AHFA item 0: sort = 21; postdot = "Input[Statement+]"
- Input -> . Input[Statement+]
-AHFA item 1: sort = 43; completion
- Input -> Input[Statement+] .
-AHFA item 2: sort = 22; postdot = "Input[Statement+]"
- Input -> . Input[Statement+] SEPARATOR
-AHFA item 3: sort = 15; postdot = "SEPARATOR"
- Input -> Input[Statement+] . SEPARATOR
-AHFA item 4: sort = 44; completion
- Input -> Input[Statement+] SEPARATOR .
-AHFA item 5: sort = 19; postdot = "Statement"
- Input[Statement+] -> . Statement
-AHFA item 6: sort = 45; completion
- Input[Statement+] -> Statement .
-AHFA item 7: sort = 23; postdot = "Input[Statement+]"
- Input[Statement+] -> . Input[Statement+] SEPARATOR Statement
-AHFA item 8: sort = 16; postdot = "SEPARATOR"
- Input[Statement+] -> Input[Statement+] . SEPARATOR Statement
-AHFA item 9: sort = 20; postdot = "Statement"
- Input[Statement+] -> Input[Statement+] SEPARATOR . Statement
-AHFA item 10: sort = 46; completion
- Input[Statement+] -> Input[Statement+] SEPARATOR Statement .
-AHFA item 11: sort = 2; postdot = "CREATE"
+Marpa::R2::Test::is( $grammar->show_AHFA_items(),
+ <<'END_OF_AHFA_ITEMS', 'AHFA Items' );
+AHFA item 0: sort = 2; postdot = "CREATE"
Statement -> . CREATE TypeDef
-AHFA item 12: sort = 24; postdot = "TypeDef"
+AHFA item 1: sort = 21; postdot = "TypeDef"
Statement -> CREATE . TypeDef
-AHFA item 13: sort = 47; completion
+AHFA item 2: sort = 43; completion
Statement -> CREATE TypeDef .
-AHFA item 14: sort = 5; postdot = "METRIC"
+AHFA item 3: sort = 5; postdot = "METRIC"
TypeDef -> . METRIC ID_METRIC AS MetricSelect
-AHFA item 15: sort = 14; postdot = "ID_METRIC"
+AHFA item 4: sort = 14; postdot = "ID_METRIC"
TypeDef -> METRIC . ID_METRIC AS MetricSelect
-AHFA item 16: sort = 0; postdot = "AS"
+AHFA item 5: sort = 0; postdot = "AS"
TypeDef -> METRIC ID_METRIC . AS MetricSelect
-AHFA item 17: sort = 25; postdot = "MetricSelect"
+AHFA item 6: sort = 22; postdot = "MetricSelect"
TypeDef -> METRIC ID_METRIC AS . MetricSelect
-AHFA item 18: sort = 48; completion
+AHFA item 7: sort = 44; completion
TypeDef -> METRIC ID_METRIC AS MetricSelect .
-AHFA item 19: sort = 17; postdot = "NUMBER"
+AHFA item 8: sort = 17; postdot = "NUMBER"
MetricExpr -> . NUMBER
-AHFA item 20: sort = 49; completion
+AHFA item 9: sort = 45; completion
MetricExpr -> NUMBER .
-AHFA item 21: sort = 1; postdot = "BY"
+AHFA item 10: sort = 1; postdot = "BY"
ByClause -> . BY
-AHFA item 22: sort = 50; completion
+AHFA item 11: sort = 46; completion
ByClause -> BY .
-AHFA item 23: sort = 4; postdot = "FOR"
+AHFA item 12: sort = 4; postdot = "FOR"
Match -> . FOR
-AHFA item 24: sort = 51; completion
+AHFA item 13: sort = 47; completion
Match -> FOR .
-AHFA item 25: sort = 12; postdot = "WHERE"
+AHFA item 14: sort = 12; postdot = "WHERE"
Filter -> . WHERE FilterExpr
-AHFA item 26: sort = 38; postdot = "FilterExpr"
+AHFA item 15: sort = 35; postdot = "FilterExpr"
Filter -> WHERE . FilterExpr
-AHFA item 27: sort = 52; completion
+AHFA item 16: sort = 48; completion
Filter -> WHERE FilterExpr .
-AHFA item 28: sort = 11; postdot = "TRUE"
+AHFA item 17: sort = 11; postdot = "TRUE"
FilterExpr -> . TRUE
-AHFA item 29: sort = 53; completion
+AHFA item 18: sort = 49; completion
FilterExpr -> TRUE .
-AHFA item 30: sort = 3; postdot = "FALSE"
+AHFA item 19: sort = 3; postdot = "FALSE"
FilterExpr -> . FALSE
-AHFA item 31: sort = 54; completion
+AHFA item 20: sort = 50; completion
FilterExpr -> FALSE .
-AHFA item 32: sort = 13; postdot = "WITH"
+AHFA item 21: sort = 13; postdot = "WITH"
WithPf -> . WITH PF
-AHFA item 33: sort = 6; postdot = "PF"
+AHFA item 22: sort = 6; postdot = "PF"
WithPf -> WITH . PF
-AHFA item 34: sort = 55; completion
+AHFA item 23: sort = 51; completion
WithPf -> WITH PF .
+AHFA item 24: sort = 36; postdot = "Input[Seq]"
+ Input -> . Input[Seq]
+AHFA item 25: sort = 52; completion
+ Input -> Input[Seq] .
+AHFA item 26: sort = 37; postdot = "Input[Seq]"
+ Input -> . Input[Seq] SEPARATOR
+AHFA item 27: sort = 15; postdot = "SEPARATOR"
+ Input -> Input[Seq] . SEPARATOR
+AHFA item 28: sort = 53; completion
+ Input -> Input[Seq] SEPARATOR .
+AHFA item 29: sort = 19; postdot = "Statement"
+ Input[Seq] -> . Statement
+AHFA item 30: sort = 54; completion
+ Input[Seq] -> Statement .
+AHFA item 31: sort = 38; postdot = "Input[Seq]"
+ Input[Seq] -> . Input[Seq] SEPARATOR Statement
+AHFA item 32: sort = 16; postdot = "SEPARATOR"
+ Input[Seq] -> Input[Seq] . SEPARATOR Statement
+AHFA item 33: sort = 20; postdot = "Statement"
+ Input[Seq] -> Input[Seq] SEPARATOR . Statement
+AHFA item 34: sort = 55; completion
+ Input[Seq] -> Input[Seq] SEPARATOR Statement .
AHFA item 35: sort = 7; postdot = "SELECT"
- MetricSelect -> . SELECT MetricExpr ByClause MetricSelect[R7:3]
-AHFA item 36: sort = 26; postdot = "MetricExpr"
- MetricSelect -> SELECT . MetricExpr ByClause MetricSelect[R7:3]
-AHFA item 37: sort = 30; postdot = "ByClause"
- MetricSelect -> SELECT MetricExpr . ByClause MetricSelect[R7:3]
-AHFA item 38: sort = 39; postdot = "MetricSelect[R7:3]"
- MetricSelect -> SELECT MetricExpr ByClause . MetricSelect[R7:3]
+ MetricSelect -> . SELECT MetricExpr ByClause MetricSelect[R3:3]
+AHFA item 36: sort = 23; postdot = "MetricExpr"
+ MetricSelect -> SELECT . MetricExpr ByClause MetricSelect[R3:3]
+AHFA item 37: sort = 27; postdot = "ByClause"
+ MetricSelect -> SELECT MetricExpr . ByClause MetricSelect[R3:3]
+AHFA item 38: sort = 39; postdot = "MetricSelect[R3:3]"
+ MetricSelect -> SELECT MetricExpr ByClause . MetricSelect[R3:3]
AHFA item 39: sort = 56; completion
- MetricSelect -> SELECT MetricExpr ByClause MetricSelect[R7:3] .
+ MetricSelect -> SELECT MetricExpr ByClause MetricSelect[R3:3] .
AHFA item 40: sort = 8; postdot = "SELECT"
MetricSelect -> . SELECT MetricExpr ByClause Match[] Filter[] WithPf[]
-AHFA item 41: sort = 27; postdot = "MetricExpr"
+AHFA item 41: sort = 24; postdot = "MetricExpr"
MetricSelect -> SELECT . MetricExpr ByClause Match[] Filter[] WithPf[]
-AHFA item 42: sort = 31; postdot = "ByClause"
+AHFA item 42: sort = 28; postdot = "ByClause"
MetricSelect -> SELECT MetricExpr . ByClause Match[] Filter[] WithPf[]
AHFA item 43: sort = 57; completion
MetricSelect -> SELECT MetricExpr ByClause Match[] Filter[] WithPf[] .
AHFA item 44: sort = 9; postdot = "SELECT"
- MetricSelect -> . SELECT MetricExpr ByClause[] MetricSelect[R7:3]
-AHFA item 45: sort = 28; postdot = "MetricExpr"
- MetricSelect -> SELECT . MetricExpr ByClause[] MetricSelect[R7:3]
-AHFA item 46: sort = 40; postdot = "MetricSelect[R7:3]"
- MetricSelect -> SELECT MetricExpr ByClause[] . MetricSelect[R7:3]
+ MetricSelect -> . SELECT MetricExpr ByClause[] MetricSelect[R3:3]
+AHFA item 45: sort = 25; postdot = "MetricExpr"
+ MetricSelect -> SELECT . MetricExpr ByClause[] MetricSelect[R3:3]
+AHFA item 46: sort = 40; postdot = "MetricSelect[R3:3]"
+ MetricSelect -> SELECT MetricExpr ByClause[] . MetricSelect[R3:3]
AHFA item 47: sort = 58; completion
- MetricSelect -> SELECT MetricExpr ByClause[] MetricSelect[R7:3] .
+ MetricSelect -> SELECT MetricExpr ByClause[] MetricSelect[R3:3] .
AHFA item 48: sort = 10; postdot = "SELECT"
MetricSelect -> . SELECT MetricExpr ByClause[] Match[] Filter[] WithPf[]
-AHFA item 49: sort = 29; postdot = "MetricExpr"
+AHFA item 49: sort = 26; postdot = "MetricExpr"
MetricSelect -> SELECT . MetricExpr ByClause[] Match[] Filter[] WithPf[]
AHFA item 50: sort = 59; completion
MetricSelect -> SELECT MetricExpr ByClause[] Match[] Filter[] WithPf[] .
-AHFA item 51: sort = 32; postdot = "Match"
- MetricSelect[R7:3] -> . Match MetricSelect[R7:4]
-AHFA item 52: sort = 41; postdot = "MetricSelect[R7:4]"
- MetricSelect[R7:3] -> Match . MetricSelect[R7:4]
+AHFA item 51: sort = 29; postdot = "Match"
+ MetricSelect[R3:3] -> . Match MetricSelect[R3:4]
+AHFA item 52: sort = 41; postdot = "MetricSelect[R3:4]"
+ MetricSelect[R3:3] -> Match . MetricSelect[R3:4]
AHFA item 53: sort = 60; completion
- MetricSelect[R7:3] -> Match MetricSelect[R7:4] .
-AHFA item 54: sort = 33; postdot = "Match"
- MetricSelect[R7:3] -> . Match Filter[] WithPf[]
+ MetricSelect[R3:3] -> Match MetricSelect[R3:4] .
+AHFA item 54: sort = 30; postdot = "Match"
+ MetricSelect[R3:3] -> . Match Filter[] WithPf[]
AHFA item 55: sort = 61; completion
- MetricSelect[R7:3] -> Match Filter[] WithPf[] .
-AHFA item 56: sort = 42; postdot = "MetricSelect[R7:4]"
- MetricSelect[R7:3] -> Match[] . MetricSelect[R7:4]
+ MetricSelect[R3:3] -> Match Filter[] WithPf[] .
+AHFA item 56: sort = 42; postdot = "MetricSelect[R3:4]"
+ MetricSelect[R3:3] -> Match[] . MetricSelect[R3:4]
AHFA item 57: sort = 62; completion
- MetricSelect[R7:3] -> Match[] MetricSelect[R7:4] .
-AHFA item 58: sort = 34; postdot = "Filter"
- MetricSelect[R7:4] -> . Filter WithPf
-AHFA item 59: sort = 36; postdot = "WithPf"
- MetricSelect[R7:4] -> Filter . WithPf
+ MetricSelect[R3:3] -> Match[] MetricSelect[R3:4] .
+AHFA item 58: sort = 31; postdot = "Filter"
+ MetricSelect[R3:4] -> . Filter WithPf
+AHFA item 59: sort = 33; postdot = "WithPf"
+ MetricSelect[R3:4] -> Filter . WithPf
AHFA item 60: sort = 63; completion
- MetricSelect[R7:4] -> Filter WithPf .
-AHFA item 61: sort = 35; postdot = "Filter"
- MetricSelect[R7:4] -> . Filter WithPf[]
+ MetricSelect[R3:4] -> Filter WithPf .
+AHFA item 61: sort = 32; postdot = "Filter"
+ MetricSelect[R3:4] -> . Filter WithPf[]
AHFA item 62: sort = 64; completion
- MetricSelect[R7:4] -> Filter WithPf[] .
-AHFA item 63: sort = 37; postdot = "WithPf"
- MetricSelect[R7:4] -> Filter[] . WithPf
+ MetricSelect[R3:4] -> Filter WithPf[] .
+AHFA item 63: sort = 34; postdot = "WithPf"
+ MetricSelect[R3:4] -> Filter[] . WithPf
AHFA item 64: sort = 65; completion
- MetricSelect[R7:4] -> Filter[] WithPf .
+ MetricSelect[R3:4] -> Filter[] WithPf .
AHFA item 65: sort = 18; postdot = "Input"
Input['] -> . Input
AHFA item 66: sort = 66; completion
@@ -497,8 +500,8 @@ my $recog = Marpa::R2::Recognizer->new( { grammar => $grammar } );
for my $token ( @{$tokens} ) { $recog->read( @{$token} ); }
my @result = $recog->value();
-Marpa::R2::Test::is(
- <<'END_OF_EARLEY_SETS', $recog->show_earley_sets(), 'Earley Sets' );
+Marpa::R2::Test::is( $recog->show_earley_sets(),
+ <<'END_OF_EARLEY_SETS', 'Earley Sets' );
Last Completed: 8; Furthest: 8
Earley Set 0
S0@0-0
@@ -506,7 +509,7 @@ S1@0-0
Earley Set 1
S3@0-1 [p=S1@0-0; s=CREATE; t=\'Create']
S4@1-1
-L17@1 ["TypeDef"; S3@0-1]
+L16@1 ["TypeDef"; S3@0-1]
Earley Set 2
S8@1-2 [p=S4@1-1; s=METRIC; t=\'Metric']
Earley Set 3
@@ -514,7 +517,7 @@ S11@1-3 [p=S8@1-2; s=ID_METRIC; t=\'m']
Earley Set 4
S13@1-4 [p=S11@1-3; s=AS; t=\'As']
S14@4-4
-L18@4 ["MetricSelect"; L17@1; S13@1-4]
+L17@4 ["MetricSelect"; L16@1; S13@1-4]
Earley Set 5
S16@4-5 [p=S14@4-4; s=SELECT; t=\'Select']
S17@5-5
@@ -522,77 +525,77 @@ Earley Set 6
S2@0-6 [p=S0@0-0; c=S6@0-6]
S5@0-6 [p=S1@0-0; c=S7@0-6]
S6@0-6 [p=S1@0-0; c=S5@0-6]
-S7@0-6 [l=L18@4; c=S18@4-6]
+S7@0-6 [l=L17@4; c=S18@4-6]
S18@4-6 [p=S16@4-5; c=S20@5-6]
S20@5-6 [p=S17@5-5; s=NUMBER; t=\1]
S19@6-6
-L23@6 ["WithPf"; L30@6; S19@6-6]
-L29@6 ["MetricSelect[R7:3]"; L18@4; S18@4-6]
-L30@6 ["MetricSelect[R7:4]"; L29@6; S19@6-6]
+L22@6 ["WithPf"; L30@6; S19@6-6]
+L29@6 ["MetricSelect[R3:3]"; L17@4; S18@4-6]
+L30@6 ["MetricSelect[R3:4]"; L29@6; S19@6-6]
Earley Set 7
S26@6-7 [p=S19@6-6; s=WHERE; t=\'Where']
S27@7-7
-L24@7 ["FilterExpr"; S26@6-7]
+L23@7 ["FilterExpr"; S26@6-7]
Earley Set 8
S2@0-8 [p=S0@0-0; c=S6@0-8]
S5@0-8 [p=S1@0-0; c=S7@0-8]
S6@0-8 [p=S1@0-0; c=S5@0-8]
S7@0-8 [l=L30@6; c=S31@6-8]
S31@6-8 [p=S19@6-6; c=S36@6-8]
-S36@6-8 [l=L24@7; c=S38@7-8]
+S36@6-8 [l=L23@7; c=S38@7-8]
S38@7-8 [p=S27@7-7; s=TRUE; t=\'True']
S32@8-8
-L23@8 ["WithPf"; L30@6; S31@6-8]
+L22@8 ["WithPf"; L30@6; S31@6-8]
END_OF_EARLEY_SETS
-Marpa::R2::Test::is(
- <<'END_OF_AND_NODES', $recog->show_and_nodes(), 'And Nodes' );
-R5:1@0-1S2@0
-R1:1@0-8C3@0
-R3:1@0-8C5@0
-R5:2@0-8C6@1
-R29:1@0-8C1@0
-R6:1@1-2S5@1
-R6:2@1-3S11@2
-R6:3@1-4S0@3
-R6:4@1-8C21@4
+Marpa::R2::Test::is( $recog->show_and_nodes(),
+ <<'END_OF_AND_NODES', 'And Nodes' );
+R1:1@0-1S2@0
+R1:2@0-8C2@1
+R15:1@0-8C17@0
+R17:1@0-8C1@0
+R29:1@0-8C15@0
+R2:1@1-2S5@1
+R2:2@1-3S11@2
+R2:3@1-4S0@3
+R2:4@1-8C21@4
R21:1@4-5S7@4
-R21:2@4-6C8@5
+R21:2@4-6C4@5
R21:3@4-6S25@6
R21:4@4-8C25@6
-R8:1@5-6S13@5
+R4:1@5-6S13@5
R25:1@6-6S26@6
-R14:1@6-7S9@6
-R14:2@6-8C15@7
+R10:1@6-7S9@6
+R10:2@6-8C11@7
R25:2@6-8C27@6
-R27:1@6-8C14@6
+R27:1@6-8C10@6
R27:2@6-8S28@8
-R15:1@7-8S8@7
+R11:1@7-8S8@7
END_OF_AND_NODES
-Marpa::R2::Test::is(
- <<'END_OF_OR_NODES', $recog->show_or_nodes(), 'Or Nodes' );
-R5:1@0-1
-R1:1@0-8
-R3:1@0-8
-R5:2@0-8
+Marpa::R2::Test::is( $recog->show_or_nodes(),
+ <<'END_OF_OR_NODES', 'Or Nodes' );
+R1:1@0-1
+R1:2@0-8
+R15:1@0-8
+R17:1@0-8
R29:1@0-8
-R6:1@1-2
-R6:2@1-3
-R6:3@1-4
-R6:4@1-8
+R2:1@1-2
+R2:2@1-3
+R2:3@1-4
+R2:4@1-8
R21:1@4-5
R21:2@4-6
R21:3@4-6
R21:4@4-8
-R8:1@5-6
+R4:1@5-6
R25:1@6-6
-R14:1@6-7
-R14:2@6-8
+R10:1@6-7
+R10:2@6-8
R25:2@6-8
R27:1@6-8
R27:2@6-8
-R15:1@7-8
+R11:1@7-8
END_OF_OR_NODES
Marpa::R2::Test::is( Dumper( \@result ), <<'END_OF_STRING', 'Result' );

No commit comments for this range

Something went wrong with that request. Please try again.