private static String nameOf(PropertyType type) { return type.getImplementation() .map(Class::getSimpleName) .orElseGet(() -> type.name()); } }
throw invalidType(i, input, e); if (input != null && types[i].getImplementation().isPresent()) { Class<?> expect = types[i].getImplementation().get(); Class<?> actual = input.getClass(); if (expect.isAssignableFrom(actual) == false) {