I need to pass a series of Class type arguments with associated callbacks to a method without defining additional classes or interfaces.
I tried something like:
void foo(Map<Class, Function> callbacks){
for(Class clazz : callbacks.keySet()){
if(!(callbacks.get(clazz) instanceof Function<clazz, clazz>)){
System.out.println("callback type mismatch");
}
}
//(own logic)
}
or
void foo(List<<T>Map<Class<T>, Function<T, T>>> callbacks){
...
}
which is erroneous. Any ideas how to overcome this issue (or why it is not possible without additional classes)?