public MethodsGroupBuilder methods(List<String> methodNames) { requireNonNull(methodNames, "methodNames is null"); checkArgument(!methodNames.isEmpty(), "methods list is empty"); methodNames.forEach(methodName -> this.methodWithExplicitJavaTypes(methodName, nCopies(signature.getArgumentTypes().size(), Optional.empty()))); return this; }
public MethodsGroupBuilder methods(List<String> methodNames) { requireNonNull(methodNames, "methodNames is null"); checkArgument(!methodNames.isEmpty(), "methods list is empty"); methodNames.forEach(methodName -> this.methodWithExplicitJavaTypes(methodName, nCopies(signature.getArgumentTypes().size(), Optional.empty()))); return this; }
private static SqlScalarFunction distinctOperator() { return makeBinaryOperatorFunctionBuilder(IS_DISTINCT_FROM) .choice(choice -> choice .argumentProperties( valueTypeArgumentProperty(USE_NULL_FLAG), valueTypeArgumentProperty(USE_NULL_FLAG)) .implementation(methodsGroup -> methodsGroup .methods("distinctShortShort", "distinctLongLong"))) .choice(choice -> choice .argumentProperties( valueTypeArgumentProperty(BLOCK_AND_POSITION), valueTypeArgumentProperty(BLOCK_AND_POSITION)) .implementation(methodsGroup -> methodsGroup .methodWithExplicitJavaTypes("distinctBlockPositionLongLong", asList(Optional.of(Slice.class), Optional.of(Slice.class))) .methodWithExplicitJavaTypes("distinctBlockPositionShortShort", asList(Optional.of(long.class), Optional.of(long.class))))) .build(); }
valueTypeArgumentProperty(BLOCK_AND_POSITION)) .implementation(methodsGroup -> methodsGroup .methodWithExplicitJavaTypes("blockPositionLongLong", asList(Optional.of(Slice.class), Optional.of(Slice.class))) .methodWithExplicitJavaTypes("blockPositionShortShort", asList(Optional.of(long.class), Optional.of(long.class))))) .build();
valueTypeArgumentProperty(BLOCK_AND_POSITION)) .implementation(methodsGroup -> methodsGroup .methodWithExplicitJavaTypes("blockPositionLongLong", asList(Optional.of(Slice.class), Optional.of(Slice.class))) .methodWithExplicitJavaTypes("blockPositionShortShort", asList(Optional.of(long.class), Optional.of(long.class))))) .build();
private static SqlScalarFunction distinctOperator() { return makeBinaryOperatorFunctionBuilder(IS_DISTINCT_FROM) .choice(choice -> choice .argumentProperties( valueTypeArgumentProperty(USE_NULL_FLAG), valueTypeArgumentProperty(USE_NULL_FLAG)) .implementation(methodsGroup -> methodsGroup .methods("distinctShortShort", "distinctLongLong"))) .choice(choice -> choice .argumentProperties( valueTypeArgumentProperty(BLOCK_AND_POSITION), valueTypeArgumentProperty(BLOCK_AND_POSITION)) .implementation(methodsGroup -> methodsGroup .methodWithExplicitJavaTypes("distinctBlockPositionLongLong", asList(Optional.of(Slice.class), Optional.of(Slice.class))) .methodWithExplicitJavaTypes("distinctBlockPositionShortShort", asList(Optional.of(long.class), Optional.of(long.class))))) .build(); }