public virtual String Select(long n) { PluralRules.Rule r = SelectRule(n); if (r == null) { return(IBM.ICU.Text.PluralRules.KEYWORD_OTHER); } return(r.GetKeyword()); }
public PluralRules.Rule SelectRule(long n) { PluralRules.Rule r = null; if (next != null) { r = next.SelectRule(n); } if (r == null && rule.AppliesTo(n)) { r = rule; } return(r); }
/// <summary> /// Syntax: rules : rule rule ';' rules /// </summary> /// private static PluralRules.RuleChain ParseRuleChain(String description) { PluralRules.RuleChain rc = null; String[] rules_0 = IBM.ICU.Impl.Utility.Split(description, ';'); for (int i = 0; i < rules_0.Length; ++i) { PluralRules.Rule r = ParseRule(rules_0[i].Trim()); if (rc == null) { rc = new PluralRules.RuleChain(r); } else { rc = rc.AddRule(r); } } return(rc); }
public PluralRules.RuleChain AddRule(PluralRules.Rule nextRule) { return(new PluralRules.RuleChain(nextRule, this)); }
public RuleChain(PluralRules.Rule rule_0, PluralRules.RuleChain next_1) { this.rule = rule_0; this.next = next_1; }
/// <summary> /// Creates a rule chain with the single rule. /// </summary> /// public RuleChain(PluralRules.Rule rule_0) : this(rule_0, null) { }