Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.xtend.backend/src/org/eclipse/xtend/backend/types/builtin/BuiltinProperty.java')
-rw-r--r--plugins/org.eclipse.xtend.backend/src/org/eclipse/xtend/backend/types/builtin/BuiltinProperty.java21
1 files changed, 6 insertions, 15 deletions
diff --git a/plugins/org.eclipse.xtend.backend/src/org/eclipse/xtend/backend/types/builtin/BuiltinProperty.java b/plugins/org.eclipse.xtend.backend/src/org/eclipse/xtend/backend/types/builtin/BuiltinProperty.java
index 686a957b..37a3224d 100644
--- a/plugins/org.eclipse.xtend.backend/src/org/eclipse/xtend/backend/types/builtin/BuiltinProperty.java
+++ b/plugins/org.eclipse.xtend.backend/src/org/eclipse/xtend/backend/types/builtin/BuiltinProperty.java
@@ -14,8 +14,6 @@ import java.lang.reflect.Method;
import org.eclipse.xtend.backend.common.BackendType;
import org.eclipse.xtend.backend.common.ExecutionContext;
-import org.eclipse.xtend.backend.functions.java.internal.JavaBuiltinConverter;
-import org.eclipse.xtend.backend.functions.java.internal.JavaBuiltinConverterFactory;
import org.eclipse.xtend.backend.types.AbstractProperty;
import org.eclipse.xtend.backend.util.ErrorHandler;
@@ -28,15 +26,11 @@ public final class BuiltinProperty extends AbstractProperty {
private final Method _getter;
private final Method _setter;
- private final JavaBuiltinConverter _converter;
-
public BuiltinProperty (BackendType owner, BackendType type, String name, Method getter, Method setter) {
- super (owner, type, name);
+ super (owner, type, getJavaClassForProperty(getter, setter), name, setter != null);
_getter = getter;
_setter = setter;
-
- _converter = JavaBuiltinConverterFactory.getConverter (getJavaClassForProperty (getter, setter));
}
private static Class<?> getJavaClassForProperty (Method getter, Method setter) {
@@ -46,12 +40,9 @@ public final class BuiltinProperty extends AbstractProperty {
}
@Override
- public Object get (ExecutionContext ctx, Object o) {
- if (_getter == null)
- super.get (ctx, o);
-
+ public Object getRaw (ExecutionContext ctx, Object o) {
try {
- return _converter.javaToBackend (_getter.invoke(o));
+ return _getter.invoke(o);
} catch (Exception e) {
ErrorHandler.handle(e);
return null; // to make the compiler happy - this is never executed
@@ -59,12 +50,12 @@ public final class BuiltinProperty extends AbstractProperty {
}
@Override
- public void set (ExecutionContext ctx, Object o, Object newValue) {
+ public void setRaw (ExecutionContext ctx, Object o, Object newValue) {
if (_setter == null)
- super.set (ctx, o, newValue);
+ super.setRaw (ctx, o, newValue);
try {
- _setter.invoke (o, _converter.backendToJava (newValue));
+ _setter.invoke (o, newValue);
} catch (Exception e) {
ErrorHandler.handle(e);
}

Back to the top