protected bool Equals(MatchTupleRule other) { return(ElementRules.SequenceEqual(other.ElementRules)); }
/// <summary> /// rule_tuple = "(" match_rule { ";" match_rule } ")" /// </summary> private MatchTupleRule parseRuleTuple() { if (!check(LexemType.ParenOpen)) return null; var node = new MatchTupleRule(); node.ElementRules.Add(ensure(parseMatchRule, ParserMessages.MatchRuleExpected)); while(check(LexemType.Semicolon)) node.ElementRules.Add(ensure(parseMatchRule, ParserMessages.MatchRuleExpected)); ensure(LexemType.ParenClose, ParserMessages.SymbolExpected, ")"); return node; }