--- /dev/null
+package org.simantics.scl.compiler.constants.componentaccess;
+
+import org.cojen.classfile.TypeDesc;
+import org.simantics.scl.compiler.constants.generic.MethodRef;
+import org.simantics.scl.compiler.constants.generic.MethodRef.FieldRef;
+import org.simantics.scl.compiler.internal.codegen.utils.MethodBuilder;
+
+public class FieldComponentAccess implements ComponentAccess {
+ public final String fieldName;
+
+ public FieldComponentAccess(String fieldName) {
+ this.fieldName = fieldName;
+ }
+
+ @Override
+ public void load(MethodBuilder mb, String baseClass, TypeDesc returnType) {
+ mb.loadField(baseClass, fieldName, returnType);
+ }
+
+ @Override
+ public MethodRef toMethodRef(String baseClass, TypeDesc returnType) {
+ return new FieldRef(baseClass, fieldName, returnType);
+ }
+}