diff --git a/src/main/java/com/sovdee/oopsk/elements/expressions/ExprFieldAccess.java b/src/main/java/com/sovdee/oopsk/elements/expressions/ExprFieldAccess.java index 1308c1e..4569f4e 100644 --- a/src/main/java/com/sovdee/oopsk/elements/expressions/ExprFieldAccess.java +++ b/src/main/java/com/sovdee/oopsk/elements/expressions/ExprFieldAccess.java @@ -184,6 +184,11 @@ protected Object[] get(Event event, Struct[] source) { // if we have a single field, we can delegate to that type's changer, so get all the classes from the changers if (isAnyFieldSingle) { + // if a field is single and object, it should accept all changers + if (returnType == Object.class) { + return new Class[]{Object.class}; + } + Set> distinctClasses = Arrays.stream(returnTypes) .map(Classes::getSuperClassInfo) .filter(Objects::nonNull)