package io.vertx.codegen.testmodel; import io.vertx.codegen.annotations.Nullable; import io.vertx.codegen.annotations.VertxGen; import io.vertx.core.json.JsonArray; import io.vertx.core.json.JsonObject; import java.util.List; import java.util.Map; import java.util.Set; import java.util.function.Function; /** * @author <a href="mailto:julien@julienviet.com">Julien Viet</a> */ @VertxGen public interface FunctionParamTCK { List<String> methodWithBasicParam( Function<Byte, String> byteFunc, Function<Short, String> shortFunc, Function<Integer, String> integerFunc, Function<Long, String> longFunc, Function<Float, String> floatFunc, Function<Double, String> doubleFunc, Function<Boolean, String> booleanFunc, Function<Character, String> charFunc, Function<String, String> stringFunc ); List<String> methodWithJsonParam(Function<JsonObject, String> objectFunc, Function<JsonArray, String> arrayFunc); String methodWithVoidParam(Function<Void, String> func); String methodWithUserTypeParam(RefedInterface1 arg, Function<RefedInterface1, String> func); String methodWithObjectParam(Object arg, Function<Object, String> func); String methodWithDataObjectParam(Function<TestDataObject, String> func); String methodWithEnumParam(Function<TestEnum, String> func); String methodWithListParam(Function<List<String>, String> stringFunc); String methodWithSetParam(Function<Set<String>, String> func); String methodWithMapParam(Function<Map<String, String>, String> func); <T> String methodWithGenericParam(T t, Function<T, String> func); <T> String methodWithGenericUserTypeParam(T t, Function<GenericRefedInterface<T>, String> func); String methodWithBasicReturn( Function<String, Byte> byteFunc, Function<String, Short> shortFunc, Function<String, Integer> integerFunc, Function<String, Long> longFunc, Function<String, Float> floatFunc, Function<String, Double> doubleFunc, Function<String, Boolean> booleanFunc, Function<String, Character> charFunc, Function<String, String> stringFunc ); String methodWithJsonReturn(Function<String, JsonObject> objectFunc, Function<String, JsonArray> arrayFunc); String methodWithObjectReturn(Function<Integer, Object> func); String methodWithDataObjectReturn(Function<String, TestDataObject> func); String methodWithEnumReturn(Function<String, TestEnum> func); String methodWithListReturn(Function<String, List<String>> func); String methodWithSetReturn(Function<String, Set<String>> func); String methodWithMapReturn(Function<String, Map<String, String>> func); <T> String methodWithGenericReturn(Function<Integer, T> func); <T> String methodWithGenericUserTypeReturn(Function<GenericRefedInterface<T>, GenericRefedInterface<T>> func); String methodWithNullableListParam(Function<@Nullable List<String>, String> func); String methodWithNullableListReturn(Function<String, @Nullable List<String>> func); }