protected Future evaluate()

in src/main/java/com/twitter/nodes/OrNode.java [58:72]


  protected Future<Boolean> evaluate(final List<Node<Boolean>> operands) {
    if (operands.size() == 1) {
      return operands.get(0).apply();
    }

    return operands.get(0).apply().flatMap(
        new com.twitter.util.Function<Boolean, Future<Boolean>>() {
          @Override
          public Future<Boolean> apply(Boolean value) {
            return value
                ? TRUE_FUTURE
                : evaluate(operands.subList(1, operands.size()));
          }
        });
  }