blob: b2f78d6fc97eca49c2f1ca49bde7e626f4d9e32e [file] [log] [blame]
/*
*******************************************************************************
* Copyright (C) 2003-2010, International Business Machines Corporation and
* others. All Rights Reserved.
*******************************************************************************
*/
package com.ibm.icu.text;
/**
* Generated Java File. Do not edit by hand.
* This file contains the state table for the ICU Rule Based Break Iterator
* rule parser.
* It is generated by the Perl script "rbbicst.pl" from
* the rule parser state definitions file "rbbirpt.txt".
*/
class RBBIRuleParseTable
{
static final short doCheckVarDef = 1;
static final short doDotAny = 2;
static final short doEndAssign = 3;
static final short doEndOfRule = 4;
static final short doEndVariableName = 5;
static final short doExit = 6;
static final short doExprCatOperator = 7;
static final short doExprFinished = 8;
static final short doExprOrOperator = 9;
static final short doExprRParen = 10;
static final short doExprStart = 11;
static final short doLParen = 12;
static final short doNOP = 13;
static final short doOptionEnd = 14;
static final short doOptionStart = 15;
static final short doReverseDir = 16;
static final short doRuleChar = 17;
static final short doRuleError = 18;
static final short doRuleErrorAssignExpr = 19;
static final short doScanUnicodeSet = 20;
static final short doSlash = 21;
static final short doStartAssign = 22;
static final short doStartTagValue = 23;
static final short doStartVariableName = 24;
static final short doTagDigit = 25;
static final short doTagExpectedError = 26;
static final short doTagValue = 27;
static final short doUnaryOpPlus = 28;
static final short doUnaryOpQuestion = 29;
static final short doUnaryOpStar = 30;
static final short doVariableNameExpectedErr = 31;
static final short kRuleSet_default = 255;
static final short kRuleSet_digit_char = 128;
static final short kRuleSet_eof = 252;
static final short kRuleSet_escaped = 254;
static final short kRuleSet_name_char = 129;
static final short kRuleSet_name_start_char = 130;
static final short kRuleSet_rule_char = 131;
static final short kRuleSet_white_space = 132;
static class RBBIRuleTableElement {
short fAction;
short fCharClass;
short fNextState;
short fPushState;
boolean fNextChar;
String fStateName;
RBBIRuleTableElement(short a, int cc, int ns, int ps, boolean nc, String sn) {
fAction = a;
fCharClass = (short)cc;
fNextState = (short)ns;
fPushState = (short)ps;
fNextChar = nc;
fStateName = sn;
}
}
static RBBIRuleTableElement[] gRuleParseStateTable = {
new RBBIRuleTableElement(doNOP, 0, 0,0, true, null ) // 0
, new RBBIRuleTableElement(doExprStart, 254, 21, 8, false, "start") // 1
, new RBBIRuleTableElement(doNOP, 132, 1,0, true, null ) // 2
, new RBBIRuleTableElement(doExprStart,'$', 80, 90, false, null ) // 3
, new RBBIRuleTableElement(doNOP,'!', 11,0, true, null ) // 4
, new RBBIRuleTableElement(doNOP,';', 1,0, true, null ) // 5
, new RBBIRuleTableElement(doNOP, 252, 0,0, false, null ) // 6
, new RBBIRuleTableElement(doExprStart, 255, 21, 8, false, null ) // 7
, new RBBIRuleTableElement(doEndOfRule,';', 1,0, true, "break-rule-end") // 8
, new RBBIRuleTableElement(doNOP, 132, 8,0, true, null ) // 9
, new RBBIRuleTableElement(doRuleError, 255, 95,0, false, null ) // 10
, new RBBIRuleTableElement(doNOP,'!', 13,0, true, "rev-option") // 11
, new RBBIRuleTableElement(doReverseDir, 255, 20, 8, false, null ) // 12
, new RBBIRuleTableElement(doOptionStart, 130, 15,0, true, "option-scan1") // 13
, new RBBIRuleTableElement(doRuleError, 255, 95,0, false, null ) // 14
, new RBBIRuleTableElement(doNOP, 129, 15,0, true, "option-scan2") // 15
, new RBBIRuleTableElement(doOptionEnd, 255, 17,0, false, null ) // 16
, new RBBIRuleTableElement(doNOP,';', 1,0, true, "option-scan3") // 17
, new RBBIRuleTableElement(doNOP, 132, 17,0, true, null ) // 18
, new RBBIRuleTableElement(doRuleError, 255, 95,0, false, null ) // 19
, new RBBIRuleTableElement(doExprStart, 255, 21, 8, false, "reverse-rule") // 20
, new RBBIRuleTableElement(doRuleChar, 254, 30,0, true, "term") // 21
, new RBBIRuleTableElement(doNOP, 132, 21,0, true, null ) // 22
, new RBBIRuleTableElement(doRuleChar, 131, 30,0, true, null ) // 23
, new RBBIRuleTableElement(doNOP,'[', 86, 30, false, null ) // 24
, new RBBIRuleTableElement(doLParen,'(', 21, 30, true, null ) // 25
, new RBBIRuleTableElement(doNOP,'$', 80, 29, false, null ) // 26
, new RBBIRuleTableElement(doDotAny,'.', 30,0, true, null ) // 27
, new RBBIRuleTableElement(doRuleError, 255, 95,0, false, null ) // 28
, new RBBIRuleTableElement(doCheckVarDef, 255, 30,0, false, "term-var-ref") // 29
, new RBBIRuleTableElement(doNOP, 132, 30,0, true, "expr-mod") // 30
, new RBBIRuleTableElement(doUnaryOpStar,'*', 35,0, true, null ) // 31
, new RBBIRuleTableElement(doUnaryOpPlus,'+', 35,0, true, null ) // 32
, new RBBIRuleTableElement(doUnaryOpQuestion,'?', 35,0, true, null ) // 33
, new RBBIRuleTableElement(doNOP, 255, 35,0, false, null ) // 34
, new RBBIRuleTableElement(doExprCatOperator, 254, 21,0, false, "expr-cont") // 35
, new RBBIRuleTableElement(doNOP, 132, 35,0, true, null ) // 36
, new RBBIRuleTableElement(doExprCatOperator, 131, 21,0, false, null ) // 37
, new RBBIRuleTableElement(doExprCatOperator,'[', 21,0, false, null ) // 38
, new RBBIRuleTableElement(doExprCatOperator,'(', 21,0, false, null ) // 39
, new RBBIRuleTableElement(doExprCatOperator,'$', 21,0, false, null ) // 40
, new RBBIRuleTableElement(doExprCatOperator,'.', 21,0, false, null ) // 41
, new RBBIRuleTableElement(doExprCatOperator,'/', 47,0, false, null ) // 42
, new RBBIRuleTableElement(doExprCatOperator,'{', 59,0, true, null ) // 43
, new RBBIRuleTableElement(doExprOrOperator,'|', 21,0, true, null ) // 44
, new RBBIRuleTableElement(doExprRParen,')', 255,0, true, null ) // 45
, new RBBIRuleTableElement(doExprFinished, 255, 255,0, false, null ) // 46
, new RBBIRuleTableElement(doSlash,'/', 49,0, true, "look-ahead") // 47
, new RBBIRuleTableElement(doNOP, 255, 95,0, false, null ) // 48
, new RBBIRuleTableElement(doExprCatOperator, 254, 21,0, false, "expr-cont-no-slash") // 49
, new RBBIRuleTableElement(doNOP, 132, 35,0, true, null ) // 50
, new RBBIRuleTableElement(doExprCatOperator, 131, 21,0, false, null ) // 51
, new RBBIRuleTableElement(doExprCatOperator,'[', 21,0, false, null ) // 52
, new RBBIRuleTableElement(doExprCatOperator,'(', 21,0, false, null ) // 53
, new RBBIRuleTableElement(doExprCatOperator,'$', 21,0, false, null ) // 54
, new RBBIRuleTableElement(doExprCatOperator,'.', 21,0, false, null ) // 55
, new RBBIRuleTableElement(doExprOrOperator,'|', 21,0, true, null ) // 56
, new RBBIRuleTableElement(doExprRParen,')', 255,0, true, null ) // 57
, new RBBIRuleTableElement(doExprFinished, 255, 255,0, false, null ) // 58
, new RBBIRuleTableElement(doNOP, 132, 59,0, true, "tag-open") // 59
, new RBBIRuleTableElement(doStartTagValue, 128, 62,0, false, null ) // 60
, new RBBIRuleTableElement(doTagExpectedError, 255, 95,0, false, null ) // 61
, new RBBIRuleTableElement(doNOP, 132, 66,0, true, "tag-value") // 62
, new RBBIRuleTableElement(doNOP,'}', 66,0, false, null ) // 63
, new RBBIRuleTableElement(doTagDigit, 128, 62,0, true, null ) // 64
, new RBBIRuleTableElement(doTagExpectedError, 255, 95,0, false, null ) // 65
, new RBBIRuleTableElement(doNOP, 132, 66,0, true, "tag-close") // 66
, new RBBIRuleTableElement(doTagValue,'}', 69,0, true, null ) // 67
, new RBBIRuleTableElement(doTagExpectedError, 255, 95,0, false, null ) // 68
, new RBBIRuleTableElement(doExprCatOperator, 254, 21,0, false, "expr-cont-no-tag") // 69
, new RBBIRuleTableElement(doNOP, 132, 69,0, true, null ) // 70
, new RBBIRuleTableElement(doExprCatOperator, 131, 21,0, false, null ) // 71
, new RBBIRuleTableElement(doExprCatOperator,'[', 21,0, false, null ) // 72
, new RBBIRuleTableElement(doExprCatOperator,'(', 21,0, false, null ) // 73
, new RBBIRuleTableElement(doExprCatOperator,'$', 21,0, false, null ) // 74
, new RBBIRuleTableElement(doExprCatOperator,'.', 21,0, false, null ) // 75
, new RBBIRuleTableElement(doExprCatOperator,'/', 47,0, false, null ) // 76
, new RBBIRuleTableElement(doExprOrOperator,'|', 21,0, true, null ) // 77
, new RBBIRuleTableElement(doExprRParen,')', 255,0, true, null ) // 78
, new RBBIRuleTableElement(doExprFinished, 255, 255,0, false, null ) // 79
, new RBBIRuleTableElement(doStartVariableName,'$', 82,0, true, "scan-var-name") // 80
, new RBBIRuleTableElement(doNOP, 255, 95,0, false, null ) // 81
, new RBBIRuleTableElement(doNOP, 130, 84,0, true, "scan-var-start") // 82
, new RBBIRuleTableElement(doVariableNameExpectedErr, 255, 95,0, false, null ) // 83
, new RBBIRuleTableElement(doNOP, 129, 84,0, true, "scan-var-body") // 84
, new RBBIRuleTableElement(doEndVariableName, 255, 255,0, false, null ) // 85
, new RBBIRuleTableElement(doScanUnicodeSet,'[', 255,0, true, "scan-unicode-set") // 86
, new RBBIRuleTableElement(doScanUnicodeSet,'p', 255,0, true, null ) // 87
, new RBBIRuleTableElement(doScanUnicodeSet,'P', 255,0, true, null ) // 88
, new RBBIRuleTableElement(doNOP, 255, 95,0, false, null ) // 89
, new RBBIRuleTableElement(doNOP, 132, 90,0, true, "assign-or-rule") // 90
, new RBBIRuleTableElement(doStartAssign,'=', 21, 93, true, null ) // 91
, new RBBIRuleTableElement(doNOP, 255, 29, 8, false, null ) // 92
, new RBBIRuleTableElement(doEndAssign,';', 1,0, true, "assign-end") // 93
, new RBBIRuleTableElement(doRuleErrorAssignExpr, 255, 95,0, false, null ) // 94
, new RBBIRuleTableElement(doExit, 255, 95,0, true, "errorDeath") // 95
};
}