001package org.clafer.ast;
002
003import org.clafer.common.Check;
004
005/**
006 *
007 * @author jimmy
008 */
009public class AstJoinRef implements AstSetExpr {
010
011    private final AstSetExpr deref;
012
013    AstJoinRef(AstSetExpr deref) {
014        this.deref = Check.notNull(deref);
015    }
016
017    public AstSetExpr getDeref() {
018        return deref;
019    }
020
021    @Override
022    public <A, B> B accept(AstExprVisitor<A, B> visitor, A a) {
023        return visitor.visit(this, a);
024    }
025
026    @Override
027    public String toString() {
028        return deref + " . ref";
029    }
030}