|| settings.selectFrom().defaultType() != Void.class) {
return (Codec<T>) new SelectFromCodec(type, settings
.selectFrom(), context, codecFactory,
hideChoices(metadata));
}
if (settings.types().length == 0) {
return createCodec(type, context);
}
List<Codec<?>> codecs = new ArrayList<Codec<?>>();
for (Class valueType : settings.types()) {
codecs.add(codecFactory.create(null, valueType, context));