import java.util.ArrayList;
import java.util.Collection;
+import java.util.List;
import org.simantics.scl.compiler.common.names.Name;
+import org.simantics.scl.compiler.constants.Constant;
import org.simantics.scl.compiler.elaboration.modules.SCLValue;
import org.simantics.scl.compiler.elaboration.modules.TypeClass;
import org.simantics.scl.compiler.elaboration.modules.TypeClassInstance;
else
return base.getValue(name);
}
+
+ @Override
+ public List<Constant> getFieldAccessors(String name) {
+ List<Constant> r1 = base.getFieldAccessors(name);
+ List<Constant> r2 = module.getFieldAccessors(name);
+ if(r1 == null)
+ return r2;
+ if(r2 == null)
+ return r1;
+ ArrayList<Constant> result = new ArrayList<Constant>(r1.size() + r2.size());
+ result.addAll(r1);
+ result.addAll(r2);
+ return result;
+ }
+
@Override
public SCLRelation getRelation(Name name) {
if(name.module.equals(module.getName()))