public override string VisitListType(ListType node) => $"[{Visit(node.Type)}]";
public override INode VisitListType(ListType node) { Visit(node.Type); return(DefaultVisit(node)); }
public virtual ListType LeaveListType(ListType listType) { return(Leave(listType)); }
public virtual TResult VisitListType(ListType node) { return(DefaultVisit(node)); }
public virtual ListType EnterListType(ListType listType) { return(Enter(listType)); }