blob: 26f948e55ea2ca515b22077c8f7262641460058c [file] [log] [blame]
package edu.uci.ics.asterix.aql.expression;
import edu.uci.ics.asterix.aql.base.Expression;
import edu.uci.ics.asterix.aql.expression.visitor.IAqlExpressionVisitor;
import edu.uci.ics.asterix.aql.expression.visitor.IAqlVisitorWithVoidReturn;
import edu.uci.ics.asterix.common.exceptions.AsterixException;
public class FieldAccessor extends AbstractAccessor {
private Identifier ident;
public FieldAccessor(Expression expr, Identifier ident) {
super(expr);
this.ident = ident;
}
public Identifier getIdent() {
return ident;
}
public void setIdent(Identifier ident) {
this.ident = ident;
}
@Override
public Kind getKind() {
return Kind.FIELD_ACCESSOR_EXPRESSION;
}
@Override
public <T> void accept(IAqlVisitorWithVoidReturn<T> visitor, T arg) throws AsterixException {
visitor.visit(this, arg);
}
@Override
public <R, T> R accept(IAqlExpressionVisitor<R, T> visitor, T arg) throws AsterixException {
return visitor.visitFieldAccessor(this, arg);
}
}