1 package org.simantics.scl.compiler.elaboration.expressions.accessor;
\r
3 import org.simantics.scl.compiler.constants.StringConstant;
\r
4 import org.simantics.scl.compiler.elaboration.expressions.ELiteral;
\r
5 import org.simantics.scl.compiler.elaboration.expressions.Expression;
\r
6 import org.simantics.scl.compiler.elaboration.expressions.VariableProcedure;
\r
7 import org.simantics.scl.compiler.errors.Locations;
\r
9 public class StringAccessor extends FieldAccessor {
\r
10 public final String fieldName;
\r
12 public StringAccessor(String fieldName) {
\r
13 this.fieldName = fieldName;
\r
17 public Expression asExpression() {
\r
18 return new ELiteral(new StringConstant(fieldName));
\r
22 public void setLocationDeep(long loc) {
\r
23 if(location == Locations.NO_LOCATION)
\r
28 public void accept(FieldAccessorVisitor visitor) {
\r
29 visitor.visit(this);
\r
33 public void forVariables(VariableProcedure procedure) {
\r