// =========================================================================== // This file has been generated by // Rats! Parser Generator, Version 1.7.1, (C) 2004-2005 Robert Grimm // on Monday, August 21, 2006 at 3:15:37 PM. // Edit at your own risk. // =========================================================================== package xtc.lang; import java.io.Reader; import java.io.IOException; import xtc.util.Pair; import xtc.parser.PackratParser; import xtc.parser.Column; import xtc.parser.Result; import xtc.parser.SemanticValue; import xtc.parser.ParseError; import java.io.Reader; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.io.StringReader; import java.io.InputStreamReader; import xtc.util.Pair; import xtc.tree.GNode; import xtc.tree.Printer; import xtc.util.Utilities; import xtc.tree.Attribute; import xtc.tree.Printer; import gnu.getopt.Getopt; // Numerical data loading. import java.util.HashMap; import java.io.StreamTokenizer; import java.util.Vector; // These are from VFormat.java import java.util.ArrayList; import java.util.regex.Pattern; import java.util.regex.Matcher; /** * Packrat parser for grammar xtc.lang.lojban. * *

This class has been generated by the Rats! parser * generator, version 1.7.1, (C) 2004-2005 Robert Grimm. */ public final class lojban extends PackratParser { // ========================================================================= /** Chunk 1 of memoized results. */ static final class Chunk1 { Result ftext; Result ftext$$Star1; Result ftext1; Result f$$Shared5; Result f$$Shared6; Result ftext1$$Plus1; Result f$$Shared7; Result ftext1$$Star3; Result fparagraphs; Result fparagraphs$$Plus1; } /** Chunk 2 of memoized results. */ static final class Chunk2 { Result fparagraphs$$Star2; Result fstatement; Result fstatement2; Result f$$Shared9; Result f$$Shared10; Result fstatement3; Result f$$Shared11; Result f$$Shared12; Result f$$Shared13; Result fprenex; } /** Chunk 3 of memoized results. */ static final class Chunk3 { Result f$$Shared14; Result fsentence; Result fsentence$$Star1; Result fsentence$$Star3; Result fsentenceSa$$Star1; Result fsentenceStart; Result fsubsentence; Result fbridiTail; Result fbridiTailSa; Result fbridiTailSa$$Star1; } /** Chunk 4 of memoized results. */ static final class Chunk4 { Result fbridiTailStart; Result fbridiTail2; Result fgekSentence; Result f$$Shared15; Result ftailTerms; Result fterms; Result fterms$$Plus1; Result fterms1; Result fterms1$$Star1; Result fterms1$$Star3; } /** Chunk 5 of memoized results. */ static final class Chunk5 { Result fterms2; Result fterms2$$Star1; Result fterms2$$Star3; Result fterm; Result fterm$$Star1; Result fterm1; Result ftermStart; Result ftermsGikTerms; Result fsumti; Result fsumti3; } /** Chunk 6 of memoized results. */ static final class Chunk6 { Result fsumti4; Result fsumti6; Result f$$Shared16; Result f$$Shared17; Result f$$Shared18; Result f$$Shared19; Result f$$Shared20; Result f$$Shared21; Result fsumti6$$Plus1; Result fsumti6$$Star11; } /** Chunk 7 of memoized results. */ static final class Chunk7 { Result f$$Shared22; Result f$$Shared23; Result fsumtiTail1; Result frelativeClauses; Result frelativeClauses$$Star2; Result frelativeClause; Result frelativeClause$$Star1; Result frelativeClause1; Result f$$Shared24; Result frelativeClauseStart; } /** Chunk 8 of memoized results. */ static final class Chunk8 { Result fselbri; Result fselbri2; Result fselbri3; Result fselbri3$$Plus1; Result fselbri4; Result fselbri4$$Star3; Result fselbri5; Result fselbri6; Result ftanruUnit1; Result ftanruUnit2; } /** Chunk 9 of memoized results. */ static final class Chunk9 { Result f$$Shared25; Result ftanruUnit2$$Star7; Result f$$Shared26; Result ftanruUnit2$$Star11; Result ftanruUnit2$$Star12; Result ftanruUnit2$$Star15; Result ftanruUnit2$$Star16; Result flinkargs; Result flinkargs$$Star1; Result flinkargs1; } /** Chunk 10 of memoized results. */ static final class Chunk10 { Result flinkargsStart; Result flinks; Result flinks$$Star1; Result flinks1; Result flinksStart; Result fquantifier; Result fmex; Result fmex$$Star1; Result fmex0; Result fmex0$$Star1; } /** Chunk 11 of memoized results. */ static final class Chunk11 { Result fmexStart; Result fmex1; Result fmex2; Result frpExpression; Result frpExpressionTail; Result foperator; Result foperator$$Star1; Result foperator0; Result foperator0$$Star3; Result foperatorStart; } /** Chunk 12 of memoized results. */ static final class Chunk12 { Result foperator1; Result foperator2; Result fmexOperator; Result foperand; Result foperand$$Star1; Result foperand0; Result foperandStart; Result foperand2; Result foperand3; Result foperand3$$Star5; } /** Chunk 13 of memoized results. */ static final class Chunk13 { Result foperand3$$Plus1; Result foperand3$$Star7; Result foperand3$$Star8; Result foperand3$$Star9; Result foperand3$$Star10; Result fnumber; Result f$$Shared37; Result flerfuString; Result flerfuWord; Result fek; } /** Chunk 14 of memoized results. */ static final class Chunk14 { Result fgihek; Result fgihek$$Star1; Result fgihek1; Result fjek; Result fjoik; Result finterval; Result fjoikEk; Result fjoikEk$$Star1; Result fjoikEk1; Result fjoikJek; } /** Chunk 15 of memoized results. */ static final class Chunk15 { Result fgek; Result fguhek; Result fgik; Result ftag; Result f$$Shared28; Result ftag$$Star1; Result fstag; Result fstag$$Star1; Result fstag$$Star2; Result ftenseModal; } /** Chunk 16 of memoized results. */ static final class Chunk16 { Result fsimpleTenseModal; Result f$$Shared29; Result ftime; Result ftime$$Star1; Result f$$Shared30; Result f$$Shared38; Result ftime$$Star2; Result ftime$$Plus1; Result ftime$$Star3; Result ftime$$Star4; } /** Chunk 17 of memoized results. */ static final class Chunk17 { Result ftime$$Star5; Result ftime$$Star6; Result ftime$$Plus2; Result ftimeOffset; Result fspace; Result fspace$$Star1; Result f$$Shared31; Result fspace$$Plus1; Result fspace$$Star2; Result fspace$$Star3; } /** Chunk 18 of memoized results. */ static final class Chunk18 { Result fspaceOffset; Result fspaceInterval; Result f$$Shared32; Result f$$Shared33; Result fspaceIntProps; Result fspaceIntProps$$Choice1; Result fspaceIntProps$$Plus1; Result fintervalProperty; Result ffree; Result ffree$$Plus1; } /** Chunk 19 of memoized results. */ static final class Chunk19 { Result fvocative; Result f$$Shared34; Result fvocative$$Plus1; Result fvocative$$Star1; Result findicators; Result findicators$$Plus1; Result findicator; Result fzeiClauseNoPre; Result fzeiClauseNoPre$$Star1; Result fbuClauseNoPre; } /** Chunk 20 of memoized results. */ static final class Chunk20 { Result fbuClauseNoPre$$Star1; Result fzeiTail; Result fzeiTail$$Choice1; Result fzeiTail$$Plus1; Result fbuTail; Result fbuTail$$Plus1; Result fpreZeiBu; Result fpostClause; Result fpostClause$$Star1; Result fpreClause; } /** Chunk 21 of memoized results. */ static final class Chunk21 { Result fanyWordSAHandling; Result fsuClause; Result fsuClause$$Star1; Result fsiClause; Result fsiClause$$Choice1; Result fsiClause$$Plus1; Result ferasableClause; Result f$$Shared1; Result fBRIVLAPre; Result f$$Shared2; } /** Chunk 22 of memoized results. */ static final class Chunk22 { Result fCMENEClause; Result fCMENEPre; Result fAPre; Result fBAIPre; Result fBAhEPre; Result fBEClause; Result fBEPre; Result fBEIClause; Result fBEIPre; Result fBEhOPre; } /** Chunk 23 of memoized results. */ static final class Chunk23 { Result fBIhEPre; Result fBIhIPre; Result fBOClause; Result fBOPre; Result fBOIClause; Result fBOIPre; Result fBUClause; Result fBUPre; Result f$$Shared3; Result fBYPre; } /** Chunk 24 of memoized results. */ static final class Chunk24 { Result fCAhAClause; Result fCAhAPre; Result fCAIPre; Result fCEIPre; Result fCEhEClause; Result fCEhEPre; Result fCOPre; Result fCOIPre; Result fCUClause; Result fCUPre; } /** Chunk 25 of memoized results. */ static final class Chunk25 { Result fCUhEPre; Result fDAhOPre; Result fDOIClause; Result fDOIPre; Result fDOhUClause; Result fDOhUPre; Result fFAClause; Result fFAPre; Result fFAhAClause; Result fFAhAPre; } /** Chunk 26 of memoized results. */ static final class Chunk26 { Result fFAhOClause; Result fFEhEPre; Result fFEhUPre; Result fFIhOPre; Result fFOIPre; Result fFUhAClause; Result fFUhAPre; Result fFUhEPre; Result fFUhOPre; Result fGAPre; } /** Chunk 27 of memoized results. */ static final class Chunk27 { Result fGAhOClause; Result fGAhOPre; Result fGEhUPre; Result fGIClause; Result fGIPre; Result fGIhAPre; Result fGOIClause; Result fGOIPre; Result fGOhAPre; Result fGUhAPre; } /** Chunk 28 of memoized results. */ static final class Chunk28 { Result fIClause; Result f$$Shared35; Result fIPre; Result fJAClause; Result fJAPre; Result fJAIPre; Result fJOhIClause; Result fJOhIPre; Result fJOIPre; Result fKEClause; } /** Chunk 29 of memoized results. */ static final class Chunk29 { Result fKEPre; Result fKEhEClause; Result fKEhEPre; Result fKEIPre; Result fKIClause; Result fKIPre; Result fKOhAPre; Result fKUClause; Result fKUPre; Result fKUhEPre; } /** Chunk 30 of memoized results. */ static final class Chunk30 { Result fKUhOPre; Result fLAClause; Result fLAPre; Result fLAUPre; Result fLAhEClause; Result fLAhEPre; Result fLEClause; Result fLEPre; Result fLEhUPre; Result fLIClause; } /** Chunk 31 of memoized results. */ static final class Chunk31 { Result fLIPre; Result fLIhUPre; Result fLOhOPre; Result fLOhUPre; Result fLOhUPre$$Star1; Result fLUClause; Result fLUPre; Result fLUhUClause; Result fLUhUPre; Result fMAhOClause; } /** Chunk 32 of memoized results. */ static final class Chunk32 { Result fMAhOPre; Result fMAIPre; Result fMEClause; Result fMEPre; Result fMEhUPre; Result fMOhEClause; Result fMOhEPre; Result fMOhIClause; Result fMOhIPre; Result fMOIClause; } /** Chunk 33 of memoized results. */ static final class Chunk33 { Result fMOIPre; Result fNAClause; Result fNAPre; Result fNAIClause; Result fNAIPre; Result fNAhEClause; Result fNAhEPre; Result fNAhUPre; Result fNIhEClause; Result fNIhEPre; } /** Chunk 34 of memoized results. */ static final class Chunk34 { Result fNIhOClause; Result fNIhOPre; Result f$$Shared4; Result f$$Shared4$$Star1; Result fNOIClause; Result fNOIPre; Result fNUClause; Result fNUPre; Result fNUhAClause; Result fNUhAPre; } /** Chunk 35 of memoized results. */ static final class Chunk35 { Result fNUhIClause; Result fNUhIPre; Result fNUhUClause; Result fNUhUPre; Result fPAClause; Result fPAPre; Result fPEhEClause; Result fPEhEPre; Result fPEhOClause; Result fPEhOPre; } /** Chunk 36 of memoized results. */ static final class Chunk36 { Result fPUClause; Result fPUPre; Result fRAhOPre; Result fROIPre; Result fSAClause; Result fSAPre; Result fSEClause; Result fSEPre; Result fSEIPre; Result fSEhUClause; } /** Chunk 37 of memoized results. */ static final class Chunk37 { Result fSEhUPre; Result fSIClause; Result fSOIPre; Result fSUClause; Result fSUPre; Result fTAhEPre; Result fTEhUClause; Result fTEhUPre; Result fTEIPre; Result fTOClause; } /** Chunk 38 of memoized results. */ static final class Chunk38 { Result fTOPre; Result fTOIPre; Result fTUhEClause; Result fTUhEPre; Result fTUhUPre; Result fUIPre; Result fVAClause; Result fVAPre; Result fVAUClause; Result fVAUPre; } /** Chunk 39 of memoized results. */ static final class Chunk39 { Result fVEIClause; Result fVEIPre; Result fVEhOClause; Result fVEhOPre; Result fVUhUClause; Result fVUhUPre; Result fVEhAClause; Result fVEhAPre; Result fVIhAClause; Result fVIhAPre; } /** Chunk 40 of memoized results. */ static final class Chunk40 { Result fVUhOPre; Result fXIClause; Result fXIPre; Result fZAhOPre; Result fZEhAClause; Result fZEhAPre; Result fZEIClause; Result fZEIPre; Result fZIClause; Result fZIPre; } /** Chunk 41 of memoized results. */ static final class Chunk41 { Result fZIhEPre; Result fZOPre; Result fZOIPre; Result fZOIPre$$Star1; Result fZOhUPre; Result fanyWord; Result fspaces; Result fspaces$$Star1; Result fanyWordPre; Result flojbanWordMorph; } /** Chunk 42 of memoized results. */ static final class Chunk42 { Result fcmeneMorph; Result fcmeneMorph$$Star1; Result fcmavoMorph; Result fbrivlaMorph; Result fbrivlaMorph$$Star1; Result fbrivlaCoreMorph; Result finitialRafsiMorph; Result fanyExtendedRafsiMorph; Result ffuhivlaMorph; Result ffuhivlaMorph$$Star1; } /** Chunk 43 of memoized results. */ static final class Chunk43 { Result fstressedExtendedRafsiMorph; Result fextendedRafsiMorph; Result ffuhivlaHeadMorph; Result fbrivlaHeadMorph; Result fbrivlaHeadMorph$$Star1; Result frafsiStringMorph; Result frafsiStringMorph$$Star1; Result fgismuMorph; Result fCVVFinalRafsiMorph; Result fshortFinalRafsiMorph; } /** Chunk 44 of memoized results. */ static final class Chunk44 { Result fstressedYRafsiMorph; Result fstressedYLessRafsiMorph; Result fstressedLongRafsiMorph; Result fstressedCVCRafsiMorph; Result fstressedCCVRafsiMorph; Result fyRafsiMorph; Result fyLessRafsiMorph; Result fCVCRafsiMorph; Result fCCVRafsiMorph; Result frHyphenMorph; } /** Chunk 45 of memoized results. */ static final class Chunk45 { Result ffinalSyllableMorph; Result fstressedSyllableMorph; Result fstressedVowelMorph; Result funstressedSyllableMorph; Result funstressedVowelMorph; Result fstressMorph; Result fstressMorph$$Star1; Result fstressedMorph; Result f$$Shared36; Result fanySyllableMorph; } /** Chunk 46 of memoized results. */ static final class Chunk46 { Result fsyllableMorph; Result fconsonantalSyllableMorph; Result fcodaMorph; Result fonsetMorph; Result fnucleusMorph; Result fglideMorph; Result fdiphthongMorph; Result fvowelMorph; Result faMorph; Result feMorph; } /** Chunk 47 of memoized results. */ static final class Chunk47 { Result fiMorph; Result foMorph; Result fuMorph; Result fyMorph; Result fclusterMorph; Result fclusterMorph$$Plus1; Result finitialPairMorph; Result finitialMorph; Result faffricateMorph; Result fliquidMorph; } /** Chunk 48 of memoized results. */ static final class Chunk48 { Result fconsonantMorph; Result fsyllabicMorph; Result fvoicedMorph; Result funvoicedMorph; Result flMorph; Result fmMorph; Result fnMorph; Result frMorph; Result fbMorph; Result fdMorph; } /** Chunk 49 of memoized results. */ static final class Chunk49 { Result fgMorph; Result fvMorph; Result fjMorph; Result fzMorph; Result fsMorph; Result fcMorph; Result fxMorph; Result fkMorph; Result ffMorph; Result fpMorph; } /** Chunk 50 of memoized results. */ static final class Chunk50 { Result ftMorph; Result fhMorph; Result fdigitMorph; Result fpostWordMorph; Result fpauseMorph; Result fEOFMorph; Result fspacesMorph; Result finitialSpacesMorph; Result finitialSpacesMorph$$Choice1; Result finitialSpacesMorph$$Plus1; } /** Chunk 51 of memoized results. */ static final class Chunk51 { Result fybuMorph; Result fybuMorph$$Star1; Result fBUMorph; Result fYMorph; Result fYMorph$$Plus1; } // ========================================================================= /** Memoization table column. */ static final class lojbanColumn extends Column { Chunk1 chunk1; Chunk2 chunk2; Chunk3 chunk3; Chunk4 chunk4; Chunk5 chunk5; Chunk6 chunk6; Chunk7 chunk7; Chunk8 chunk8; Chunk9 chunk9; Chunk10 chunk10; Chunk11 chunk11; Chunk12 chunk12; Chunk13 chunk13; Chunk14 chunk14; Chunk15 chunk15; Chunk16 chunk16; Chunk17 chunk17; Chunk18 chunk18; Chunk19 chunk19; Chunk20 chunk20; Chunk21 chunk21; Chunk22 chunk22; Chunk23 chunk23; Chunk24 chunk24; Chunk25 chunk25; Chunk26 chunk26; Chunk27 chunk27; Chunk28 chunk28; Chunk29 chunk29; Chunk30 chunk30; Chunk31 chunk31; Chunk32 chunk32; Chunk33 chunk33; Chunk34 chunk34; Chunk35 chunk35; Chunk36 chunk36; Chunk37 chunk37; Chunk38 chunk38; Chunk39 chunk39; Chunk40 chunk40; Chunk41 chunk41; Chunk42 chunk42; Chunk43 chunk43; Chunk44 chunk44; Chunk45 chunk45; Chunk46 chunk46; Chunk47 chunk47; Chunk48 chunk48; Chunk49 chunk49; Chunk50 chunk50; Chunk51 chunk51; } // ========================================================================= /** * Create a new packrat parser. * * @param reader The reader. * @param file The file name. */ public lojban(final Reader reader, final String file) { super(reader, file); } /** * Create a new packrat parser. * * @param reader The file reader. * @param file The file name. * @param size The file size. */ public lojban(final Reader reader, final String file, final int size) { super(reader, file, size); } // ========================================================================= protected Column newColumn() { return new lojbanColumn(); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.text. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ public Result ptext(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.ftext) yyColumn.chunk1.ftext = ptext$1(yyStart); return yyColumn.chunk1.ftext; } /** Actually parse xtc.lang.lojban.text. */ private Result ptext$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pintroNull(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String introNullSEP1 = (String)yyResult.semanticValue(); yyResult = ptext$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair NAIClauseSEP2 = (Pair)yyResult.semanticValue(); yyResult = ptextPart2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String textPart2SEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = ptext$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$3 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } Object PARSERparen4 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = ptext1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } Object text1SEP5 = yyOpValue1; yyResult = pfahoClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String fahoClauseSEP6 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pEOF(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$5; } Object EOFSEP7 = yyOpValue1; yyValue = makeString( "introNull", introNullSEP1, "public", false ) + makeString( "NAIClause", NAIClauseSEP2, "public", false ) + makeString( "textPart2", textPart2SEP3, "public", false ) + makeString( "PARSERparen4", PARSERparen4, "parserParen", false ) + makeString( "text1", text1SEP5, "public", false ) + makeString( "fahoClause", fahoClauseSEP6, "public", false ) + makeString( "EOF", EOFSEP7, "public", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.text$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ public Result ptext$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.ftext$$Star1) yyColumn.chunk1.ftext$$Star1 = ptext$$Star1$1(yyStart); return yyColumn.chunk1.ftext$$Star1; } /** Actually parse xtc.lang.lojban.text$$Star1. */ private Result ptext$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pNAIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = ptext$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.text$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ public Result ptext$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = ptext1(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = pjoikJek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikJekSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "joikJek", joikJekSEP1, "public", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("text expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.introNull. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pintroNull(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pspaces(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String spacesSEP1 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = psuClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$2, yyRepValue1); continue; } break; } Pair suClauseSEP2 = yyRepValue1.reverse(); yyResult = pintroSiClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String introSiClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "spaces", spacesSEP1, "normal", false ) + makeString( "suClause", suClauseSEP2, "normal", false ) + makeString( "introSiClause", introSiClauseSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.textPart2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptextPart2(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptextPart2$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$3, yyRepValue1); continue; } break; } Pair freeSEP2 = yyRepValue1.reverse(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "free", freeSEP2, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.textPart2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptextPart2$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; boolean yyRepeated1; Pair yyRepValue1; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyRepetition1 = yyStart; yyRepeated1 = false; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pCMENEClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepeated1 = true; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } if (yyRepeated1) { Pair CMENEClauseSEP1 = yyRepValue1.reverse(); yyValue = makeString( "CMENEClause", CMENEClauseSEP1, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Alternative 2. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pindicators(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String indicatorsSEP2 = yyOpValue1; yyValue = makeString( "indicators", indicatorsSEP2, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.introSiClause. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pintroSiClause(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = psiClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String siClauseSEP1 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pSIClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$2, yyRepValue1); continue; } break; } Pair SIClauseSEP2 = yyRepValue1.reverse(); yyValue = makeString( "siClause", siClauseSEP1, "whitespace", false ) + makeString( "SIClause", SIClauseSEP2, "whitespace", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.fahoClause. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pfahoClause(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pfahoClause$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } Object PARSERparen1 = yyOpValue1; yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.fahoClause$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pfahoClause$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pFAhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String FAhOClauseSEP1 = (String)yyResult.semanticValue(); yyResult = pdotStar(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String dotStarSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "FAhOClause", FAhOClauseSEP1, "whitespace", false ) + makeString( "dotStar", dotStarSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.text1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptext1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.ftext1) yyColumn.chunk1.ftext1 = ptext1$1(yyStart); return yyColumn.chunk1.ftext1; } /** Actually parse xtc.lang.lojban.text1. */ private Result ptext1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String IClauseSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = p$$Shared5(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } Object PARSERparen2 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = ptext1$$Choice2(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$3 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } Object PARSERparen3 = yyOpValue1; yyResult = p$$Shared6(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = ptext1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$6 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$6; } Object text1SEP5 = yyOpValue1; yyValue = makeString( "IClause", IClauseSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "PARSERparen3", PARSERparen3, "parserParen", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "text1", text1SEP5, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } } // Alternative 2. yyResult = ptext1$$Plus1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair NIhOClauseSEP6 = (Pair)yyResult.semanticValue(); yyResult = p$$Shared7(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyResult = ptext1$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair suClauseSEP8 = (Pair)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pparagraphs(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$14 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$14; } Object paragraphsSEP9 = yyOpValue1; yyValue = makeString( "NIhOClause", NIhOClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) + makeString( "suClause", suClauseSEP8, "normal", false ) + makeString( "paragraphs", paragraphsSEP9, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } } } // Alternative 3. yyResult = pparagraphs(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String paragraphsSEP10 = (String)yyResult.semanticValue(); yyValue = makeString( "paragraphs", paragraphsSEP10, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared5. * This nonterminal represents the duplicate productions * xtc.lang.lojban.text1$$Choice1, xtc.lang.lojban.statement2$$Choice2, * xtc.lang.lojban.statement2$$Choice4, xtc.lang.lojban.selbri5$$Choice2, * xtc.lang.lojban.operator1$$Choice1, and xtc.lang.lojban.stag$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared5(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.f$$Shared5) yyColumn.chunk1.f$$Shared5 = p$$Shared5$1(yyStart); return yyColumn.chunk1.f$$Shared5; } /** Actually parse xtc.lang.lojban.$$Shared5. */ private Result p$$Shared5$1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String jekSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "jek", jekSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pjoik(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "joik", joikSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.text1$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptext1$$Choice2(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String stagSEP1 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "stag", stagSEP1, "normal", false ) + makeString( "BOClause", BOClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared6. * This nonterminal represents the duplicate productions * xtc.lang.lojban.text1$$Star1, xtc.lang.lojban.paragraphs$$Star1, * xtc.lang.lojban.fragment$$Star2, xtc.lang.lojban.sentence$$Star2, * xtc.lang.lojban.term1$$Star2, xtc.lang.lojban.relativeClause1$$Star2, * xtc.lang.lojban.tanruUnit2$$Star2, xtc.lang.lojban.quantifier$$Star2, * xtc.lang.lojban.operator2$$Star2, xtc.lang.lojban.operand3$$Star2, * and xtc.lang.lojban.free$$Star2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared6(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.f$$Shared6) yyColumn.chunk1.f$$Shared6 = p$$Shared6$1(yyStart); return yyColumn.chunk1.f$$Shared6; } /** Actually parse xtc.lang.lojban.$$Shared6. */ private Result p$$Shared6$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$4 = (String)yyResult.semanticValue(); yyResult = p$$Shared6(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$5 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$4, v$5); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.text1$$Plus1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptext1$$Plus1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.ftext1$$Plus1) yyColumn.chunk1.ftext1$$Plus1 = ptext1$$Plus1$1(yyStart); return yyColumn.chunk1.ftext1$$Plus1; } /** Actually parse xtc.lang.lojban.text1$$Plus1. */ private Result ptext1$$Plus1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pNIhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$7 = (String)yyResult.semanticValue(); yyResult = ptext1$$Plus1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$8 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$7, v$8); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pNIhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$9 = (String)yyResult.semanticValue(); yyValue = new Pair(v$9); return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared7. * This nonterminal represents the duplicate productions * xtc.lang.lojban.text1$$Star2 and xtc.lang.lojban.mexOperator$$Star5. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared7(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.f$$Shared7) yyColumn.chunk1.f$$Shared7 = p$$Shared7$1(yyStart); return yyColumn.chunk1.f$$Shared7; } /** Actually parse xtc.lang.lojban.$$Shared7. */ private Result p$$Shared7$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$10 = (String)yyResult.semanticValue(); yyResult = p$$Shared7(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$11 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$10, v$11); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.text1$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptext1$$Star3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.ftext1$$Star3) yyColumn.chunk1.ftext1$$Star3 = ptext1$$Star3$1(yyStart); return yyColumn.chunk1.ftext1$$Star3; } /** Actually parse xtc.lang.lojban.text1$$Star3. */ private Result ptext1$$Star3$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psuClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$12 = (String)yyResult.semanticValue(); yyResult = ptext1$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$13 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$12, v$13); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.paragraphs. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pparagraphs(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.fparagraphs) yyColumn.chunk1.fparagraphs = pparagraphs$1(yyStart); return yyColumn.chunk1.fparagraphs; } /** Actually parse xtc.lang.lojban.paragraphs. */ private Result pparagraphs$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pparagraph(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String paragraphSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pparagraphs$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$8 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$8; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "paragraph", paragraphSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.paragraphs$$Plus1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pparagraphs$$Plus1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk1) yyColumn.chunk1 = new Chunk1(); if (null == yyColumn.chunk1.fparagraphs$$Plus1) yyColumn.chunk1.fparagraphs$$Plus1 = pparagraphs$$Plus1$1(yyStart); return yyColumn.chunk1.fparagraphs$$Plus1; } /** Actually parse xtc.lang.lojban.paragraphs$$Plus1. */ private Result pparagraphs$$Plus1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pNIhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pparagraphs$$Plus1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pNIhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$3 = (String)yyResult.semanticValue(); yyValue = new Pair(v$3); return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.paragraphs$$Star2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pparagraphs$$Star2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.fparagraphs$$Star2) yyColumn.chunk2.fparagraphs$$Star2 = pparagraphs$$Star2$1(yyStart); return yyColumn.chunk2.fparagraphs$$Star2; } /** Actually parse xtc.lang.lojban.paragraphs$$Star2. */ private Result pparagraphs$$Star2$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psuClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$6 = (String)yyResult.semanticValue(); yyResult = pparagraphs$$Star2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$7 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$6, v$7); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.paragraphs$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pparagraphs$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pparagraphs$$Plus1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair NIhOClauseSEP1 = (Pair)yyResult.semanticValue(); yyResult = p$$Shared6(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = pparagraphs$$Star2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair suClauseSEP3 = (Pair)yyResult.semanticValue(); yyResult = pparagraphs(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String paragraphsSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "NIhOClause", NIhOClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "suClause", suClauseSEP3, "normal", false ) + makeString( "paragraphs", paragraphsSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.paragraph. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pparagraph(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared8(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pparagraph$$Choice2(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$3 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$3, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared8. * This nonterminal represents the duplicate productions * xtc.lang.lojban.paragraph$$Choice1 * and xtc.lang.lojban.paragraph$$Choice3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared8(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pstatement(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String statementSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "statement", statementSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pfragment(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String fragmentSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "fragment", fragmentSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.paragraph$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pparagraph$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; int yyRepetition1; Pair yyRepValue1; int yyOption1; Object yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String IClauseSEP1 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pjek(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyPredMatched = false; yyPredResult = pjoik(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyPredMatched = false; yyPredResult = pjoikJek(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair freeSEP2 = yyRepValue1.reverse(); yyOption1 = yyRepetition1; yyOpValue1 = null; yyResult = p$$Shared8(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$2 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } Object PARSERparen3 = yyOpValue1; yyValue = makeString( "IClause", IClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "PARSERparen3", PARSERparen3, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } else { yyError = yyError.select("paragraph expected", yyStart); } } else { yyError = yyError.select("paragraph expected", yyStart); } } else { yyError = yyError.select("paragraph expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.statement. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstatement(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.fstatement) yyColumn.chunk2.fstatement = pstatement$1(yyStart); return yyColumn.chunk2.fstatement; } /** Actually parse xtc.lang.lojban.statement. */ private Result pstatement$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pstatement1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String statement1SEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "statement1", statement1SEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pprenex(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String prenexSEP2 = (String)yyResult.semanticValue(); yyResult = pstatement(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String statementSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "prenex", prenexSEP2, "normal", false ) + makeString( "statement", statementSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.statement1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstatement1(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pstatement2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String statement2SEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pstatement1$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$2 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$2, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyValue = makeString( "statement2", statement2SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.statement1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstatement1$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String IClauseSEP1 = (String)yyResult.semanticValue(); yyResult = pjoikJek(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikJekSEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstatement2(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String statement2SEP3 = yyOpValue1; yyValue = makeString( "IClause", IClauseSEP1, "normal", false ) + makeString( "joikJek", joikJekSEP2, "normal", false ) + makeString( "statement2", statement2SEP3, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.statement2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstatement2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.fstatement2) yyColumn.chunk2.fstatement2 = pstatement2$1(yyStart); return yyColumn.chunk2.fstatement2; } /** Actually parse xtc.lang.lojban.statement2. */ private Result pstatement2$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pstatement3(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String statement3SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstatement2$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$5 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$5; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "statement3", statement3SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 2. yyResult = pstatement3(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String statement3SEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstatement2$$Choice3(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$10 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$10; } Object PARSERparen4 = yyOpValue1; yyValue = makeString( "statement3", statement3SEP3, "normal", false ) + makeString( "PARSERparen4", PARSERparen4, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared9. * This nonterminal represents the duplicate productions * xtc.lang.lojban.statement2$$Star1, xtc.lang.lojban.tailTerms$$Star1, * xtc.lang.lojban.terms1$$Star2, xtc.lang.lojban.terms2$$Star2, * xtc.lang.lojban.sumti6$$Star2, xtc.lang.lojban.mexOperator$$Star2, * xtc.lang.lojban.joikEk1$$Star2, xtc.lang.lojban.joikJek$$Star2, * xtc.lang.lojban.gek$$Star1, xtc.lang.lojban.guhek$$Star1, * and xtc.lang.lojban.tenseModal$$Star2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared9(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.f$$Shared9) yyColumn.chunk2.f$$Shared9 = p$$Shared9$1(yyStart); return yyColumn.chunk2.f$$Shared9; } /** Actually parse xtc.lang.lojban.$$Shared9. */ private Result p$$Shared9$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$3 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$4 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$3, v$4); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.statement2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstatement2$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String IClauseSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = p$$Shared5(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } Object PARSERparen2 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } Object stagSEP3 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP4 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyResult = pstatement2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String statement2SEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "IClause", IClauseSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "stag", stagSEP3, "normal", false ) + makeString( "BOClause", BOClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) + makeString( "statement2", statement2SEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared10. * This nonterminal represents the duplicate productions * xtc.lang.lojban.statement2$$Star2, xtc.lang.lojban.fragment$$Star4, * xtc.lang.lojban.sumti6$$Star4, xtc.lang.lojban.mexOperator$$Star4, * and xtc.lang.lojban.free$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared10(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.f$$Shared10) yyColumn.chunk2.f$$Shared10 = p$$Shared10$1(yyStart); return yyColumn.chunk2.f$$Shared10; } /** Actually parse xtc.lang.lojban.$$Shared10. */ private Result p$$Shared10$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$8 = (String)yyResult.semanticValue(); yyResult = p$$Shared10(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$9 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$8, v$9); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.statement2$$Choice3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstatement2$$Choice3(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String IClauseSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = p$$Shared5(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$6 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$6; } Object PARSERparen2 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$7; } Object stagSEP3 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP4 = (String)yyResult.semanticValue(); yyResult = p$$Shared10(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyValue = makeString( "IClause", IClauseSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "stag", stagSEP3, "normal", false ) + makeString( "BOClause", BOClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.statement3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstatement3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.fstatement3) yyColumn.chunk2.fstatement3 = pstatement3$1(yyStart); return yyColumn.chunk2.fstatement3; } /** Actually parse xtc.lang.lojban.statement3. */ private Result pstatement3$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psentence(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sentenceSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "sentence", sentenceSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyOption1 = yyStart; yyOpValue1 = null; yyResult = ptag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String tagSEP2 = yyOpValue1; yyResult = pTUhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String TUhEClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = ptext1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String text1SEP5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pTUhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String TUhUClauseSEP6 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyValue = makeString( "tag", tagSEP2, "normal", false ) + makeString( "TUhEClause", TUhEClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "text1", text1SEP5, "normal", false ) + makeString( "TUhUClause", TUhUClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared11. * This nonterminal represents the duplicate productions * xtc.lang.lojban.statement3$$Star1, xtc.lang.lojban.fragment$$Star1, * xtc.lang.lojban.bridiTail$$Star1, xtc.lang.lojban.bridiTail2$$Star1, * xtc.lang.lojban.gekSentence$$Star1, xtc.lang.lojban.sumti3$$Star1, * xtc.lang.lojban.selbri4$$Star1, xtc.lang.lojban.selbri5$$Star1, * xtc.lang.lojban.quantifier$$Star1, xtc.lang.lojban.operator0$$Star1, * xtc.lang.lojban.operator1$$Star1, xtc.lang.lojban.operand0$$Star1, * xtc.lang.lojban.operand2$$Star1, xtc.lang.lojban.operand3$$Star1, * and xtc.lang.lojban.gik$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared11(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.f$$Shared11) yyColumn.chunk2.f$$Shared11 = p$$Shared11$1(yyStart); return yyColumn.chunk2.f$$Shared11; } /** Actually parse xtc.lang.lojban.$$Shared11. */ private Result p$$Shared11$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$2 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$3 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$2, v$3); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared12. * This nonterminal represents the duplicate productions * xtc.lang.lojban.statement3$$Star2, xtc.lang.lojban.bridiTail$$Star2, * xtc.lang.lojban.gekSentence$$Star2, xtc.lang.lojban.sumti6$$Star3, * xtc.lang.lojban.selbri4$$Star2, xtc.lang.lojban.selbri6$$Star2, * xtc.lang.lojban.linkargs1$$Star2, xtc.lang.lojban.operator0$$Star2, * xtc.lang.lojban.mexOperator$$Star3, xtc.lang.lojban.operand0$$Star2, * and xtc.lang.lojban.gek$$Star2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared12(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.f$$Shared12) yyColumn.chunk2.f$$Shared12 = p$$Shared12$1(yyStart); return yyColumn.chunk2.f$$Shared12; } /** Actually parse xtc.lang.lojban.$$Shared12. */ private Result p$$Shared12$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$5 = (String)yyResult.semanticValue(); yyResult = p$$Shared12(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$6 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$5, v$6); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.fragment. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pfragment(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pprenex(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String prenexSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "prenex", prenexSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pterms(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsSEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pVAUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String VAUClauseSEP3 = yyOpValue1; yyResult = p$$Shared11(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "terms", termsSEP2, "normal", false ) + makeString( "VAUClause", VAUClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 3. yyResult = pek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String ekSEP5 = (String)yyResult.semanticValue(); yyResult = p$$Shared6(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyValue = makeString( "ek", ekSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 4. yyResult = pgihek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gihekSEP7 = (String)yyResult.semanticValue(); yyResult = p$$Shared13(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP8 = (Pair)yyResult.semanticValue(); yyValue = makeString( "gihek", gihekSEP7, "normal", false ) + makeString( "free", freeSEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 5. yyResult = pquantifier(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String quantifierSEP9 = (String)yyResult.semanticValue(); yyValue = makeString( "quantifier", quantifierSEP9, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 6. yyResult = pNAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAClauseSEP10 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pJAClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = p$$Shared10(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP11 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NAClause", NAClauseSEP10, "normal", false ) + makeString( "free", freeSEP11, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("fragment expected", yyStart); } } // Alternative 7. yyResult = prelativeClauses(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String relativeClausesSEP12 = (String)yyResult.semanticValue(); yyValue = makeString( "relativeClauses", relativeClausesSEP12, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 8. yyResult = plinks(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String linksSEP13 = (String)yyResult.semanticValue(); yyValue = makeString( "links", linksSEP13, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 9. yyResult = plinkargs(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String linkargsSEP14 = (String)yyResult.semanticValue(); yyValue = makeString( "linkargs", linkargsSEP14, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared13. * This nonterminal represents the duplicate productions * xtc.lang.lojban.fragment$$Star3, xtc.lang.lojban.term1$$Star3, * xtc.lang.lojban.relativeClause1$$Star3, * xtc.lang.lojban.tanruUnit2$$Star3, and xtc.lang.lojban.tenseModal$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared13(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.f$$Shared13) yyColumn.chunk2.f$$Shared13 = p$$Shared13$1(yyStart); return yyColumn.chunk2.f$$Shared13; } /** Actually parse xtc.lang.lojban.$$Shared13. */ private Result p$$Shared13$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$6 = (String)yyResult.semanticValue(); yyResult = p$$Shared13(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$7 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$6, v$7); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.prenex. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pprenex(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk2) yyColumn.chunk2 = new Chunk2(); if (null == yyColumn.chunk2.fprenex) yyColumn.chunk2.fprenex = pprenex$1(yyStart); return yyColumn.chunk2.fprenex; } /** Actually parse xtc.lang.lojban.prenex. */ private Result pprenex$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsSEP1 = (String)yyResult.semanticValue(); yyResult = pZOhUClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String ZOhUClauseSEP2 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyValue = makeString( "terms", termsSEP1, "normal", false ) + makeString( "ZOhUClause", ZOhUClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared14. * This nonterminal represents the duplicate productions * xtc.lang.lojban.prenex$$Star1, xtc.lang.lojban.term1$$Star1, * xtc.lang.lojban.sumti$$Star1, xtc.lang.lojban.sumti6$$Star1, * xtc.lang.lojban.relativeClauses$$Star1, * xtc.lang.lojban.relativeClause1$$Star1, xtc.lang.lojban.selbri2$$Star1, * xtc.lang.lojban.selbri6$$Star1, xtc.lang.lojban.tanruUnit2$$Star1, * xtc.lang.lojban.linkargs1$$Star1, xtc.lang.lojban.links1$$Star1, * xtc.lang.lojban.mex1$$Star1, xtc.lang.lojban.operator2$$Star1, * xtc.lang.lojban.mexOperator$$Star1, xtc.lang.lojban.joikEk1$$Star1, * xtc.lang.lojban.joikJek$$Star1, xtc.lang.lojban.tenseModal$$Star1, * and xtc.lang.lojban.free$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared14(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.f$$Shared14) yyColumn.chunk3.f$$Shared14 = p$$Shared14$1(yyStart); return yyColumn.chunk3.f$$Shared14; } /** Actually parse xtc.lang.lojban.$$Shared14. */ private Result p$$Shared14$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sentence. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentence(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fsentence) yyColumn.chunk3.fsentence = psentence$1(yyStart); return yyColumn.chunk3.fsentence; } /** Actually parse xtc.lang.lojban.sentence. */ private Result psentence$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = psentence$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$6 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$6; } Object PARSERparen1 = yyOpValue1; yyResult = psentence$$Star3(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair bridiTailSaSEP2 = (Pair)yyResult.semanticValue(); yyResult = pbridiTail(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTailSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "bridiTailSa", bridiTailSaSEP2, "normal", false ) + makeString( "bridiTail", bridiTailSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sentence$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentence$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fsentence$$Star1) yyColumn.chunk3.fsentence$$Star1 = psentence$$Star1$1(yyStart); return yyColumn.chunk3.fsentence$$Star1; } /** Actually parse xtc.lang.lojban.sentence$$Star1. */ private Result psentence$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pbridiTailSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = psentence$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sentence$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentence$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsSEP1 = (String)yyResult.semanticValue(); yyResult = psentence$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair bridiTailSaSEP2 = (Pair)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pCUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String CUClauseSEP3 = yyOpValue1; yyResult = p$$Shared6(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "terms", termsSEP1, "normal", false ) + makeString( "bridiTailSa", bridiTailSaSEP2, "normal", false ) + makeString( "CUClause", CUClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sentence$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentence$$Star3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fsentence$$Star3) yyColumn.chunk3.fsentence$$Star3 = psentence$$Star3$1(yyStart); return yyColumn.chunk3.fsentence$$Star3; } /** Actually parse xtc.lang.lojban.sentence$$Star3. */ private Result psentence$$Star3$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pbridiTailSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$7 = (String)yyResult.semanticValue(); yyResult = psentence$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$8 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$7, v$8); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sentenceSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentenceSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psentenceStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sentenceStartSEP1 = (String)yyResult.semanticValue(); yyResult = psentenceSa$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyResult = pSAClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = ptext1(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "sentenceStart", sentenceStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sentenceSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentenceSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = psentenceStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("sentence sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sentenceSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentenceSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = psentenceStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = psentenceSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("sentence sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sentenceSa$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentenceSa$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fsentenceSa$$Star1) yyColumn.chunk3.fsentenceSa$$Star1 = psentenceSa$$Star1$1(yyStart); return yyColumn.chunk3.fsentenceSa$$Star1; } /** Actually parse xtc.lang.lojban.sentenceSa$$Star1. */ private Result psentenceSa$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psentenceSa$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$1 = yyResult.semanticValue(); yyResult = psentenceSa$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sentenceStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psentenceStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fsentenceStart) yyColumn.chunk3.fsentenceStart = psentenceStart$1(yyStart); return yyColumn.chunk3.fsentenceStart; } /** Actually parse xtc.lang.lojban.sentenceStart. */ private Result psentenceStart$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pIPre(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String IPreSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "IPre", IPreSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pNIhOPre(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NIhOPreSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "NIhOPre", NIhOPreSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.subsentence. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psubsentence(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fsubsentence) yyColumn.chunk3.fsubsentence = psubsentence$1(yyStart); return yyColumn.chunk3.fsubsentence; } /** Actually parse xtc.lang.lojban.subsentence. */ private Result psubsentence$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psentence(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sentenceSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "sentence", sentenceSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pprenex(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String prenexSEP2 = (String)yyResult.semanticValue(); yyResult = psubsentence(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String subsentenceSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "prenex", prenexSEP2, "normal", false ) + makeString( "subsentence", subsentenceSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.bridiTail. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTail(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fbridiTail) yyColumn.chunk3.fbridiTail = pbridiTail$1(yyStart); return yyColumn.chunk3.fbridiTail; } /** Actually parse xtc.lang.lojban.bridiTail. */ private Result pbridiTail$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pbridiTail1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTail1SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pbridiTail$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$7 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$7; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "bridiTail1", bridiTail1SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.bridiTail$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTail$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgihek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gihekSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP2 = yyOpValue1; yyResult = pKEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = pbridiTail(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTailSEP5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String KEhEClauseSEP6 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyResult = ptailTerms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tailTermsSEP8 = (String)yyResult.semanticValue(); yyValue = makeString( "gihek", gihekSEP1, "normal", false ) + makeString( "stag", stagSEP2, "normal", false ) + makeString( "KEClause", KEClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "bridiTail", bridiTailSEP5, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) + makeString( "tailTerms", tailTermsSEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.bridiTailSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTailSa(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fbridiTailSa) yyColumn.chunk3.fbridiTailSa = pbridiTailSa$1(yyStart); return yyColumn.chunk3.fbridiTailSa; } /** Actually parse xtc.lang.lojban.bridiTailSa. */ private Result pbridiTailSa$1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pbridiTailStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTailStartSEP1 = (String)yyResult.semanticValue(); yyResult = pbridiTailSa$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyResult = pSAClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = pbridiTail(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "bridiTailStart", bridiTailStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.bridiTailSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTailSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pbridiTailStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("bridi tail sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.bridiTailSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTailSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterm(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "term", termSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyPredMatched = false; yyPredResult = pbridiTailStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = pbridiTailSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen2 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("bridi tail sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.bridiTailSa$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTailSa$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk3) yyColumn.chunk3 = new Chunk3(); if (null == yyColumn.chunk3.fbridiTailSa$$Star1) yyColumn.chunk3.fbridiTailSa$$Star1 = pbridiTailSa$$Star1$1(yyStart); return yyColumn.chunk3.fbridiTailSa$$Star1; } /** Actually parse xtc.lang.lojban.bridiTailSa$$Star1. */ private Result pbridiTailSa$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pbridiTailSa$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$1 = yyResult.semanticValue(); yyResult = pbridiTailSa$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.bridiTailStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTailStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fbridiTailStart) yyColumn.chunk4.fbridiTailStart = pbridiTailStart$1(yyStart); return yyColumn.chunk4.fbridiTailStart; } /** Actually parse xtc.lang.lojban.bridiTailStart. */ private Result pbridiTailStart$1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pMEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String MEClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "MEClause", MEClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pNUhAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NUhAClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "NUhAClause", NUhAClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 3. yyResult = pNUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NUClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "NUClause", NUClauseSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 4. yyResult = pNAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAClauseSEP4 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pKUClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "NAClause", NAClauseSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("bridi tail start expected", yyStart); } } // Alternative 5. yyResult = pNAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhEClauseSEP5 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pBOClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "NAhEClause", NAhEClauseSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("bridi tail start expected", yyStart); } } // Alternative 6. yyResult = pselbri(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "selbri", selbriSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 7. yyResult = ptag(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tagSEP7 = (String)yyResult.semanticValue(); yyResult = pbridiTailStart(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTailStartSEP8 = (String)yyResult.semanticValue(); yyValue = makeString( "tag", tagSEP7, "normal", false ) + makeString( "bridiTailStart", bridiTailStartSEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 8. yyResult = pKEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP9 = (String)yyResult.semanticValue(); yyResult = pbridiTailStart(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTailStartSEP10 = (String)yyResult.semanticValue(); yyValue = makeString( "KEClause", KEClauseSEP9, "normal", false ) + makeString( "bridiTailStart", bridiTailStartSEP10, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 9. yyResult = pbridiTail(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTailSEP11 = (String)yyResult.semanticValue(); yyValue = makeString( "bridiTail", bridiTailSEP11, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.bridiTail1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTail1(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pbridiTail2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTail2SEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pbridiTail1$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$2 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$2, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyValue = makeString( "bridiTail2", bridiTail2SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.bridiTail1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTail1$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; int yyRepetition1; Pair yyRepValue1; int yyOption1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgihek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gihekSEP1 = (String)yyResult.semanticValue(); yyPredMatched = false; yyOption1 = yyResult.index; yyPredResult = pstag(yyOption1); if (yyPredResult.hasValue()) { yyOption1 = yyPredResult.index; } yyPredResult = pBOClause(yyOption1); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyPredMatched = false; yyOption1 = yyResult.index; yyPredResult = pstag(yyOption1); if (yyPredResult.hasValue()) { yyOption1 = yyPredResult.index; } yyPredResult = pKEClause(yyOption1); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair freeSEP2 = yyRepValue1.reverse(); yyResult = pbridiTail2(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTail2SEP3 = (String)yyResult.semanticValue(); yyResult = ptailTerms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tailTermsSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "gihek", gihekSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "bridiTail2", bridiTail2SEP3, "normal", false ) + makeString( "tailTerms", tailTermsSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } else { yyError = yyError.select("bridi tail1 expected", yyStart); } } else { yyError = yyError.select("bridi tail1 expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.bridiTail2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTail2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fbridiTail2) yyColumn.chunk4.fbridiTail2 = pbridiTail2$1(yyStart); return yyColumn.chunk4.fbridiTail2; } /** Actually parse xtc.lang.lojban.bridiTail2. */ private Result pbridiTail2$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pbridiTail3(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTail3SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pbridiTail2$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$4 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "bridiTail3", bridiTail3SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.bridiTail2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTail2$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgihek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gihekSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP2 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = pbridiTail2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String bridiTail2SEP5 = (String)yyResult.semanticValue(); yyResult = ptailTerms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tailTermsSEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "gihek", gihekSEP1, "normal", false ) + makeString( "stag", stagSEP2, "normal", false ) + makeString( "BOClause", BOClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "bridiTail2", bridiTail2SEP5, "normal", false ) + makeString( "tailTerms", tailTermsSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.bridiTail3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pbridiTail3(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP1 = (String)yyResult.semanticValue(); yyResult = ptailTerms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tailTermsSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "selbri", selbriSEP1, "normal", false ) + makeString( "tailTerms", tailTermsSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pgekSentence(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSentenceSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "gekSentence", gekSentenceSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.gekSentence. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgekSentence(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fgekSentence) yyColumn.chunk4.fgekSentence = pgekSentence$1(yyStart); return yyColumn.chunk4.fgekSentence; } /** Actually parse xtc.lang.lojban.gekSentence. */ private Result pgekSentence$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSEP1 = (String)yyResult.semanticValue(); yyResult = psubsentence(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String subsentenceSEP2 = (String)yyResult.semanticValue(); yyResult = pgik(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP3 = (String)yyResult.semanticValue(); yyResult = psubsentence(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String subsentenceSEP4 = (String)yyResult.semanticValue(); yyResult = ptailTerms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tailTermsSEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "gek", gekSEP1, "normal", false ) + makeString( "subsentence", subsentenceSEP2, "normal", false ) + makeString( "gik", gikSEP3, "normal", false ) + makeString( "subsentence", subsentenceSEP4, "normal", false ) + makeString( "tailTerms", tailTermsSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Alternative 2. yyOption1 = yyStart; yyOpValue1 = null; yyResult = ptag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String tagSEP6 = yyOpValue1; yyResult = pKEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP7 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP8 = (Pair)yyResult.semanticValue(); yyResult = pgekSentence(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSentenceSEP9 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String KEhEClauseSEP10 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP11 = (Pair)yyResult.semanticValue(); yyValue = makeString( "tag", tagSEP6, "normal", false ) + makeString( "KEClause", KEClauseSEP7, "normal", false ) + makeString( "free", freeSEP8, "normal", false ) + makeString( "gekSentence", gekSentenceSEP9, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP10, "normal", false ) + makeString( "free", freeSEP11, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 3. yyResult = pNAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAClauseSEP12 = (String)yyResult.semanticValue(); yyResult = p$$Shared15(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP13 = (Pair)yyResult.semanticValue(); yyResult = pgekSentence(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSentenceSEP14 = (String)yyResult.semanticValue(); yyValue = makeString( "NAClause", NAClauseSEP12, "normal", false ) + makeString( "free", freeSEP13, "normal", false ) + makeString( "gekSentence", gekSentenceSEP14, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared15. * This nonterminal represents the duplicate productions * xtc.lang.lojban.gekSentence$$Star3, xtc.lang.lojban.quantifier$$Star3, * and xtc.lang.lojban.operand3$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared15(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.f$$Shared15) yyColumn.chunk4.f$$Shared15 = p$$Shared15$1(yyStart); return yyColumn.chunk4.f$$Shared15; } /** Actually parse xtc.lang.lojban.$$Shared15. */ private Result p$$Shared15$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$7 = (String)yyResult.semanticValue(); yyResult = p$$Shared15(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$8 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$7, v$8); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.tailTerms. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptailTerms(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.ftailTerms) yyColumn.chunk4.ftailTerms = ptailTerms$1(yyStart); return yyColumn.chunk4.ftailTerms; } /** Actually parse xtc.lang.lojban.tailTerms. */ private Result ptailTerms$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pterms(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String termsSEP1 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pVAUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String VAUClauseSEP2 = yyOpValue1; yyResult = p$$Shared9(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyValue = makeString( "terms", termsSEP1, "normal", false ) + makeString( "VAUClause", VAUClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.terms. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fterms) yyColumn.chunk4.fterms = pterms$1(yyStart); return yyColumn.chunk4.fterms; } /** Actually parse xtc.lang.lojban.terms. */ private Result pterms$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms$$Plus1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair terms1SEP1 = (Pair)yyResult.semanticValue(); yyValue = makeString( "terms1", terms1SEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.terms$$Plus1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms$$Plus1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fterms$$Plus1) yyColumn.chunk4.fterms$$Plus1 = pterms$$Plus1$1(yyStart); return yyColumn.chunk4.fterms$$Plus1; } /** Actually parse xtc.lang.lojban.terms$$Plus1. */ private Result pterms$$Plus1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pterms$$Plus1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pterms1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$3 = (String)yyResult.semanticValue(); yyValue = new Pair(v$3); return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.terms1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fterms1) yyColumn.chunk4.fterms1 = pterms1$1(yyStart); return yyColumn.chunk4.fterms1; } /** Actually parse xtc.lang.lojban.terms1. */ private Result pterms1$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String terms2SEP1 = (String)yyResult.semanticValue(); yyResult = pterms1$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "terms2", terms2SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.terms1$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms1$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fterms1$$Star1) yyColumn.chunk4.fterms1$$Star1 = pterms1$$Star1$1(yyStart); return yyColumn.chunk4.fterms1$$Star1; } /** Actually parse xtc.lang.lojban.terms1$$Star1. */ private Result pterms1$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ppeheSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pterms1$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.terms1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms1$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms1$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair peheSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = pPEhEClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String PEhEClauseSEP2 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyResult = pjoikJek(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikJekSEP4 = (String)yyResult.semanticValue(); yyResult = pterms2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String terms2SEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "peheSa", peheSaSEP1, "normal", false ) + makeString( "PEhEClause", PEhEClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) + makeString( "joikJek", joikJekSEP4, "normal", false ) + makeString( "terms2", terms2SEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.terms1$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms1$$Star3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk4) yyColumn.chunk4 = new Chunk4(); if (null == yyColumn.chunk4.fterms1$$Star3) yyColumn.chunk4.fterms1$$Star3 = pterms1$$Star3$1(yyStart); return yyColumn.chunk4.fterms1$$Star3; } /** Actually parse xtc.lang.lojban.terms1$$Star3. */ private Result pterms1$$Star3$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms1$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$5 = yyResult.semanticValue(); yyResult = pterms1$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$6 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$5, v$6); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.terms2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fterms2) yyColumn.chunk5.fterms2 = pterms2$1(yyStart); return yyColumn.chunk5.fterms2; } /** Actually parse xtc.lang.lojban.terms2. */ private Result pterms2$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterm(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP1 = (String)yyResult.semanticValue(); yyResult = pterms2$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "term", termSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.terms2$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms2$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fterms2$$Star1) yyColumn.chunk5.fterms2$$Star1 = pterms2$$Star1$1(yyStart); return yyColumn.chunk5.fterms2$$Star1; } /** Actually parse xtc.lang.lojban.terms2$$Star1. */ private Result pterms2$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pceheSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pterms2$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.terms2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms2$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms2$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair ceheSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = pCEhEClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String CEhEClauseSEP2 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyResult = pterm(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "ceheSa", ceheSaSEP1, "normal", false ) + makeString( "CEhEClause", CEhEClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) + makeString( "term", termSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.terms2$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterms2$$Star3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fterms2$$Star3) yyColumn.chunk5.fterms2$$Star3 = pterms2$$Star3$1(yyStart); return yyColumn.chunk5.fterms2$$Star3; } /** Actually parse xtc.lang.lojban.terms2$$Star3. */ private Result pterms2$$Star3$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterms2$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$5 = yyResult.semanticValue(); yyResult = pterms2$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$6 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$5, v$6); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.peheSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ppeheSa(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pPEhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String PEhEClauseSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = ppeheSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "PEhEClause", PEhEClauseSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.peheSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ppeheSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pPEhEClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("pehe sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.peheSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ppeheSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = pPEhEClause(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = ppeheSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("pehe sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.ceheSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pceheSa(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pCEhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String CEhEClauseSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pceheSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "CEhEClause", CEhEClauseSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.ceheSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pceheSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pCEhEClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("cehe sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.ceheSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pceheSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = pCEhEClause(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = pceheSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("cehe sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.term. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterm(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fterm) yyColumn.chunk5.fterm = pterm$1(yyStart); return yyColumn.chunk5.fterm; } /** Actually parse xtc.lang.lojban.term. */ private Result pterm$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterm$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair termSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = pterm1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String term1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "termSa", termSaSEP1, "normal", false ) + makeString( "term1", term1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.term$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterm$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fterm$$Star1) yyColumn.chunk5.fterm$$Star1 = pterm$$Star1$1(yyStart); return yyColumn.chunk5.fterm$$Star1; } /** Actually parse xtc.lang.lojban.term$$Star1. */ private Result pterm$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptermSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pterm$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.term1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterm1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fterm1) yyColumn.chunk5.fterm1 = pterm1$1(yyStart); return yyColumn.chunk5.fterm1; } /** Actually parse xtc.lang.lojban.term1. */ private Result pterm1$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "sumti", sumtiSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pterm1$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen2 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 3. yyResult = ptermset(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsetSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "termset", termsetSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 4. yyResult = pNAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAClauseSEP4 = (String)yyResult.semanticValue(); yyResult = pKUClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KUClauseSEP5 = (String)yyResult.semanticValue(); yyResult = p$$Shared13(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NAClause", NAClauseSEP4, "normal", false ) + makeString( "KUClause", KUClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.term1$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterm1$$Choice2(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptag(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tagSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "tag", tagSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pFAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String FAClauseSEP2 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyValue = makeString( "FAClause", FAClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.term1$$Choice3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterm1$$Choice3(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "sumti", sumtiSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pKUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String KUClauseSEP2 = yyOpValue1; yyResult = p$$Shared6(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyValue = makeString( "KUClause", KUClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.term1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pterm1$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = pgek(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = pterm1$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyResult = pterm1$$Choice3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen2 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } } else { yyError = yyError.select("term1 expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.termSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptermSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptermStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termStartSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = ptermSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = pterm1(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "termStart", termStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.termSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptermSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = ptermStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("term sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.termSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptermSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = ptermStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = ptermSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("term sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.termStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptermStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.ftermStart) yyColumn.chunk5.ftermStart = ptermStart$1(yyStart); return yyColumn.chunk5.ftermStart; } /** Actually parse xtc.lang.lojban.termStart. */ private Result ptermStart$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterm1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String term1SEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "term1", term1SEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pLAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "LAClause", LAClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 3. yyResult = pLEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LEClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "LEClause", LEClauseSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 4. yyResult = pLIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LIClauseSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "LIClause", LIClauseSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 5. yyResult = pLUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LUClauseSEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "LUClause", LUClauseSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 6. yyResult = pLAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAhEClauseSEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "LAhEClause", LAhEClauseSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 7. yyResult = pquantifier(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String quantifierSEP7 = (String)yyResult.semanticValue(); yyResult = ptermStart(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termStartSEP8 = (String)yyResult.semanticValue(); yyValue = makeString( "quantifier", quantifierSEP7, "normal", false ) + makeString( "termStart", termStartSEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 8. yyResult = pgek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSEP9 = (String)yyResult.semanticValue(); yyResult = psumti(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP10 = (String)yyResult.semanticValue(); yyResult = pgik(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP11 = (String)yyResult.semanticValue(); yyValue = makeString( "gek", gekSEP9, "normal", false ) + makeString( "sumti", sumtiSEP10, "normal", false ) + makeString( "gik", gikSEP11, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 9. yyResult = pFAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String FAClauseSEP12 = (String)yyResult.semanticValue(); yyValue = makeString( "FAClause", FAClauseSEP12, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 10. yyResult = ptag(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tagSEP13 = (String)yyResult.semanticValue(); yyResult = ptermStart(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termStartSEP14 = (String)yyResult.semanticValue(); yyValue = makeString( "tag", tagSEP13, "normal", false ) + makeString( "termStart", termStartSEP14, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.termset. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptermset(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgekTermset(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekTermsetSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "gekTermset", gekTermsetSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pNUhIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NUhIClauseSEP2 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair freeSEP3 = yyRepValue1.reverse(); yyResult = pgek(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSEP4 = (String)yyResult.semanticValue(); yyResult = pterms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsSEP5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNUhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String NUhUClauseSEP6 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$3, yyRepValue1); continue; } break; } Pair freeSEP7 = yyRepValue1.reverse(); yyResult = pgik(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP8 = (String)yyResult.semanticValue(); yyResult = pterms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsSEP9 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNUhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String NUhUClauseSEP10 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$5 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$5, yyRepValue1); continue; } break; } Pair freeSEP11 = yyRepValue1.reverse(); yyValue = makeString( "NUhIClause", NUhIClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) + makeString( "gek", gekSEP4, "normal", false ) + makeString( "terms", termsSEP5, "normal", false ) + makeString( "NUhUClause", NUhUClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) + makeString( "gik", gikSEP8, "normal", false ) + makeString( "terms", termsSEP9, "normal", false ) + makeString( "NUhUClause", NUhUClauseSEP10, "normal", false ) + makeString( "free", freeSEP11, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } } } } } // Alternative 3. yyResult = pNUhIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NUhIClauseSEP12 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$6 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$6, yyRepValue1); continue; } break; } Pair freeSEP13 = yyRepValue1.reverse(); yyResult = pterms(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsSEP14 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNUhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$7; } String NUhUClauseSEP15 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$8 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$8, yyRepValue1); continue; } break; } Pair freeSEP16 = yyRepValue1.reverse(); yyValue = makeString( "NUhIClause", NUhIClauseSEP12, "normal", false ) + makeString( "free", freeSEP13, "normal", false ) + makeString( "terms", termsSEP14, "normal", false ) + makeString( "NUhUClause", NUhUClauseSEP15, "normal", false ) + makeString( "free", freeSEP16, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.gekTermset. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgekTermset(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSEP1 = (String)yyResult.semanticValue(); yyResult = ptermsGikTerms(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsGikTermsSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "gek", gekSEP1, "normal", false ) + makeString( "termsGikTerms", termsGikTermsSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.termsGikTerms. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptermsGikTerms(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.ftermsGikTerms) yyColumn.chunk5.ftermsGikTerms = ptermsGikTerms$1(yyStart); return yyColumn.chunk5.ftermsGikTerms; } /** Actually parse xtc.lang.lojban.termsGikTerms. */ private Result ptermsGikTerms$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pterm(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP1 = (String)yyResult.semanticValue(); yyResult = ptermsGikTerms$$Choice1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen2 = yyResult.semanticValue(); yyResult = pterm(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "term", termSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "term", termSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.termsGikTerms$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptermsGikTerms$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgik(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "gik", gikSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = ptermsGikTerms(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termsGikTermsSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "termsGikTerms", termsGikTermsSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumti. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fsumti) yyColumn.chunk5.fsumti = psumti$1(yyStart); return yyColumn.chunk5.fsumti; } /** Actually parse xtc.lang.lojban.sumti. */ private Result psumti$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti1SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = psumti$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$3 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "sumti1", sumti1SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pVUhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String VUhOClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = prelativeClauses(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String relativeClausesSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "VUhOClause", VUhOClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "relativeClauses", relativeClausesSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumti1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti2SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = psumti1$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$5 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$5; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "sumti2", sumti2SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti1$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEkSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP2 = yyOpValue1; yyResult = pKEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP3 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$2, yyRepValue1); continue; } break; } Pair freeSEP4 = yyRepValue1.reverse(); yyResult = psumti(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String KEhEClauseSEP6 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$4, yyRepValue1); continue; } break; } Pair freeSEP7 = yyRepValue1.reverse(); yyValue = makeString( "joikEk", joikEkSEP1, "normal", false ) + makeString( "stag", stagSEP2, "normal", false ) + makeString( "KEClause", KEClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "sumti", sumtiSEP5, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumti2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti2(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti3(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti3SEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = psumti2$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyValue = makeString( "sumti3", sumti3SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti2$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEkSEP1 = (String)yyResult.semanticValue(); yyResult = psumti3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti3SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "joikEk", joikEkSEP1, "normal", false ) + makeString( "sumti3", sumti3SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumti3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk5) yyColumn.chunk5 = new Chunk5(); if (null == yyColumn.chunk5.fsumti3) yyColumn.chunk5.fsumti3 = psumti3$1(yyStart); return yyColumn.chunk5.fsumti3; } /** Actually parse xtc.lang.lojban.sumti3. */ private Result psumti3$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti4(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti4SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = psumti3$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$4 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "sumti4", sumti4SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti3$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti3$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEkSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP2 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = psumti3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti3SEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "joikEk", joikEkSEP1, "normal", false ) + makeString( "stag", stagSEP2, "normal", false ) + makeString( "BOClause", BOClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "sumti3", sumti3SEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumti4. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti4(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.fsumti4) yyColumn.chunk6.fsumti4 = psumti4$1(yyStart); return yyColumn.chunk6.fsumti4; } /** Actually parse xtc.lang.lojban.sumti4. */ private Result psumti4$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti5(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti5SEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "sumti5", sumti5SEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pgek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSEP2 = (String)yyResult.semanticValue(); yyResult = psumti(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP3 = (String)yyResult.semanticValue(); yyResult = pgik(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP4 = (String)yyResult.semanticValue(); yyResult = psumti4(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti4SEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "gek", gekSEP2, "normal", false ) + makeString( "sumti", sumtiSEP3, "normal", false ) + makeString( "gik", gikSEP4, "normal", false ) + makeString( "sumti4", sumti4SEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumti5. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti5(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pquantifier(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String quantifierSEP1 = yyOpValue1; yyResult = psumti6(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti6SEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = prelativeClauses(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String relativeClausesSEP3 = yyOpValue1; yyValue = makeString( "quantifier", quantifierSEP1, "normal", false ) + makeString( "sumti6", sumti6SEP2, "normal", false ) + makeString( "relativeClauses", relativeClausesSEP3, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 2. yyResult = pquantifier(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String quantifierSEP4 = (String)yyResult.semanticValue(); yyResult = pselbri(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String KUClauseSEP6 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$4, yyRepValue1); continue; } break; } Pair freeSEP7 = yyRepValue1.reverse(); yyOption1 = yyRepetition1; yyOpValue1 = null; yyResult = prelativeClauses(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$5; } String relativeClausesSEP8 = yyOpValue1; yyValue = makeString( "quantifier", quantifierSEP4, "normal", false ) + makeString( "selbri", selbriSEP5, "normal", false ) + makeString( "KUClause", KUClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) + makeString( "relativeClauses", relativeClausesSEP8, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumti6. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti6(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.fsumti6) yyColumn.chunk6.fsumti6 = psumti6$1(yyStart); return yyColumn.chunk6.fsumti6; } /** Actually parse xtc.lang.lojban.sumti6. */ private Result psumti6$1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pZOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String ZOClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "ZOClause", ZOClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pZOIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String ZOIClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "ZOIClause", ZOIClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 3. yyResult = pLOhUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LOhUClauseSEP5 = (String)yyResult.semanticValue(); yyResult = p$$Shared12(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyValue = makeString( "LOhUClause", LOhUClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 4. yyResult = plerfuString(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuStringSEP7 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pMOIClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pBOIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$7; } String BOIClauseSEP8 = yyOpValue1; yyResult = p$$Shared10(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP9 = (Pair)yyResult.semanticValue(); yyValue = makeString( "lerfuString", lerfuStringSEP7, "normal", false ) + makeString( "BOIClause", BOIClauseSEP8, "normal", false ) + makeString( "free", freeSEP9, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("sumti6 expected", yyStart); } } // Alternative 5. yyResult = pLUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LUClauseSEP10 = (String)yyResult.semanticValue(); yyResult = ptext(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String textSEP11 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pLIhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$10 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$10; } String LIhUClauseSEP12 = yyOpValue1; yyResult = p$$Shared16(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP13 = (Pair)yyResult.semanticValue(); yyValue = makeString( "LUClause", LUClauseSEP10, "normal", false ) + makeString( "text", textSEP11, "normal", false ) + makeString( "LIhUClause", LIhUClauseSEP12, "normal", false ) + makeString( "free", freeSEP13, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 6. yyResult = psumti6$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen14 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = prelativeClauses(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$17 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$17; } String relativeClausesSEP15 = yyOpValue1; yyResult = psumti(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP16 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pLUhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$18 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$18; } String LUhUClauseSEP17 = yyOpValue1; yyResult = p$$Shared19(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP18 = (Pair)yyResult.semanticValue(); yyValue = makeString( "PARSERparen14", PARSERparen14, "parserParen", false ) + makeString( "relativeClauses", relativeClausesSEP15, "normal", false ) + makeString( "sumti", sumtiSEP16, "normal", false ) + makeString( "LUhUClause", LUhUClauseSEP17, "normal", false ) + makeString( "free", freeSEP18, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 7. yyResult = pKOhAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KOhAClauseSEP19 = (String)yyResult.semanticValue(); yyResult = p$$Shared20(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP20 = (Pair)yyResult.semanticValue(); yyValue = makeString( "KOhAClause", KOhAClauseSEP19, "normal", false ) + makeString( "free", freeSEP20, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 8. yyResult = pLAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAClauseSEP21 = (String)yyResult.semanticValue(); yyResult = p$$Shared21(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP22 = (Pair)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = prelativeClauses(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$25 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$25; } String relativeClausesSEP23 = yyOpValue1; yyResult = psumti6$$Plus1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair CMENEClauseSEP24 = (Pair)yyResult.semanticValue(); yyResult = psumti6$$Star11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP25 = (Pair)yyResult.semanticValue(); yyValue = makeString( "LAClause", LAClauseSEP21, "normal", false ) + makeString( "free", freeSEP22, "normal", false ) + makeString( "relativeClauses", relativeClausesSEP23, "normal", false ) + makeString( "CMENEClause", CMENEClauseSEP24, "normal", false ) + makeString( "free", freeSEP25, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 9. yyResult = psumti6$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen26 = yyResult.semanticValue(); yyResult = p$$Shared22(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP27 = (Pair)yyResult.semanticValue(); yyResult = psumtiTail(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiTailSEP28 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$33 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$33; } String KUClauseSEP29 = yyOpValue1; yyResult = p$$Shared23(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP30 = (Pair)yyResult.semanticValue(); yyValue = makeString( "PARSERparen26", PARSERparen26, "parserParen", false ) + makeString( "free", freeSEP27, "normal", false ) + makeString( "sumtiTail", sumtiTailSEP28, "normal", false ) + makeString( "KUClause", KUClauseSEP29, "normal", false ) + makeString( "free", freeSEP30, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 10. yyResult = pliClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String liClauseSEP31 = (String)yyResult.semanticValue(); yyValue = makeString( "liClause", liClauseSEP31, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared16. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star5 and xtc.lang.lojban.tanruUnit2$$Star5. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared16(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.f$$Shared16) yyColumn.chunk6.f$$Shared16 = p$$Shared16$1(yyStart); return yyColumn.chunk6.f$$Shared16; } /** Actually parse xtc.lang.lojban.$$Shared16. */ private Result p$$Shared16$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$11 = (String)yyResult.semanticValue(); yyResult = p$$Shared16(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$12 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$11, v$12); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared17. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star6 and xtc.lang.lojban.mexOperator$$Star6. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared17(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.f$$Shared17) yyColumn.chunk6.f$$Shared17 = p$$Shared17$1(yyStart); return yyColumn.chunk6.f$$Shared17; } /** Actually parse xtc.lang.lojban.$$Shared17. */ private Result p$$Shared17$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$13 = (String)yyResult.semanticValue(); yyResult = p$$Shared17(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$14 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$13, v$14); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared18. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star7 and xtc.lang.lojban.mexOperator$$Star7. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared18(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.f$$Shared18) yyColumn.chunk6.f$$Shared18 = p$$Shared18$1(yyStart); return yyColumn.chunk6.f$$Shared18; } /** Actually parse xtc.lang.lojban.$$Shared18. */ private Result p$$Shared18$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$15 = (String)yyResult.semanticValue(); yyResult = p$$Shared18(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$16 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$15, v$16); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti6$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti6$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pLAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAhEClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared17(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "LAhEClause", LAhEClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pNAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhEClauseSEP3 = (String)yyResult.semanticValue(); yyResult = pBOClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP4 = (String)yyResult.semanticValue(); yyResult = p$$Shared18(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NAhEClause", NAhEClauseSEP3, "normal", false ) + makeString( "BOClause", BOClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared19. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star8, xtc.lang.lojban.tanruUnit2$$Star8, * and xtc.lang.lojban.free$$Star4. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared19(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.f$$Shared19) yyColumn.chunk6.f$$Shared19 = p$$Shared19$1(yyStart); return yyColumn.chunk6.f$$Shared19; } /** Actually parse xtc.lang.lojban.$$Shared19. */ private Result p$$Shared19$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$19 = (String)yyResult.semanticValue(); yyResult = p$$Shared19(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$20 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$19, v$20); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared20. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star9 and xtc.lang.lojban.tanruUnit2$$Star9. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared20(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.f$$Shared20) yyColumn.chunk6.f$$Shared20 = p$$Shared20$1(yyStart); return yyColumn.chunk6.f$$Shared20; } /** Actually parse xtc.lang.lojban.$$Shared20. */ private Result p$$Shared20$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$21 = (String)yyResult.semanticValue(); yyResult = p$$Shared20(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$22 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$21, v$22); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared21. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star10 and xtc.lang.lojban.tanruUnit2$$Star10. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared21(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.f$$Shared21) yyColumn.chunk6.f$$Shared21 = p$$Shared21$1(yyStart); return yyColumn.chunk6.f$$Shared21; } /** Actually parse xtc.lang.lojban.$$Shared21. */ private Result p$$Shared21$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$23 = (String)yyResult.semanticValue(); yyResult = p$$Shared21(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$24 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$23, v$24); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti6$$Plus1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti6$$Plus1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.fsumti6$$Plus1) yyColumn.chunk6.fsumti6$$Plus1 = psumti6$$Plus1$1(yyStart); return yyColumn.chunk6.fsumti6$$Plus1; } /** Actually parse xtc.lang.lojban.sumti6$$Plus1. */ private Result psumti6$$Plus1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pCMENEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$26 = (String)yyResult.semanticValue(); yyResult = psumti6$$Plus1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$27 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$26, v$27); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pCMENEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$28 = (String)yyResult.semanticValue(); yyValue = new Pair(v$28); return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti6$$Star11. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti6$$Star11(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk6) yyColumn.chunk6 = new Chunk6(); if (null == yyColumn.chunk6.fsumti6$$Star11) yyColumn.chunk6.fsumti6$$Star11 = psumti6$$Star11$1(yyStart); return yyColumn.chunk6.fsumti6$$Star11; } /** Actually parse xtc.lang.lojban.sumti6$$Star11. */ private Result psumti6$$Star11$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$29 = (String)yyResult.semanticValue(); yyResult = psumti6$$Star11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$30 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$29, v$30); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumti6$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumti6$$Choice2(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pLAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "LAClause", LAClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pLEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LEClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "LEClause", LEClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared22. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star12 and xtc.lang.lojban.tanruUnit2$$Star13. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared22(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.f$$Shared22) yyColumn.chunk7.f$$Shared22 = p$$Shared22$1(yyStart); return yyColumn.chunk7.f$$Shared22; } /** Actually parse xtc.lang.lojban.$$Shared22. */ private Result p$$Shared22$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$31 = (String)yyResult.semanticValue(); yyResult = p$$Shared22(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$32 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$31, v$32); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared23. * This nonterminal represents the duplicate productions * xtc.lang.lojban.sumti6$$Star13 and xtc.lang.lojban.tanruUnit2$$Star14. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared23(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.f$$Shared23) yyColumn.chunk7.f$$Shared23 = p$$Shared23$1(yyStart); return yyColumn.chunk7.f$$Shared23; } /** Actually parse xtc.lang.lojban.$$Shared23. */ private Result p$$Shared23$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$34 = (String)yyResult.semanticValue(); yyResult = p$$Shared23(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$35 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$34, v$35); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.liClause. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pliClause(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pLIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LIClauseSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair freeSEP2 = yyRepValue1.reverse(); yyResult = pmex(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pLOhOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String LOhOClauseSEP4 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$3, yyRepValue1); continue; } break; } Pair freeSEP5 = yyRepValue1.reverse(); yyValue = makeString( "LIClause", LIClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "mex", mexSEP3, "normal", false ) + makeString( "LOhOClause", LOhOClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumtiTail. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumtiTail(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = psumtiTail$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$2 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } Object PARSERparen1 = yyOpValue1; yyResult = psumtiTail1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiTail1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "sumtiTail1", sumtiTail1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = prelativeClauses(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String relativeClausesSEP3 = (String)yyResult.semanticValue(); yyResult = psumtiTail1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiTail1SEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "relativeClauses", relativeClausesSEP3, "normal", false ) + makeString( "sumtiTail1", sumtiTail1SEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.sumtiTail$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumtiTail$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti6(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumti6SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = prelativeClauses(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String relativeClausesSEP2 = yyOpValue1; yyValue = makeString( "sumti6", sumti6SEP1, "normal", false ) + makeString( "relativeClauses", relativeClausesSEP2, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.sumtiTail1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psumtiTail1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.fsumtiTail1) yyColumn.chunk7.fsumtiTail1 = psumtiTail1$1(yyStart); return yyColumn.chunk7.fsumtiTail1; } /** Actually parse xtc.lang.lojban.sumtiTail1. */ private Result psumtiTail1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = prelativeClauses(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String relativeClausesSEP2 = yyOpValue1; yyValue = makeString( "selbri", selbriSEP1, "normal", false ) + makeString( "relativeClauses", relativeClausesSEP2, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 2. yyResult = pquantifier(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String quantifierSEP3 = (String)yyResult.semanticValue(); yyResult = pselbri(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = prelativeClauses(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String relativeClausesSEP5 = yyOpValue1; yyValue = makeString( "quantifier", quantifierSEP3, "normal", false ) + makeString( "selbri", selbriSEP4, "normal", false ) + makeString( "relativeClauses", relativeClausesSEP5, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } } // Alternative 3. yyResult = pquantifier(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String quantifierSEP6 = (String)yyResult.semanticValue(); yyResult = psumti(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP7 = (String)yyResult.semanticValue(); yyValue = makeString( "quantifier", quantifierSEP6, "normal", false ) + makeString( "sumti", sumtiSEP7, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.relativeClauses. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClauses(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.frelativeClauses) yyColumn.chunk7.frelativeClauses = prelativeClauses$1(yyStart); return yyColumn.chunk7.frelativeClauses; } /** Actually parse xtc.lang.lojban.relativeClauses. */ private Result prelativeClauses$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = prelativeClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String relativeClauseSEP1 = (String)yyResult.semanticValue(); yyResult = prelativeClauses$$Star2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "relativeClause", relativeClauseSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.relativeClauses$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClauses$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pZIhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String ZIhEClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = prelativeClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String relativeClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "ZIhEClause", ZIhEClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "relativeClause", relativeClauseSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.relativeClauses$$Star2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClauses$$Star2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.frelativeClauses$$Star2) yyColumn.chunk7.frelativeClauses$$Star2 = prelativeClauses$$Star2$1(yyStart); return yyColumn.chunk7.frelativeClauses$$Star2; } /** Actually parse xtc.lang.lojban.relativeClauses$$Star2. */ private Result prelativeClauses$$Star2$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = prelativeClauses$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$3 = yyResult.semanticValue(); yyResult = prelativeClauses$$Star2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$4 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$3, v$4); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.relativeClause. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClause(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.frelativeClause) yyColumn.chunk7.frelativeClause = prelativeClause$1(yyStart); return yyColumn.chunk7.frelativeClause; } /** Actually parse xtc.lang.lojban.relativeClause. */ private Result prelativeClause$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = prelativeClause$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair relativeClauseSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = prelativeClause1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String relativeClause1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "relativeClauseSa", relativeClauseSaSEP1, "normal", false ) + makeString( "relativeClause1", relativeClause1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.relativeClause$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClause$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.frelativeClause$$Star1) yyColumn.chunk7.frelativeClause$$Star1 = prelativeClause$$Star1$1(yyStart); return yyColumn.chunk7.frelativeClause$$Star1; } /** Actually parse xtc.lang.lojban.relativeClause$$Star1. */ private Result prelativeClause$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = prelativeClauseSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = prelativeClause$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.relativeClauseSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClauseSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = prelativeClauseStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String relativeClauseStartSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = prelativeClauseSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = prelativeClause1(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "relativeClauseStart", relativeClauseStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.relativeClauseSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClauseSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = prelativeClauseStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("relative clause sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.relativeClauseSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClauseSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = prelativeClauseStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = prelativeClauseSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("relative clause sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.relativeClause1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClause1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.frelativeClause1) yyColumn.chunk7.frelativeClause1 = prelativeClause1$1(yyStart); return yyColumn.chunk7.frelativeClause1; } /** Actually parse xtc.lang.lojban.relativeClause1. */ private Result prelativeClause1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pGOIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GOIClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = pterm(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pGEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String GEhUClauseSEP4 = yyOpValue1; yyResult = p$$Shared6(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyValue = makeString( "GOIClause", GOIClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "term", termSEP3, "normal", false ) + makeString( "GEhUClause", GEhUClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 2. yyResult = pNOIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NOIClauseSEP6 = (String)yyResult.semanticValue(); yyResult = p$$Shared13(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyResult = psubsentence(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String subsentenceSEP8 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKUhOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$8 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$8; } String KUhOClauseSEP9 = yyOpValue1; yyResult = p$$Shared24(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP10 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NOIClause", NOIClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) + makeString( "subsentence", subsentenceSEP8, "normal", false ) + makeString( "KUhOClause", KUhOClauseSEP9, "normal", false ) + makeString( "free", freeSEP10, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared24. * This nonterminal represents the duplicate productions * xtc.lang.lojban.relativeClause1$$Star4, * xtc.lang.lojban.tanruUnit2$$Star4, and xtc.lang.lojban.operand3$$Star4. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared24(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.f$$Shared24) yyColumn.chunk7.f$$Shared24 = p$$Shared24$1(yyStart); return yyColumn.chunk7.f$$Shared24; } /** Actually parse xtc.lang.lojban.$$Shared24. */ private Result p$$Shared24$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$9 = (String)yyResult.semanticValue(); yyResult = p$$Shared24(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$10 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$9, v$10); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.relativeClauseStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prelativeClauseStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk7) yyColumn.chunk7 = new Chunk7(); if (null == yyColumn.chunk7.frelativeClauseStart) yyColumn.chunk7.frelativeClauseStart = prelativeClauseStart$1(yyStart); return yyColumn.chunk7.frelativeClauseStart; } /** Actually parse xtc.lang.lojban.relativeClauseStart. */ private Result prelativeClauseStart$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pGOIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GOIClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "GOIClause", GOIClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pNOIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NOIClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "NOIClause", NOIClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.selbri. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri) yyColumn.chunk8.fselbri = pselbri$1(yyStart); return yyColumn.chunk8.fselbri; } /** Actually parse xtc.lang.lojban.selbri. */ private Result pselbri$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = ptag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String tagSEP1 = yyOpValue1; yyResult = pselbri1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "tag", tagSEP1, "normal", false ) + makeString( "selbri1", selbri1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.selbri1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri1(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri2SEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "selbri2", selbri2SEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pNAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAClauseSEP2 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair freeSEP3 = yyRepValue1.reverse(); yyResult = pselbri(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "NAClause", NAClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) + makeString( "selbri", selbriSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.selbri2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri2) yyColumn.chunk8.fselbri2 = pselbri2$1(yyStart); return yyColumn.chunk8.fselbri2; } /** Actually parse xtc.lang.lojban.selbri2. */ private Result pselbri2$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri3(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri3SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pselbri2$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$3 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "selbri3", selbri3SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.selbri2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri2$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pCOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String COClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = pselbri2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri2SEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "COClause", COClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "selbri2", selbri2SEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.selbri3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri3) yyColumn.chunk8.fselbri3 = pselbri3$1(yyStart); return yyColumn.chunk8.fselbri3; } /** Actually parse xtc.lang.lojban.selbri3. */ private Result pselbri3$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri3$$Plus1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair selbri4SEP1 = (Pair)yyResult.semanticValue(); yyValue = makeString( "selbri4", selbri4SEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.selbri3$$Plus1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri3$$Plus1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri3$$Plus1) yyColumn.chunk8.fselbri3$$Plus1 = pselbri3$$Plus1$1(yyStart); return yyColumn.chunk8.fselbri3$$Plus1; } /** Actually parse xtc.lang.lojban.selbri3$$Plus1. */ private Result pselbri3$$Plus1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri4(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pselbri3$$Plus1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pselbri4(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$3 = (String)yyResult.semanticValue(); yyValue = new Pair(v$3); return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.selbri4. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri4(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri4) yyColumn.chunk8.fselbri4 = pselbri4$1(yyStart); return yyColumn.chunk8.fselbri4; } /** Actually parse xtc.lang.lojban.selbri4. */ private Result pselbri4$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri5(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri5SEP1 = (String)yyResult.semanticValue(); yyResult = pselbri4$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "selbri5", selbri5SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.selbri4$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri4$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikJek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikJekSEP1 = (String)yyResult.semanticValue(); yyResult = pselbri5(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri5SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "joikJek", joikJekSEP1, "normal", false ) + makeString( "selbri5", selbri5SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pjoik(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP4 = yyOpValue1; yyResult = pKEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP5 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyResult = pselbri3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri3SEP7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String KEhEClauseSEP8 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP9 = (Pair)yyResult.semanticValue(); yyValue = makeString( "joik", joikSEP3, "normal", false ) + makeString( "stag", stagSEP4, "normal", false ) + makeString( "KEClause", KEClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) + makeString( "selbri3", selbri3SEP7, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP8, "normal", false ) + makeString( "free", freeSEP9, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.selbri4$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri4$$Star3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri4$$Star3) yyColumn.chunk8.fselbri4$$Star3 = pselbri4$$Star3$1(yyStart); return yyColumn.chunk8.fselbri4$$Star3; } /** Actually parse xtc.lang.lojban.selbri4$$Star3. */ private Result pselbri4$$Star3$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri4$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$7 = yyResult.semanticValue(); yyResult = pselbri4$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$8 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$7, v$8); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.selbri5. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri5(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri5) yyColumn.chunk8.fselbri5 = pselbri5$1(yyStart); return yyColumn.chunk8.fselbri5; } /** Actually parse xtc.lang.lojban.selbri5. */ private Result pselbri5$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pselbri6(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri6SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pselbri5$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$4 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "selbri6", selbri6SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.selbri5$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri5$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared5(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP2 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = pselbri5(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri5SEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "stag", stagSEP2, "normal", false ) + makeString( "BOClause", BOClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "selbri5", selbri5SEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.selbri6. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri6(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.fselbri6) yyColumn.chunk8.fselbri6 = pselbri6$1(yyStart); return yyColumn.chunk8.fselbri6; } /** Actually parse xtc.lang.lojban.selbri6. */ private Result pselbri6$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptanruUnit(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tanruUnitSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pselbri6$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$3 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "tanruUnit", tanruUnitSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 2. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pNAhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } Object NAhEClauseSEP3 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = pguhek(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String guhekSEP5 = (String)yyResult.semanticValue(); yyResult = pselbri(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP6 = (String)yyResult.semanticValue(); yyResult = pgik(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP7 = (String)yyResult.semanticValue(); yyResult = pselbri6(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri6SEP8 = (String)yyResult.semanticValue(); yyValue = makeString( "NAhEClause", NAhEClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "guhek", guhekSEP5, "normal", false ) + makeString( "selbri", selbriSEP6, "normal", false ) + makeString( "gik", gikSEP7, "normal", false ) + makeString( "selbri6", selbri6SEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.selbri6$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pselbri6$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = pselbri6(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri6SEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "BOClause", BOClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "selbri6", selbri6SEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.tanruUnit. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptanruUnit1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tanruUnit1SEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = ptanruUnit$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$2 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$2, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyValue = makeString( "tanruUnit1", tanruUnit1SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pCEIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String CEIClauseSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair freeSEP2 = yyRepValue1.reverse(); yyResult = ptanruUnit1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tanruUnit1SEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "CEIClause", CEIClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "tanruUnit1", tanruUnit1SEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.tanruUnit1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.ftanruUnit1) yyColumn.chunk8.ftanruUnit1 = ptanruUnit1$1(yyStart); return yyColumn.chunk8.ftanruUnit1; } /** Actually parse xtc.lang.lojban.tanruUnit1. */ private Result ptanruUnit1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptanruUnit2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tanruUnit2SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = plinkargs(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String linkargsSEP2 = yyOpValue1; yyValue = makeString( "tanruUnit2", tanruUnit2SEP1, "normal", false ) + makeString( "linkargs", linkargsSEP2, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.tanruUnit2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk8) yyColumn.chunk8 = new Chunk8(); if (null == yyColumn.chunk8.ftanruUnit2) yyColumn.chunk8.ftanruUnit2 = ptanruUnit2$1(yyStart); return yyColumn.chunk8.ftanruUnit2; } /** Actually parse xtc.lang.lojban.tanruUnit2. */ private Result ptanruUnit2$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBRIVLAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BRIVLAClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "BRIVLAClause", BRIVLAClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pGOhAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GOhAClauseSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pRAhOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String RAhOClauseSEP4 = yyOpValue1; yyResult = p$$Shared6(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyValue = makeString( "GOhAClause", GOhAClauseSEP3, "normal", false ) + makeString( "RAhOClause", RAhOClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 3. yyResult = pKEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP6 = (String)yyResult.semanticValue(); yyResult = p$$Shared13(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyResult = pselbri3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbri3SEP8 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$8 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$8; } String KEhEClauseSEP9 = yyOpValue1; yyResult = p$$Shared24(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP10 = (Pair)yyResult.semanticValue(); yyValue = makeString( "KEClause", KEClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) + makeString( "selbri3", selbri3SEP8, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP9, "normal", false ) + makeString( "free", freeSEP10, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 4. yyResult = pMEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String MEClauseSEP11 = (String)yyResult.semanticValue(); yyResult = p$$Shared16(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP12 = (Pair)yyResult.semanticValue(); yyResult = ptanruUnit2$$Choice1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen13 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pMEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$13 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$13; } String MEhUClauseSEP14 = yyOpValue1; yyResult = p$$Shared25(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP15 = (Pair)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pMOIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$16 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$16; } String MOIClauseSEP16 = yyOpValue1; yyResult = ptanruUnit2$$Star7(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP17 = (Pair)yyResult.semanticValue(); yyValue = makeString( "MEClause", MEClauseSEP11, "normal", false ) + makeString( "free", freeSEP12, "normal", false ) + makeString( "PARSERparen13", PARSERparen13, "parserParen", false ) + makeString( "MEhUClause", MEhUClauseSEP14, "normal", false ) + makeString( "free", freeSEP15, "normal", false ) + makeString( "MOIClause", MOIClauseSEP16, "normal", false ) + makeString( "free", freeSEP17, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Alternative 5. yyResult = p$$Shared26(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen18 = yyResult.semanticValue(); yyResult = pMOIClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String MOIClauseSEP19 = (String)yyResult.semanticValue(); yyResult = p$$Shared19(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP20 = (Pair)yyResult.semanticValue(); yyValue = makeString( "PARSERparen18", PARSERparen18, "parserParen", false ) + makeString( "MOIClause", MOIClauseSEP19, "normal", false ) + makeString( "free", freeSEP20, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 6. yyResult = pNUhAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NUhAClauseSEP21 = (String)yyResult.semanticValue(); yyResult = p$$Shared20(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP22 = (Pair)yyResult.semanticValue(); yyResult = pmexOperator(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexOperatorSEP23 = (String)yyResult.semanticValue(); yyValue = makeString( "NUhAClause", NUhAClauseSEP21, "normal", false ) + makeString( "free", freeSEP22, "normal", false ) + makeString( "mexOperator", mexOperatorSEP23, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 7. yyResult = pSEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SEClauseSEP24 = (String)yyResult.semanticValue(); yyResult = p$$Shared21(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP25 = (Pair)yyResult.semanticValue(); yyResult = ptanruUnit2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tanruUnit2SEP26 = (String)yyResult.semanticValue(); yyValue = makeString( "SEClause", SEClauseSEP24, "normal", false ) + makeString( "free", freeSEP25, "normal", false ) + makeString( "tanruUnit2", tanruUnit2SEP26, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 8. yyResult = pJAIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String JAIClauseSEP27 = (String)yyResult.semanticValue(); yyResult = ptanruUnit2$$Star11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP28 = (Pair)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = ptag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$27 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$27; } String tagSEP29 = yyOpValue1; yyResult = ptanruUnit2(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tanruUnit2SEP30 = (String)yyResult.semanticValue(); yyValue = makeString( "JAIClause", JAIClauseSEP27, "normal", false ) + makeString( "free", freeSEP28, "normal", false ) + makeString( "tag", tagSEP29, "normal", false ) + makeString( "tanruUnit2", tanruUnit2SEP30, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 9. yyResult = pNAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhEClauseSEP31 = (String)yyResult.semanticValue(); yyResult = ptanruUnit2$$Star12(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP32 = (Pair)yyResult.semanticValue(); yyResult = ptanruUnit2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tanruUnit2SEP33 = (String)yyResult.semanticValue(); yyValue = makeString( "NAhEClause", NAhEClauseSEP31, "normal", false ) + makeString( "free", freeSEP32, "normal", false ) + makeString( "tanruUnit2", tanruUnit2SEP33, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 10. yyResult = pNUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NUClauseSEP34 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$30 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$30; } String NAIClauseSEP35 = yyOpValue1; yyResult = p$$Shared22(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP36 = (Pair)yyResult.semanticValue(); yyResult = ptanruUnit2$$Star15(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen37 = (Pair)yyResult.semanticValue(); yyResult = psubsentence(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String subsentenceSEP38 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$38 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$38; } String KEIClauseSEP39 = yyOpValue1; yyResult = ptanruUnit2$$Star16(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP40 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NUClause", NUClauseSEP34, "normal", false ) + makeString( "NAIClause", NAIClauseSEP35, "normal", false ) + makeString( "free", freeSEP36, "normal", false ) + makeString( "PARSERparen37", PARSERparen37, "parserParen", false ) + makeString( "subsentence", subsentenceSEP38, "normal", false ) + makeString( "KEIClause", KEIClauseSEP39, "normal", false ) + makeString( "free", freeSEP40, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psumti(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "sumti", sumtiSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = plerfuString(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuStringSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "lerfuString", lerfuStringSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared25. * This nonterminal represents the duplicate productions * xtc.lang.lojban.tanruUnit2$$Star6 and xtc.lang.lojban.operand3$$Star6. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared25(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.f$$Shared25) yyColumn.chunk9.f$$Shared25 = p$$Shared25$1(yyStart); return yyColumn.chunk9.f$$Shared25; } /** Actually parse xtc.lang.lojban.$$Shared25. */ private Result p$$Shared25$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$14 = (String)yyResult.semanticValue(); yyResult = p$$Shared25(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$15 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$14, v$15); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit2$$Star7. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2$$Star7(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.ftanruUnit2$$Star7) yyColumn.chunk9.ftanruUnit2$$Star7 = ptanruUnit2$$Star7$1(yyStart); return yyColumn.chunk9.ftanruUnit2$$Star7; } /** Actually parse xtc.lang.lojban.tanruUnit2$$Star7. */ private Result ptanruUnit2$$Star7$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$17 = (String)yyResult.semanticValue(); yyResult = ptanruUnit2$$Star7(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$18 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$17, v$18); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared26. * This nonterminal represents the duplicate productions * xtc.lang.lojban.tanruUnit2$$Choice2 and xtc.lang.lojban.free$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared26(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.f$$Shared26) yyColumn.chunk9.f$$Shared26 = p$$Shared26$1(yyStart); return yyColumn.chunk9.f$$Shared26; } /** Actually parse xtc.lang.lojban.$$Shared26. */ private Result p$$Shared26$1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pnumber(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String numberSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "number", numberSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = plerfuString(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuStringSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "lerfuString", lerfuStringSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit2$$Star11. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2$$Star11(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.ftanruUnit2$$Star11) yyColumn.chunk9.ftanruUnit2$$Star11 = ptanruUnit2$$Star11$1(yyStart); return yyColumn.chunk9.ftanruUnit2$$Star11; } /** Actually parse xtc.lang.lojban.tanruUnit2$$Star11. */ private Result ptanruUnit2$$Star11$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$25 = (String)yyResult.semanticValue(); yyResult = ptanruUnit2$$Star11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$26 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$25, v$26); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit2$$Star12. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2$$Star12(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.ftanruUnit2$$Star12) yyColumn.chunk9.ftanruUnit2$$Star12 = ptanruUnit2$$Star12$1(yyStart); return yyColumn.chunk9.ftanruUnit2$$Star12; } /** Actually parse xtc.lang.lojban.tanruUnit2$$Star12. */ private Result ptanruUnit2$$Star12$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$28 = (String)yyResult.semanticValue(); yyResult = ptanruUnit2$$Star12(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$29 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$28, v$29); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit2$$Choice3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2$$Choice3(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikJek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikJekSEP1 = (String)yyResult.semanticValue(); yyResult = pNUClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NUClauseSEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$33 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$33; } String NAIClauseSEP3 = yyOpValue1; yyResult = p$$Shared23(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "joikJek", joikJekSEP1, "normal", false ) + makeString( "NUClause", NUClauseSEP2, "normal", false ) + makeString( "NAIClause", NAIClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit2$$Star15. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2$$Star15(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.ftanruUnit2$$Star15) yyColumn.chunk9.ftanruUnit2$$Star15 = ptanruUnit2$$Star15$1(yyStart); return yyColumn.chunk9.ftanruUnit2$$Star15; } /** Actually parse xtc.lang.lojban.tanruUnit2$$Star15. */ private Result ptanruUnit2$$Star15$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptanruUnit2$$Choice3(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$36 = yyResult.semanticValue(); yyResult = ptanruUnit2$$Star15(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$37 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$36, v$37); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tanruUnit2$$Star16. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptanruUnit2$$Star16(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.ftanruUnit2$$Star16) yyColumn.chunk9.ftanruUnit2$$Star16 = ptanruUnit2$$Star16$1(yyStart); return yyColumn.chunk9.ftanruUnit2$$Star16; } /** Actually parse xtc.lang.lojban.tanruUnit2$$Star16. */ private Result ptanruUnit2$$Star16$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$39 = (String)yyResult.semanticValue(); yyResult = ptanruUnit2$$Star16(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$40 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$39, v$40); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.linkargs. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinkargs(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.flinkargs) yyColumn.chunk9.flinkargs = plinkargs$1(yyStart); return yyColumn.chunk9.flinkargs; } /** Actually parse xtc.lang.lojban.linkargs. */ private Result plinkargs$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = plinkargs$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair linkargsSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = plinkargs1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String linkargs1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "linkargsSa", linkargsSaSEP1, "normal", false ) + makeString( "linkargs1", linkargs1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.linkargs$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinkargs$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.flinkargs$$Star1) yyColumn.chunk9.flinkargs$$Star1 = plinkargs$$Star1$1(yyStart); return yyColumn.chunk9.flinkargs$$Star1; } /** Actually parse xtc.lang.lojban.linkargs$$Star1. */ private Result plinkargs$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = plinkargsSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = plinkargs$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.linkargs1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinkargs1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk9) yyColumn.chunk9 = new Chunk9(); if (null == yyColumn.chunk9.flinkargs1) yyColumn.chunk9.flinkargs1 = plinkargs1$1(yyStart); return yyColumn.chunk9.flinkargs1; } /** Actually parse xtc.lang.lojban.linkargs1. */ private Result plinkargs1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BEClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = pterm(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = plinks(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String linksSEP4 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pBEhOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String BEhOClauseSEP5 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyValue = makeString( "BEClause", BEClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "term", termSEP3, "normal", false ) + makeString( "links", linksSEP4, "normal", false ) + makeString( "BEhOClause", BEhOClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.linkargsSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinkargsSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = plinkargsStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String linkargsStartSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = plinkargsSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = plinkargs1(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "linkargsStart", linkargsStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.linkargsSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinkargsSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = plinkargsStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("linkargs sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.linkargsSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinkargsSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = plinkargsStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = plinkargsSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("linkargs sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.linkargsStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinkargsStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.flinkargsStart) yyColumn.chunk10.flinkargsStart = plinkargsStart$1(yyStart); return yyColumn.chunk10.flinkargsStart; } /** Actually parse xtc.lang.lojban.linkargsStart. */ private Result plinkargsStart$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BEClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "BEClause", BEClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.links. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinks(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.flinks) yyColumn.chunk10.flinks = plinks$1(yyStart); return yyColumn.chunk10.flinks; } /** Actually parse xtc.lang.lojban.links. */ private Result plinks$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = plinks$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair linksSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = plinks1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String links1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "linksSa", linksSaSEP1, "normal", false ) + makeString( "links1", links1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.links$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinks$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.flinks$$Star1) yyColumn.chunk10.flinks$$Star1 = plinks$$Star1$1(yyStart); return yyColumn.chunk10.flinks$$Star1; } /** Actually parse xtc.lang.lojban.links$$Star1. */ private Result plinks$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = plinksSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = plinks$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.links1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinks1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.flinks1) yyColumn.chunk10.flinks1 = plinks1$1(yyStart); return yyColumn.chunk10.flinks1; } /** Actually parse xtc.lang.lojban.links1. */ private Result plinks1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBEIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BEIClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = pterm(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String termSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = plinks(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String linksSEP4 = yyOpValue1; yyValue = makeString( "BEIClause", BEIClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "term", termSEP3, "normal", false ) + makeString( "links", linksSEP4, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.linksSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinksSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = plinksStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String linksStartSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = plinksSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = plinks1(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "linksStart", linksStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.linksSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinksSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = plinksStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("links sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.linksSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinksSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = plinksStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = plinksSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("links sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.linksStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plinksStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.flinksStart) yyColumn.chunk10.flinksStart = plinksStart$1(yyStart); return yyColumn.chunk10.flinksStart; } /** Actually parse xtc.lang.lojban.linksStart. */ private Result plinksStart$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBEIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BEIClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "BEIClause", BEIClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.quantifier. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pquantifier(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.fquantifier) yyColumn.chunk10.fquantifier = pquantifier$1(yyStart); return yyColumn.chunk10.fquantifier; } /** Actually parse xtc.lang.lojban.quantifier. */ private Result pquantifier$1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pnumber(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String numberSEP1 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pMOIClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pBOIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String BOIClauseSEP2 = yyOpValue1; yyResult = p$$Shared11(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyValue = makeString( "number", numberSEP1, "normal", false ) + makeString( "BOIClause", BOIClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("quantifier expected", yyStart); } } // Alternative 2. yyResult = pVEIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String VEIClauseSEP4 = (String)yyResult.semanticValue(); yyResult = p$$Shared6(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyResult = pmex(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexSEP6 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pVEhOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$6 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$6; } String VEhOClauseSEP7 = yyOpValue1; yyResult = p$$Shared15(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP8 = (Pair)yyResult.semanticValue(); yyValue = makeString( "VEIClause", VEIClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) + makeString( "mex", mexSEP6, "normal", false ) + makeString( "VEhOClause", VEhOClauseSEP7, "normal", false ) + makeString( "free", freeSEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mex. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.fmex) yyColumn.chunk10.fmex = pmex$1(yyStart); return yyColumn.chunk10.fmex; } /** Actually parse xtc.lang.lojban.mex. */ private Result pmex$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmex$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair mexSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = pmex0(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mex0SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "mexSa", mexSaSEP1, "normal", false ) + makeString( "mex0", mex0SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.mex$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.fmex$$Star1) yyColumn.chunk10.fmex$$Star1 = pmex$$Star1$1(yyStart); return yyColumn.chunk10.fmex$$Star1; } /** Actually parse xtc.lang.lojban.mex$$Star1. */ private Result pmex$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmexSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pmex$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mex0. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex0(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.fmex0) yyColumn.chunk10.fmex0 = pmex0$1(yyStart); return yyColumn.chunk10.fmex0; } /** Actually parse xtc.lang.lojban.mex0. */ private Result pmex0$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmex1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mex1SEP1 = (String)yyResult.semanticValue(); yyResult = pmex0$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "mex1", mex1SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = prpClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String rpClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "rpClause", rpClauseSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.mex0$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex0$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperator(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operatorSEP1 = (String)yyResult.semanticValue(); yyResult = pmex1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mex1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "operator", operatorSEP1, "normal", false ) + makeString( "mex1", mex1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.mex0$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex0$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk10) yyColumn.chunk10 = new Chunk10(); if (null == yyColumn.chunk10.fmex0$$Star1) yyColumn.chunk10.fmex0$$Star1 = pmex0$$Star1$1(yyStart); return yyColumn.chunk10.fmex0$$Star1; } /** Actually parse xtc.lang.lojban.mex0$$Star1. */ private Result pmex0$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmex0$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$1 = yyResult.semanticValue(); yyResult = pmex0$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mexSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmexSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmexStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexStartSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pmexSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = pmex0(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "mexStart", mexStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.mexSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmexSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pmexStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("mex sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.mexSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmexSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = pmexStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = pmexSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("mex sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mexStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmexStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.fmexStart) yyColumn.chunk11.fmexStart = pmexStart$1(yyStart); return yyColumn.chunk11.fmexStart; } /** Actually parse xtc.lang.lojban.mexStart. */ private Result pmexStart$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pFUhAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String FUhAClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "FUhAClause", FUhAClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pPEhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String PEhOClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "PEhOClause", PEhOClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 3. yyResult = poperandStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operandStartSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "operandStart", operandStartSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.rpClause. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prpClause(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pFUhAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String FUhAClauseSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair freeSEP2 = yyRepValue1.reverse(); yyResult = prpExpression(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String rpExpressionSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "FUhAClause", FUhAClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "rpExpression", rpExpressionSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mex1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.fmex1) yyColumn.chunk11.fmex1 = pmex1$1(yyStart); return yyColumn.chunk11.fmex1; } /** Actually parse xtc.lang.lojban.mex1. */ private Result pmex1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmex2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mex2SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pmex1$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$3 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "mex2", mex2SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.mex1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex1$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBIhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BIhEClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = poperator(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operatorSEP3 = (String)yyResult.semanticValue(); yyResult = pmex1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mex1SEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "BIhEClause", BIhEClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "operator", operatorSEP3, "normal", false ) + makeString( "mex1", mex1SEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mex2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmex2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.fmex2) yyColumn.chunk11.fmex2 = pmex2$1(yyStart); return yyColumn.chunk11.fmex2; } /** Actually parse xtc.lang.lojban.mex2. */ private Result pmex2$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperand(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operandSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "operand", operandSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pmexForethought(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexForethoughtSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "mexForethought", mexForethoughtSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mexForethought. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmexForethought(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pPEhOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String PEhOClauseSEP1 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$2, yyRepValue1); continue; } break; } Pair freeSEP2 = yyRepValue1.reverse(); yyResult = poperator(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operatorSEP3 = (String)yyResult.semanticValue(); yyResult = pforeOperands(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String foreOperandsSEP4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKUhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String KUhEClauseSEP5 = yyOpValue1; yyRepetition1 = yyOption1; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pfree(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$4, yyRepValue1); continue; } break; } Pair freeSEP6 = yyRepValue1.reverse(); yyValue = makeString( "PEhOClause", PEhOClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "operator", operatorSEP3, "normal", false ) + makeString( "foreOperands", foreOperandsSEP4, "normal", false ) + makeString( "KUhEClause", KUhEClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.foreOperands. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pforeOperands(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; boolean yyRepeated1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyRepetition1 = yyStart; yyRepeated1 = false; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pmex2(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepeated1 = true; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } if (yyRepeated1) { Pair mex2SEP1 = yyRepValue1.reverse(); yyValue = makeString( "mex2", mex2SEP1, "normal", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.rpExpression. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prpExpression(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.frpExpression) yyColumn.chunk11.frpExpression = prpExpression$1(yyStart); return yyColumn.chunk11.frpExpression; } /** Actually parse xtc.lang.lojban.rpExpression. */ private Result prpExpression$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperand(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operandSEP1 = (String)yyResult.semanticValue(); yyResult = prpExpressionTail(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String rpExpressionTailSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "operand", operandSEP1, "normal", false ) + makeString( "rpExpressionTail", rpExpressionTailSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.rpExpressionTail. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result prpExpressionTail(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.frpExpressionTail) yyColumn.chunk11.frpExpressionTail = prpExpressionTail$1(yyStart); return yyColumn.chunk11.frpExpressionTail; } /** Actually parse xtc.lang.lojban.rpExpressionTail. */ private Result prpExpressionTail$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = prpExpression(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String rpExpressionSEP1 = (String)yyResult.semanticValue(); yyResult = poperator(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operatorSEP2 = (String)yyResult.semanticValue(); yyResult = prpExpressionTail(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String rpExpressionTailSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "rpExpression", rpExpressionSEP1, "normal", false ) + makeString( "operator", operatorSEP2, "normal", false ) + makeString( "rpExpressionTail", rpExpressionTailSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 2. yyValue = "" ; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operator. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperator(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.foperator) yyColumn.chunk11.foperator = poperator$1(yyStart); return yyColumn.chunk11.foperator; } /** Actually parse xtc.lang.lojban.operator. */ private Result poperator$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperator$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair operatorSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = poperator0(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator0SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "operatorSa", operatorSaSEP1, "normal", false ) + makeString( "operator0", operator0SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operator$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperator$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.foperator$$Star1) yyColumn.chunk11.foperator$$Star1 = poperator$$Star1$1(yyStart); return yyColumn.chunk11.foperator$$Star1; } /** Actually parse xtc.lang.lojban.operator$$Star1. */ private Result poperator$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperatorSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = poperator$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operator0. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperator0(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.foperator0) yyColumn.chunk11.foperator0 = poperator0$1(yyStart); return yyColumn.chunk11.foperator0; } /** Actually parse xtc.lang.lojban.operator0. */ private Result poperator0$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperator1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator1SEP1 = (String)yyResult.semanticValue(); yyResult = poperator0$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "operator1", operator1SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operator0$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperator0$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikJek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikJekSEP1 = (String)yyResult.semanticValue(); yyResult = poperator1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "joikJek", joikJekSEP1, "normal", false ) + makeString( "operator1", operator1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pjoik(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP4 = yyOpValue1; yyResult = pKEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP5 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyResult = poperator(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operatorSEP7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String KEhEClauseSEP8 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP9 = (Pair)yyResult.semanticValue(); yyValue = makeString( "joik", joikSEP3, "normal", false ) + makeString( "stag", stagSEP4, "normal", false ) + makeString( "KEClause", KEClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) + makeString( "operator", operatorSEP7, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP8, "normal", false ) + makeString( "free", freeSEP9, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operator0$$Star3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperator0$$Star3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.foperator0$$Star3) yyColumn.chunk11.foperator0$$Star3 = poperator0$$Star3$1(yyStart); return yyColumn.chunk11.foperator0$$Star3; } /** Actually parse xtc.lang.lojban.operator0$$Star3. */ private Result poperator0$$Star3$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperator0$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$7 = yyResult.semanticValue(); yyResult = poperator0$$Star3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$8 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$7, v$8); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operatorSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperatorSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperatorStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operatorStartSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = poperatorSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = poperator0(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "operatorStart", operatorStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operatorSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperatorSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = poperatorStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("operator sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operatorSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperatorSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = poperatorStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = poperatorSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("operator sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operatorStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperatorStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk11) yyColumn.chunk11 = new Chunk11(); if (null == yyColumn.chunk11.foperatorStart) yyColumn.chunk11.foperatorStart = poperatorStart$1(yyStart); return yyColumn.chunk11.foperatorStart; } /** Actually parse xtc.lang.lojban.operatorStart. */ private Result poperatorStart$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pguhek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String guhekSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "guhek", guhekSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pKEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "KEClause", KEClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 3. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String SEClauseSEP3 = yyOpValue1; yyResult = pNAhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhEClauseSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "SEClause", SEClauseSEP3, "normal", false ) + makeString( "NAhEClause", NAhEClauseSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 4. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String SEClauseSEP5 = yyOpValue1; yyResult = pMAhOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String MAhOClauseSEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "SEClause", SEClauseSEP5, "normal", false ) + makeString( "MAhOClause", MAhOClauseSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 5. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String SEClauseSEP7 = yyOpValue1; yyResult = pVUhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String VUhUClauseSEP8 = (String)yyResult.semanticValue(); yyValue = makeString( "SEClause", SEClauseSEP7, "normal", false ) + makeString( "VUhUClause", VUhUClauseSEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operator1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperator1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperator1) yyColumn.chunk12.foperator1 = poperator1$1(yyStart); return yyColumn.chunk12.foperator1; } /** Actually parse xtc.lang.lojban.operator1. */ private Result poperator1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperator2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator2SEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "operator2", operator2SEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pguhek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String guhekSEP2 = (String)yyResult.semanticValue(); yyResult = poperator1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator1SEP3 = (String)yyResult.semanticValue(); yyResult = pgik(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP4 = (String)yyResult.semanticValue(); yyResult = poperator2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator2SEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "guhek", guhekSEP2, "normal", false ) + makeString( "operator1", operator1SEP3, "normal", false ) + makeString( "gik", gikSEP4, "normal", false ) + makeString( "operator2", operator2SEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 3. yyResult = poperator2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator2SEP6 = (String)yyResult.semanticValue(); yyResult = p$$Shared5(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen7 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP8 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP9 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP10 = (Pair)yyResult.semanticValue(); yyResult = poperator1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operator1SEP11 = (String)yyResult.semanticValue(); yyValue = makeString( "operator2", operator2SEP6, "normal", false ) + makeString( "PARSERparen7", PARSERparen7, "parserParen", false ) + makeString( "stag", stagSEP8, "normal", false ) + makeString( "BOClause", BOClauseSEP9, "normal", false ) + makeString( "free", freeSEP10, "normal", false ) + makeString( "operator1", operator1SEP11, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operator2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperator2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperator2) yyColumn.chunk12.foperator2 = poperator2$1(yyStart); return yyColumn.chunk12.foperator2; } /** Actually parse xtc.lang.lojban.operator2. */ private Result poperator2$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmexOperator(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexOperatorSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "mexOperator", mexOperatorSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pKEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP2 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyResult = poperator(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operatorSEP4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String KEhEClauseSEP5 = yyOpValue1; yyResult = p$$Shared6(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyValue = makeString( "KEClause", KEClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) + makeString( "operator", operatorSEP4, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.mexOperator. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pmexOperator(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.fmexOperator) yyColumn.chunk12.fmexOperator = pmexOperator$1(yyStart); return yyColumn.chunk12.fmexOperator; } /** Actually parse xtc.lang.lojban.mexOperator. */ private Result pmexOperator$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pSEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SEClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyResult = pmexOperator(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexOperatorSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "SEClause", SEClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) + makeString( "mexOperator", mexOperatorSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 2. yyResult = pNAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhEClauseSEP4 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyResult = pmexOperator(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexOperatorSEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "NAhEClause", NAhEClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) + makeString( "mexOperator", mexOperatorSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 3. yyResult = pMAhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String MAhOClauseSEP7 = (String)yyResult.semanticValue(); yyResult = p$$Shared12(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP8 = (Pair)yyResult.semanticValue(); yyResult = pmex(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String mexSEP9 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pTEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$7; } String TEhUClauseSEP10 = yyOpValue1; yyResult = p$$Shared10(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP11 = (Pair)yyResult.semanticValue(); yyValue = makeString( "MAhOClause", MAhOClauseSEP7, "normal", false ) + makeString( "free", freeSEP8, "normal", false ) + makeString( "mex", mexSEP9, "normal", false ) + makeString( "TEhUClause", TEhUClauseSEP10, "normal", false ) + makeString( "free", freeSEP11, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 4. yyResult = pNAhUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhUClauseSEP12 = (String)yyResult.semanticValue(); yyResult = p$$Shared7(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP13 = (Pair)yyResult.semanticValue(); yyResult = pselbri(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP14 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pTEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$12 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$12; } String TEhUClauseSEP15 = yyOpValue1; yyResult = p$$Shared17(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP16 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NAhUClause", NAhUClauseSEP12, "normal", false ) + makeString( "free", freeSEP13, "normal", false ) + makeString( "selbri", selbriSEP14, "normal", false ) + makeString( "TEhUClause", TEhUClauseSEP15, "normal", false ) + makeString( "free", freeSEP16, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 5. yyResult = pVUhUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String VUhUClauseSEP17 = (String)yyResult.semanticValue(); yyResult = p$$Shared18(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP18 = (Pair)yyResult.semanticValue(); yyValue = makeString( "VUhUClause", VUhUClauseSEP17, "normal", false ) + makeString( "free", freeSEP18, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operand. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperand) yyColumn.chunk12.foperand = poperand$1(yyStart); return yyColumn.chunk12.foperand; } /** Actually parse xtc.lang.lojban.operand. */ private Result poperand$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperand$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair operandSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = poperand0(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operand0SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "operandSa", operandSaSEP1, "normal", false ) + makeString( "operand0", operand0SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperand$$Star1) yyColumn.chunk12.foperand$$Star1 = poperand$$Star1$1(yyStart); return yyColumn.chunk12.foperand$$Star1; } /** Actually parse xtc.lang.lojban.operand$$Star1. */ private Result poperand$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperandSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = poperand$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operand0. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand0(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperand0) yyColumn.chunk12.foperand0 = poperand0$1(yyStart); return yyColumn.chunk12.foperand0; } /** Actually parse xtc.lang.lojban.operand0. */ private Result poperand0$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperand1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operand1SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = poperand0$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$7 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$7; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "operand1", operand1SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand0$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand0$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEkSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP2 = yyOpValue1; yyResult = pKEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KEClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = poperand(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operandSEP5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKEhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String KEhEClauseSEP6 = yyOpValue1; yyResult = p$$Shared12(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyValue = makeString( "joikEk", joikEkSEP1, "normal", false ) + makeString( "stag", stagSEP2, "normal", false ) + makeString( "KEClause", KEClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "operand", operandSEP5, "normal", false ) + makeString( "KEhEClause", KEhEClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operandSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperandSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperandStart(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operandStartSEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = poperandSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = poperand0(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "operandStart", operandStartSEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operandSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperandSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = poperandStart(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("operand sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operandSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperandSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = poperandStart(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = poperandSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("operand sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operandStart. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperandStart(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperandStart) yyColumn.chunk12.foperandStart = poperandStart$1(yyStart); return yyColumn.chunk12.foperandStart; } /** Actually parse xtc.lang.lojban.operandStart. */ private Result poperandStart$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pquantifier(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String quantifierSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "quantifier", quantifierSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = plerfuWord(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuWordSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "lerfuWord", lerfuWordSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 3. yyResult = pNIhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NIhEClauseSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "NIhEClause", NIhEClauseSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 4. yyResult = pMOhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String MOhEClauseSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "MOhEClause", MOhEClauseSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 5. yyResult = pJOhIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String JOhIClauseSEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "JOhIClause", JOhIClauseSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 6. yyResult = pgek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "gek", gekSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 7. yyResult = pLAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAhEClauseSEP7 = (String)yyResult.semanticValue(); yyValue = makeString( "LAhEClause", LAhEClauseSEP7, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 8. yyResult = pNAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhEClauseSEP8 = (String)yyResult.semanticValue(); yyValue = makeString( "NAhEClause", NAhEClauseSEP8, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operand1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand1(final int yyStart) throws IOException { Result yyResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperand2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operand2SEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = poperand1$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyValue = makeString( "operand2", operand2SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyRepetition1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand1$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEkSEP1 = (String)yyResult.semanticValue(); yyResult = poperand2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operand2SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "joikEk", joikEkSEP1, "normal", false ) + makeString( "operand2", operand2SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operand2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperand2) yyColumn.chunk12.foperand2 = poperand2$1(yyStart); return yyColumn.chunk12.foperand2; } /** Actually parse xtc.lang.lojban.operand2. */ private Result poperand2$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; Object yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = poperand3(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operand3SEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = poperand2$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$4 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } Object PARSERparen2 = yyOpValue1; yyValue = makeString( "operand3", operand3SEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand2$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand2$$Choice1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEkSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pstag(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String stagSEP2 = yyOpValue1; yyResult = pBOClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared11(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = poperand2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operand2SEP5 = (String)yyResult.semanticValue(); yyValue = makeString( "joikEk", joikEkSEP1, "normal", false ) + makeString( "stag", stagSEP2, "normal", false ) + makeString( "BOClause", BOClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "operand2", operand2SEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.operand3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperand3) yyColumn.chunk12.foperand3 = poperand3$1(yyStart); return yyColumn.chunk12.foperand3; } /** Actually parse xtc.lang.lojban.operand3. */ private Result poperand3$1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pquantifier(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String quantifierSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "quantifier", quantifierSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = plerfuString(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuStringSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pMOIClause(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pBOIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String BOIClauseSEP3 = yyOpValue1; yyResult = p$$Shared11(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "lerfuString", lerfuStringSEP2, "normal", false ) + makeString( "BOIClause", BOIClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("operand3 expected", yyStart); } } // Alternative 3. yyResult = pNIhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NIhEClauseSEP5 = (String)yyResult.semanticValue(); yyResult = p$$Shared6(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP6 = (Pair)yyResult.semanticValue(); yyResult = pselbri(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pTEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$6 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$6; } String TEhUClauseSEP8 = yyOpValue1; yyResult = p$$Shared15(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP9 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NIhEClause", NIhEClauseSEP5, "normal", false ) + makeString( "free", freeSEP6, "normal", false ) + makeString( "selbri", selbriSEP7, "normal", false ) + makeString( "TEhUClause", TEhUClauseSEP8, "normal", false ) + makeString( "free", freeSEP9, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 4. yyResult = pMOhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String MOhEClauseSEP10 = (String)yyResult.semanticValue(); yyResult = p$$Shared24(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP11 = (Pair)yyResult.semanticValue(); yyResult = psumti(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String sumtiSEP12 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pTEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$11 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$11; } String TEhUClauseSEP13 = yyOpValue1; yyResult = poperand3$$Star5(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP14 = (Pair)yyResult.semanticValue(); yyValue = makeString( "MOhEClause", MOhEClauseSEP10, "normal", false ) + makeString( "free", freeSEP11, "normal", false ) + makeString( "sumti", sumtiSEP12, "normal", false ) + makeString( "TEhUClause", TEhUClauseSEP13, "normal", false ) + makeString( "free", freeSEP14, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 5. yyResult = pJOhIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String JOhIClauseSEP15 = (String)yyResult.semanticValue(); yyResult = p$$Shared25(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP16 = (Pair)yyResult.semanticValue(); yyResult = poperand3$$Plus1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair mex2SEP17 = (Pair)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pTEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$19 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$19; } String TEhUClauseSEP18 = yyOpValue1; yyResult = poperand3$$Star7(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP19 = (Pair)yyResult.semanticValue(); yyValue = makeString( "JOhIClause", JOhIClauseSEP15, "normal", false ) + makeString( "free", freeSEP16, "normal", false ) + makeString( "mex2", mex2SEP17, "normal", false ) + makeString( "TEhUClause", TEhUClauseSEP18, "normal", false ) + makeString( "free", freeSEP19, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 6. yyResult = pgek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gekSEP20 = (String)yyResult.semanticValue(); yyResult = poperand(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operandSEP21 = (String)yyResult.semanticValue(); yyResult = pgik(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP22 = (String)yyResult.semanticValue(); yyResult = poperand3(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operand3SEP23 = (String)yyResult.semanticValue(); yyValue = makeString( "gek", gekSEP20, "normal", false ) + makeString( "operand", operandSEP21, "normal", false ) + makeString( "gik", gikSEP22, "normal", false ) + makeString( "operand3", operand3SEP23, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Alternative 7. yyResult = poperand3$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen24 = yyResult.semanticValue(); yyResult = poperand(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String operandSEP25 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pLUhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$26 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$26; } String LUhUClauseSEP26 = yyOpValue1; yyResult = poperand3$$Star10(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP27 = (Pair)yyResult.semanticValue(); yyValue = makeString( "PARSERparen24", PARSERparen24, "parserParen", false ) + makeString( "operand", operandSEP25, "normal", false ) + makeString( "LUhUClause", LUhUClauseSEP26, "normal", false ) + makeString( "free", freeSEP27, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand3$$Star5. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3$$Star5(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk12) yyColumn.chunk12 = new Chunk12(); if (null == yyColumn.chunk12.foperand3$$Star5) yyColumn.chunk12.foperand3$$Star5 = poperand3$$Star5$1(yyStart); return yyColumn.chunk12.foperand3$$Star5; } /** Actually parse xtc.lang.lojban.operand3$$Star5. */ private Result poperand3$$Star5$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$12 = (String)yyResult.semanticValue(); yyResult = poperand3$$Star5(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$13 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$12, v$13); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand3$$Plus1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3$$Plus1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.foperand3$$Plus1) yyColumn.chunk13.foperand3$$Plus1 = poperand3$$Plus1$1(yyStart); return yyColumn.chunk13.foperand3$$Plus1; } /** Actually parse xtc.lang.lojban.operand3$$Plus1. */ private Result poperand3$$Plus1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pmex2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$16 = (String)yyResult.semanticValue(); yyResult = poperand3$$Plus1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$17 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$16, v$17); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pmex2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$18 = (String)yyResult.semanticValue(); yyValue = new Pair(v$18); return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand3$$Star7. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3$$Star7(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.foperand3$$Star7) yyColumn.chunk13.foperand3$$Star7 = poperand3$$Star7$1(yyStart); return yyColumn.chunk13.foperand3$$Star7; } /** Actually parse xtc.lang.lojban.operand3$$Star7. */ private Result poperand3$$Star7$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$20 = (String)yyResult.semanticValue(); yyResult = poperand3$$Star7(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$21 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$20, v$21); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand3$$Star8. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3$$Star8(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.foperand3$$Star8) yyColumn.chunk13.foperand3$$Star8 = poperand3$$Star8$1(yyStart); return yyColumn.chunk13.foperand3$$Star8; } /** Actually parse xtc.lang.lojban.operand3$$Star8. */ private Result poperand3$$Star8$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$22 = (String)yyResult.semanticValue(); yyResult = poperand3$$Star8(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$23 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$22, v$23); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand3$$Star9. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3$$Star9(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.foperand3$$Star9) yyColumn.chunk13.foperand3$$Star9 = poperand3$$Star9$1(yyStart); return yyColumn.chunk13.foperand3$$Star9; } /** Actually parse xtc.lang.lojban.operand3$$Star9. */ private Result poperand3$$Star9$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$24 = (String)yyResult.semanticValue(); yyResult = poperand3$$Star9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$25 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$24, v$25); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand3$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pLAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAhEClauseSEP1 = (String)yyResult.semanticValue(); yyResult = poperand3$$Star8(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "LAhEClause", LAhEClauseSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pNAhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String NAhEClauseSEP3 = (String)yyResult.semanticValue(); yyResult = pBOClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BOClauseSEP4 = (String)yyResult.semanticValue(); yyResult = poperand3$$Star9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP5 = (Pair)yyResult.semanticValue(); yyValue = makeString( "NAhEClause", NAhEClauseSEP3, "normal", false ) + makeString( "BOClause", BOClauseSEP4, "normal", false ) + makeString( "free", freeSEP5, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.operand3$$Star10. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result poperand3$$Star10(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.foperand3$$Star10) yyColumn.chunk13.foperand3$$Star10 = poperand3$$Star10$1(yyStart); return yyColumn.chunk13.foperand3$$Star10; } /** Actually parse xtc.lang.lojban.operand3$$Star10. */ private Result poperand3$$Star10$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pfree(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$27 = (String)yyResult.semanticValue(); yyResult = poperand3$$Star10(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$28 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$27, v$28); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.number. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pnumber(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.fnumber) yyColumn.chunk13.fnumber = pnumber$1(yyStart); return yyColumn.chunk13.fnumber; } /** Actually parse xtc.lang.lojban.number. */ private Result pnumber$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pPAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String PAClauseSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared37(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "PAClause", PAClauseSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared27. * This nonterminal represents the duplicate productions * xtc.lang.lojban.number$$Choice1 and xtc.lang.lojban.lerfuString$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared27(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pPAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String PAClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "PAClause", PAClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = plerfuWord(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuWordSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "lerfuWord", lerfuWordSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared37. * This nonterminal represents the duplicate productions * xtc.lang.lojban.number$$Star1 and xtc.lang.lojban.lerfuString$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared37(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.f$$Shared37) yyColumn.chunk13.f$$Shared37 = p$$Shared37$1(yyStart); return yyColumn.chunk13.f$$Shared37; } /** Actually parse xtc.lang.lojban.$$Shared37. */ private Result p$$Shared37$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared27(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$1 = yyResult.semanticValue(); yyResult = p$$Shared37(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.lerfuString. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plerfuString(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.flerfuString) yyColumn.chunk13.flerfuString = plerfuString$1(yyStart); return yyColumn.chunk13.flerfuString; } /** Actually parse xtc.lang.lojban.lerfuString. */ private Result plerfuString$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = plerfuWord(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuWordSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared37(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "lerfuWord", lerfuWordSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.lerfuWord. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result plerfuWord(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.flerfuWord) yyColumn.chunk13.flerfuWord = plerfuWord$1(yyStart); return yyColumn.chunk13.flerfuWord; } /** Actually parse xtc.lang.lojban.lerfuWord. */ private Result plerfuWord$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pBYClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BYClauseSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "BYClause", BYClauseSEP1, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pLAUClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String LAUClauseSEP2 = (String)yyResult.semanticValue(); yyResult = plerfuWord(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuWordSEP3 = (String)yyResult.semanticValue(); yyValue = makeString( "LAUClause", LAUClauseSEP2, "normal", false ) + makeString( "lerfuWord", lerfuWordSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 3. yyResult = pTEIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String TEIClauseSEP4 = (String)yyResult.semanticValue(); yyResult = plerfuString(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String lerfuStringSEP5 = (String)yyResult.semanticValue(); yyResult = pFOIClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String FOIClauseSEP6 = (String)yyResult.semanticValue(); yyValue = makeString( "TEIClause", TEIClauseSEP4, "normal", false ) + makeString( "lerfuString", lerfuStringSEP5, "normal", false ) + makeString( "FOIClause", FOIClauseSEP6, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.ek. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pek(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk13) yyColumn.chunk13 = new Chunk13(); if (null == yyColumn.chunk13.fek) yyColumn.chunk13.fek = pek$1(yyStart); return yyColumn.chunk13.fek; } /** Actually parse xtc.lang.lojban.ek. */ private Result pek$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pNAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String NAClauseSEP1 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String SEClauseSEP2 = yyOpValue1; yyResult = pAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String AClauseSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String NAIClauseSEP4 = yyOpValue1; yyValue = makeString( "NAClause", NAClauseSEP1, "normal", false ) + makeString( "SEClause", SEClauseSEP2, "normal", false ) + makeString( "AClause", AClauseSEP3, "normal", false ) + makeString( "NAIClause", NAIClauseSEP4, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.gihek. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgihek(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fgihek) yyColumn.chunk14.fgihek = pgihek$1(yyStart); return yyColumn.chunk14.fgihek; } /** Actually parse xtc.lang.lojban.gihek. */ private Result pgihek$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgihek$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair gihekSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = pgihek1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gihek1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "gihekSa", gihekSaSEP1, "normal", false ) + makeString( "gihek1", gihek1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.gihek$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgihek$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fgihek$$Star1) yyColumn.chunk14.fgihek$$Star1 = pgihek$$Star1$1(yyStart); return yyColumn.chunk14.fgihek$$Star1; } /** Actually parse xtc.lang.lojban.gihek$$Star1. */ private Result pgihek$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgihekSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pgihek$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.gihek1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgihek1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fgihek1) yyColumn.chunk14.fgihek1 = pgihek1$1(yyStart); return yyColumn.chunk14.fgihek1; } /** Actually parse xtc.lang.lojban.gihek1. */ private Result pgihek1$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pNAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String NAClauseSEP1 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String SEClauseSEP2 = yyOpValue1; yyResult = pGIhAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GIhAClauseSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String NAIClauseSEP4 = yyOpValue1; yyValue = makeString( "NAClause", NAClauseSEP1, "normal", false ) + makeString( "SEClause", SEClauseSEP2, "normal", false ) + makeString( "GIhAClause", GIhAClauseSEP3, "normal", false ) + makeString( "NAIClause", NAIClauseSEP4, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.gihekSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgihekSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pgihek1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gihek1SEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pgihekSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = pgihek(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "gihek1", gihek1SEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.gihekSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgihekSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pgihek1(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("gihek sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.gihekSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgihekSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = pgihek1(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = pgihekSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("gihek sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.jek. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjek(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fjek) yyColumn.chunk14.fjek = pjek$1(yyStart); return yyColumn.chunk14.fjek; } /** Actually parse xtc.lang.lojban.jek. */ private Result pjek$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pNAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String NAClauseSEP1 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String SEClauseSEP2 = yyOpValue1; yyResult = pJAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String JAClauseSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String NAIClauseSEP4 = yyOpValue1; yyValue = makeString( "NAClause", NAClauseSEP1, "normal", false ) + makeString( "SEClause", SEClauseSEP2, "normal", false ) + makeString( "JAClause", JAClauseSEP3, "normal", false ) + makeString( "NAIClause", NAIClauseSEP4, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.joik. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoik(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fjoik) yyColumn.chunk14.fjoik = pjoik$1(yyStart); return yyColumn.chunk14.fjoik; } /** Actually parse xtc.lang.lojban.joik. */ private Result pjoik$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String SEClauseSEP1 = yyOpValue1; yyResult = pJOIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String JOIClauseSEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String NAIClauseSEP3 = yyOpValue1; yyValue = makeString( "SEClause", SEClauseSEP1, "normal", false ) + makeString( "JOIClause", JOIClauseSEP2, "normal", false ) + makeString( "NAIClause", NAIClauseSEP3, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 2. yyResult = pinterval(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String intervalSEP4 = (String)yyResult.semanticValue(); yyValue = makeString( "interval", intervalSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 3. yyResult = pGAhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GAhOClauseSEP5 = (String)yyResult.semanticValue(); yyResult = pinterval(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String intervalSEP6 = (String)yyResult.semanticValue(); yyResult = pGAhOClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GAhOClauseSEP7 = (String)yyResult.semanticValue(); yyValue = makeString( "GAhOClause", GAhOClauseSEP5, "normal", false ) + makeString( "interval", intervalSEP6, "normal", false ) + makeString( "GAhOClause", GAhOClauseSEP7, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.interval. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pinterval(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.finterval) yyColumn.chunk14.finterval = pinterval$1(yyStart); return yyColumn.chunk14.finterval; } /** Actually parse xtc.lang.lojban.interval. */ private Result pinterval$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String SEClauseSEP1 = yyOpValue1; yyResult = pBIhIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BIhIClauseSEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String NAIClauseSEP3 = yyOpValue1; yyValue = makeString( "SEClause", SEClauseSEP1, "normal", false ) + makeString( "BIhIClause", BIhIClauseSEP2, "normal", false ) + makeString( "NAIClause", NAIClauseSEP3, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.joikEk. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikEk(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fjoikEk) yyColumn.chunk14.fjoikEk = pjoikEk$1(yyStart); return yyColumn.chunk14.fjoikEk; } /** Actually parse xtc.lang.lojban.joikEk. */ private Result pjoikEk$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk$$Star1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair joikEkSaSEP1 = (Pair)yyResult.semanticValue(); yyResult = pjoikEk1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEk1SEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "joikEkSa", joikEkSaSEP1, "normal", false ) + makeString( "joikEk1", joikEk1SEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.joikEk$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikEk$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fjoikEk$$Star1) yyColumn.chunk14.fjoikEk$$Star1 = pjoikEk$$Star1$1(yyStart); return yyColumn.chunk14.fjoikEk$$Star1; } /** Actually parse xtc.lang.lojban.joikEk$$Star1. */ private Result pjoikEk$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEkSa(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$1 = (String)yyResult.semanticValue(); yyResult = pjoikEk$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.joikEk1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikEk1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fjoikEk1) yyColumn.chunk14.fjoikEk1 = pjoikEk1$1(yyStart); return yyColumn.chunk14.fjoikEk1; } /** Actually parse xtc.lang.lojban.joikEk1. */ private Result pjoikEk1$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk1$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.joikEk1$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikEk1$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoik(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "joik", joikSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String ekSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "ek", ekSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.joikEkSa. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikEkSa(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; int yyRepetition1; Pair yyRepValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikEk1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikEk1SEP1 = (String)yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = Pair.EMPTY; while (true) { yyResult = pjoikEkSa$$Choice1(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$el$1 = yyResult.semanticValue(); yyRepetition1 = yyResult.index; yyRepValue1 = new Pair(v$el$1, yyRepValue1); continue; } break; } Pair PARSERparen2 = yyRepValue1.reverse(); yyResult = pSAClause(yyRepetition1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP3 = (String)yyResult.semanticValue(); yyPredResult = pjoikEk(yyResult.index); yyError = yyPredResult.select(yyError); if (yyPredResult.hasValue()) { yyValue = makeString( "joikEk1", joikEk1SEP1, "whitespace", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) + makeString( "SAClause", SAClauseSEP3, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.joikEkSa$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikEkSa$$Choice2(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String saWordSEP1 = (String)yyResult.semanticValue(); yyValue = makeString( "saWord", saWordSEP1, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = pSAClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String SAClauseSEP2 = (String)yyResult.semanticValue(); yyPredMatched = false; yyPredResult = pjoikEk1(yyResult.index); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyValue = makeString( "SAClause", SAClauseSEP2, "whitespace", false ) ; return yyResult.createValue(yyValue, yyError); } else { yyError = yyError.select("joik ek sa expected", yyStart); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.joikEkSa$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikEkSa$$Choice1(final int yyStart) throws IOException { Result yyResult; Result yyPredResult; boolean yyPredMatched; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyPredMatched = false; yyPredResult = pjoikEk1(yyStart); if (yyPredResult.hasValue()) { yyPredMatched = true; } if (! yyPredMatched) { yyResult = pjoikEkSa$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } else { yyError = yyError.select("joik ek sa expected", yyStart); } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.joikJek. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pjoikJek(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk14) yyColumn.chunk14 = new Chunk14(); if (null == yyColumn.chunk14.fjoikJek) yyColumn.chunk14.fjoikJek = pjoikJek$1(yyStart); return yyColumn.chunk14.fjoikJek; } /** Actually parse xtc.lang.lojban.joikJek. */ private Result pjoikJek$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoik(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "joik", joikSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pjek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String jekSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "jek", jekSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.gek. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgek(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.fgek) yyColumn.chunk15.fgek = pgek$1(yyStart); return yyColumn.chunk15.fgek; } /** Actually parse xtc.lang.lojban.gek. */ private Result pgek$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String SEClauseSEP1 = yyOpValue1; yyResult = pGAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GAClauseSEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String NAIClauseSEP3 = yyOpValue1; yyResult = p$$Shared9(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "SEClause", SEClauseSEP1, "normal", false ) + makeString( "GAClause", GAClauseSEP2, "normal", false ) + makeString( "NAIClause", NAIClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pjoik(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikSEP5 = (String)yyResult.semanticValue(); yyResult = pGIClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GIClauseSEP6 = (String)yyResult.semanticValue(); yyResult = p$$Shared12(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyValue = makeString( "joik", joikSEP5, "normal", false ) + makeString( "GIClause", GIClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } // Alternative 3. yyResult = pstag(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String stagSEP8 = (String)yyResult.semanticValue(); yyResult = pgik(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String gikSEP9 = (String)yyResult.semanticValue(); yyValue = makeString( "stag", stagSEP8, "normal", false ) + makeString( "gik", gikSEP9, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.guhek. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pguhek(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.fguhek) yyColumn.chunk15.fguhek = pguhek$1(yyStart); return yyColumn.chunk15.fguhek; } /** Actually parse xtc.lang.lojban.guhek. */ private Result pguhek$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String SEClauseSEP1 = yyOpValue1; yyResult = pGUhAClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GUhAClauseSEP2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String NAIClauseSEP3 = yyOpValue1; yyResult = p$$Shared9(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "SEClause", SEClauseSEP1, "normal", false ) + makeString( "GUhAClause", GUhAClauseSEP2, "normal", false ) + makeString( "NAIClause", NAIClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.gik. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pgik(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.fgik) yyColumn.chunk15.fgik = pgik$1(yyStart); return yyColumn.chunk15.fgik; } /** Actually parse xtc.lang.lojban.gik. */ private Result pgik$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pGIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String GIClauseSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String NAIClauseSEP2 = yyOpValue1; yyResult = p$$Shared11(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP3 = (Pair)yyResult.semanticValue(); yyValue = makeString( "GIClause", GIClauseSEP1, "normal", false ) + makeString( "NAIClause", NAIClauseSEP2, "normal", false ) + makeString( "free", freeSEP3, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.tag. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptag(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.ftag) yyColumn.chunk15.ftag = ptag$1(yyStart); return yyColumn.chunk15.ftag; } /** Actually parse xtc.lang.lojban.tag. */ private Result ptag$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptenseModal(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tenseModalSEP1 = (String)yyResult.semanticValue(); yyResult = ptag$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "tenseModal", tenseModalSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared28. * This nonterminal represents the duplicate productions * xtc.lang.lojban.tag$$Choice1 and xtc.lang.lojban.stag$$Choice3. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared28(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.f$$Shared28) yyColumn.chunk15.f$$Shared28 = p$$Shared28$1(yyStart); return yyColumn.chunk15.f$$Shared28; } /** Actually parse xtc.lang.lojban.$$Shared28. */ private Result p$$Shared28$1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pjoikJek(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String joikJekSEP1 = (String)yyResult.semanticValue(); yyResult = ptenseModal(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tenseModalSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "joikJek", joikJekSEP1, "normal", false ) + makeString( "tenseModal", tenseModalSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.tag$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptag$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.ftag$$Star1) yyColumn.chunk15.ftag$$Star1 = ptag$$Star1$1(yyStart); return yyColumn.chunk15.ftag$$Star1; } /** Actually parse xtc.lang.lojban.tag$$Star1. */ private Result ptag$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared28(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$1 = yyResult.semanticValue(); yyResult = ptag$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.stag. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstag(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.fstag) yyColumn.chunk15.fstag = pstag$1(yyStart); return yyColumn.chunk15.fstag; } /** Actually parse xtc.lang.lojban.stag. */ private Result pstag$1(final int yyStart) throws IOException { Result yyResult; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psimpleTenseModal(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String simpleTenseModalSEP1 = (String)yyResult.semanticValue(); yyResult = pstag$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "simpleTenseModal", simpleTenseModalSEP1, "normal", false ) + makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = ptenseModal(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String tenseModalSEP3 = (String)yyResult.semanticValue(); yyResult = pstag$$Star2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair PARSERparen4 = (Pair)yyResult.semanticValue(); yyValue = makeString( "tenseModal", tenseModalSEP3, "normal", false ) + makeString( "PARSERparen4", PARSERparen4, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.stag$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstag$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared5(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyResult = psimpleTenseModal(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String simpleTenseModalSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "simpleTenseModal", simpleTenseModalSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.stag$$Star1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstag$$Star1(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.fstag$$Star1) yyColumn.chunk15.fstag$$Star1 = pstag$$Star1$1(yyStart); return yyColumn.chunk15.fstag$$Star1; } /** Actually parse xtc.lang.lojban.stag$$Star1. */ private Result pstag$$Star1$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = pstag$$Choice1(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$1 = yyResult.semanticValue(); yyResult = pstag$$Star1(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$2 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$1, v$2); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.stag$$Star2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result pstag$$Star2(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.fstag$$Star2) yyColumn.chunk15.fstag$$Star2 = pstag$$Star2$1(yyStart); return yyColumn.chunk15.fstag$$Star2; } /** Actually parse xtc.lang.lojban.stag$$Star2. */ private Result pstag$$Star2$1(final int yyStart) throws IOException { Result yyResult; Pair yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared28(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object v$3 = yyResult.semanticValue(); yyResult = pstag$$Star2(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair v$4 = (Pair)yyResult.semanticValue(); yyValue = new Pair(v$3, v$4); return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyValue = Pair.EMPTY; return new SemanticValue(yyValue, yyStart, yyError); } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.tenseModal. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result ptenseModal(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk15) yyColumn.chunk15 = new Chunk15(); if (null == yyColumn.chunk15.ftenseModal) yyColumn.chunk15.ftenseModal = ptenseModal$1(yyStart); return yyColumn.chunk15.ftenseModal; } /** Actually parse xtc.lang.lojban.tenseModal. */ private Result ptenseModal$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psimpleTenseModal(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String simpleTenseModalSEP1 = (String)yyResult.semanticValue(); yyResult = p$$Shared14(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP2 = (Pair)yyResult.semanticValue(); yyValue = makeString( "simpleTenseModal", simpleTenseModalSEP1, "normal", false ) + makeString( "free", freeSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Alternative 2. yyResult = pFIhOClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String FIhOClauseSEP3 = (String)yyResult.semanticValue(); yyResult = p$$Shared9(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP4 = (Pair)yyResult.semanticValue(); yyResult = pselbri(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String selbriSEP5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pFEhUClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$5; } String FEhUClauseSEP6 = yyOpValue1; yyResult = p$$Shared13(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Pair freeSEP7 = (Pair)yyResult.semanticValue(); yyValue = makeString( "FIhOClause", FIhOClauseSEP3, "normal", false ) + makeString( "free", freeSEP4, "normal", false ) + makeString( "selbri", selbriSEP5, "normal", false ) + makeString( "FEhUClause", FEhUClauseSEP6, "normal", false ) + makeString( "free", freeSEP7, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } } } // Done. return yyError; } // ========================================================================= /** * Parse nonterminal xtc.lang.lojban.simpleTenseModal. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psimpleTenseModal(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk16) yyColumn.chunk16 = new Chunk16(); if (null == yyColumn.chunk16.fsimpleTenseModal) yyColumn.chunk16.fsimpleTenseModal = psimpleTenseModal$1(yyStart); return yyColumn.chunk16.fsimpleTenseModal; } /** Actually parse xtc.lang.lojban.simpleTenseModal. */ private Result psimpleTenseModal$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; String yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pNAhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$1; } String NAhEClauseSEP1 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pSEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$2 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$2; } String SEClauseSEP2 = yyOpValue1; yyResult = pBAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String BAIClauseSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pNAIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$3; } String NAIClauseSEP4 = yyOpValue1; yyOption1 = yyOption1; yyOpValue1 = null; yyResult = pKIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$4 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$4; } String KIClauseSEP5 = yyOpValue1; yyValue = makeString( "NAhEClause", NAhEClauseSEP1, "normal", false ) + makeString( "SEClause", SEClauseSEP2, "normal", false ) + makeString( "BAIClause", BAIClauseSEP3, "normal", false ) + makeString( "NAIClause", NAIClauseSEP4, "normal", false ) + makeString( "KIClause", KIClauseSEP5, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 2. yyOption1 = yyStart; yyOpValue1 = null; yyResult = pNAhEClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$5 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$5; } String NAhEClauseSEP6 = yyOpValue1; yyResult = psimpleTenseModal$$Choice1(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen7 = yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pKIClause(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$10 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$10; } String KIClauseSEP8 = yyOpValue1; yyValue = makeString( "NAhEClause", NAhEClauseSEP6, "normal", false ) + makeString( "PARSERparen7", PARSERparen7, "parserParen", false ) + makeString( "KIClause", KIClauseSEP8, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 3. yyResult = pKIClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String KIClauseSEP9 = (String)yyResult.semanticValue(); yyValue = makeString( "KIClause", KIClauseSEP9, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 4. yyResult = pCUhEClause(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String CUhEClauseSEP10 = (String)yyResult.semanticValue(); yyValue = makeString( "CUhEClause", CUhEClauseSEP10, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.$$Shared29. * This nonterminal represents the duplicate productions * xtc.lang.lojban.simpleTenseModal$$Choice3 * and xtc.lang.lojban.simpleTenseModal$$Choice4. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result p$$Shared29(final int yyStart) throws IOException { lojbanColumn yyColumn = (lojbanColumn)column(yyStart); if (null == yyColumn.chunk16) yyColumn.chunk16 = new Chunk16(); if (null == yyColumn.chunk16.f$$Shared29) yyColumn.chunk16.f$$Shared29 = p$$Shared29$1(yyStart); return yyColumn.chunk16.f$$Shared29; } /** Actually parse xtc.lang.lojban.$$Shared29. */ private Result p$$Shared29$1(final int yyStart) throws IOException { Result yyResult; int yyOption1; String yyOpValue1; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = ptime(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String timeSEP1 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = pspace(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$6 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$6; } String spaceSEP2 = yyOpValue1; yyValue = makeString( "time", timeSEP1, "normal", false ) + makeString( "space", spaceSEP2, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Alternative 2. yyResult = pspace(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String spaceSEP3 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = null; yyResult = ptime(yyOption1); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String v$el$7 = (String)yyResult.semanticValue(); yyOption1 = yyResult.index; yyOpValue1 = v$el$7; } String timeSEP4 = yyOpValue1; yyValue = makeString( "space", spaceSEP3, "normal", false ) + makeString( "time", timeSEP4, "normal", false ) ; return new SemanticValue(yyValue, yyOption1, yyError); } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.simpleTenseModal$$Choice2. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psimpleTenseModal$$Choice2(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = p$$Shared29(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyResult = pCAhAClause(yyResult.index); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { String CAhAClauseSEP2 = (String)yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) + makeString( "CAhAClause", CAhAClauseSEP2, "normal", false ) ; return yyResult.createValue(yyValue, yyError); } } // Done. return yyError; } // ========================================================================= /** * Parse synthetic nonterminal xtc.lang.lojban.simpleTenseModal$$Choice1. * * @param yyStart The index. * @return The result. * @throws IOException Signals an I/O error. */ private Result psimpleTenseModal$$Choice1(final int yyStart) throws IOException { Result yyResult; Object yyValue; ParseError yyError = ParseError.DUMMY; // Alternative 1. yyResult = psimpleTenseModal$$Choice2(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen1 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen1", PARSERparen1, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } // Alternative 2. yyResult = p$$Shared29(yyStart); yyError = yyResult.select(yyError); if (yyResult.hasValue()) { Object PARSERparen2 = yyResult.semanticValue(); yyValue = makeString( "PARSERparen2", PARSERparen2, "parserParen", false ) ; return yyResult.createValue(yyValue, yyError); } // A