@Override
  public ObjectInspector initialize(ObjectInspector[] arguments) throws UDFArgumentException {
    if (arguments.length < 2) {
      throw new UDFArgumentLengthException("The like any operator requires at least one pattern for matching, got "
          + (arguments.length - 1));
    }
    inputTypes = new PrimitiveCategory[arguments.length];
    converters = new Converter[arguments.length];

    /**expects string and null arguments */
    for (int idx = 0; idx < arguments.length; idx++) {
      checkArgPrimitive(arguments, idx);
      checkArgGroups(arguments, idx, inputTypes, PrimitiveGrouping.STRING_GROUP, PrimitiveGrouping.VOID_GROUP);
      PrimitiveCategory inputType = ((PrimitiveObjectInspector) arguments[idx]).getPrimitiveCategory();
      if (arguments[idx] instanceof ConstantObjectInspector && idx != 0) {
        Object constValue = ((ConstantObjectInspector) arguments[idx]).getWritableConstantValue();
        if (!isConstantNullPatternContain && constValue == null) {
          isConstantNullPatternContain = true;
        }
      } else if (idx != 0 && isAllPatternsConstant) {
        isAllPatternsConstant = false;
      }
      converters[idx] = ObjectInspectorConverters.getConverter(arguments[idx], getOutputOI(inputType));
      inputTypes[idx] = inputType;
    }
    return PrimitiveObjectInspectorFactory.writableBooleanObjectInspector;
  }
GenericUDFLikeAll is return true if a text(column value) matches to any patterns

Example usage: SELECT key FROM src WHERE key like any ('%ab%', 'a%','b%','abc');

like ANY returns true if test matches any patterns patternN.
Returns NULL if the expression on the left hand side is NULL or if one of the patterns in the list is NULL.
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLikeAny.java