code: public static FunctionalType unboxedUnaryOperator(TypeMirror type, Types types) {
      switch (type.getKind()) {
        case INT:
        case LONG:
        case DOUBLE:
          return primitiveUnaryOperator((PrimitiveType) type);
  
        case BOOLEAN:
        case BYTE:
        case CHAR:
        case SHORT:
        case FLOAT:
          return unaryOperator(types.boxedClass((PrimitiveType) type).asType());
  
        default:
          return unaryOperator(type);
      }
    }
docs: Returns a unary operator that will accept {@code type}, without autoboxing if possible.