rulebook-core/src/main/java/com/deliveredtechnologies/rulebook/RuleBook.java
public void addRule(Rule<T> rule) {
    if (rule == null) {
      return;
    }

    if (!_headRule.isPresent()) {
      _headRule = Optional.of(rule); // this rule is the head if there was no head
      _tailRule = rule;
    } else {
      _tailRule.setNextRule(rule);
      _tailRule = rule;
    }
  }
public void addRule(Rule<T> rule) {
    if (rule == null) {
      return;
    }

    if (!_headRule.isPresent()) {
      _headRule = Optional.of(rule); // this rule is the head if there was no head
      _tailRule = rule;
    } else {
      _tailRule.setNextRule(rule);
      _tailRule = rule;
    }
  }
The addRule() method adds a rule to the end of the Rules chain.

@param rule the Rule to be added