code: protected static FileFilter compose(LogicalOperator operator, FileFilter leftOperand, FileFilter rightOperand) {
      return (leftOperand == null ? rightOperand : (rightOperand == null ? leftOperand :
        new ComposableFileFilter(operator, leftOperand, rightOperand)));
    }
docs: Factory method to construct a {@link ComposableFileFilter} composed of two {@link FileFilter} operands joined by
  the given {@link LogicalOperator}.
  
  @param operator the logical operation to perform.
  @param leftOperand {@link FileFilter} operand used in the left hand side of the logical expression.
  @param rightOperand {@link FileFilter} operand used in the right hand side of the logical expression.
  @return a {@link ComposableFileFilter} consisting of two {@link FileFilter} operands joined by the given logical
  operator. Returns the left operand if the right operand is null, the right operand if the left operand is null,
  or both operands joined by the logical operator if neither is null.
  @see java.io.FileFilter
  @see org.cp.elements.lang.LogicalOperator