code: @DontLabel
      public Rule sequence(final Object rule, final Object rule2,
          final Object... moreRules)
      {
          final Object[] rules = ImmutableList.builder().add(rule).add(rule2)
              .add(moreRules).build().toArray();
          return sequence(rules);
      }
docs: Match a given set of rules, exactly once
  
  @param rule the first subrule
  @param rule2 the second subrule
  @param moreRules the other subrules
  @return a rule