public ASTType accept(TypeVisitor v) { return v.visit(this); }
public override ASTType accept(TypeVisitor v) { return v.visit(this); }
public abstract ASTType accept(TypeVisitor v);