public RuleBookAddRuleBuilder<T> addRule(Consumer<RuleBookRuleBuilder<T>> consumer) {
    return new RuleBookAddRuleBuilder<>(newRuleBook(), consumer);
  }
public RuleBookAddRuleBuilder<T> addRule(Consumer<RuleBookRuleBuilder<T>> consumer) {
    return new RuleBookAddRuleBuilder<>(newRuleBook(), consumer);
  }
public RuleBookAddRuleBuilder < T > addRule ( Consumer < RuleBookRuleBuilder < T > > consumer ) { return new RuleBookAddRuleBuilder <> ( newRuleBook ( ) , consumer ) ; }
Adds a rule to the RuleBook.
@param consumer  functional interface that supplies a RuleBookRuleBuilder for building a Rule
@return          a builder with the added Rule
Adds a rule to the RuleBook .