private xri_gen_delims decode_xri_gen_delims() { push("xri-gen-delims"); bool decoded = true; int s0 = index; var e0 = new List<Rule>(); Rule rule; decoded = false; if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue(":"); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue("/"); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue("?"); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue("#"); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue("["); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue("]"); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue("("); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_StringValue(")"); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_gcs_char(); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } if (!decoded) { { var e1 = new List<Rule>(); int s1 = index; decoded = true; if (decoded) { bool f1 = true; int c1 = 0; for (int i1 = 0; i1 < 1 && f1; i1++) { rule = decode_lcs_char(); if ((f1 = rule != null)) { e1.Add(rule); c1++; } } decoded = c1 == 1; } if (decoded) e0.AddRange(e1); else index = s1; } } rule = null; if (decoded) rule = new xri_gen_delims(text.Substring(s0, index - s0), e0); else index = s0; pop("xri-gen-delims", decoded, index - s0); return (xri_gen_delims)rule; }
public xri_gen_delims(xri_gen_delims rule) : base(rule.spelling, rule.rules) { }