<itemvalue="Use the given [visitor] to visit this node. Return the value returned by the visitor as a result of visiting this node."/>
<itemvalue="An AST visitor that will recursively visit all of the nodes in an AST structure (like instances of the class [RecursiveAstVisitor]). In addition, every node will also be visited by using a single unified [visitNode] method. Subclasses that override a visit method must either invoke the overridden visit method or explicitly invoke the more general [visitNode] method. Failure to do so will cause the children of the visited node to not be visited. Clients may extend this class."/>
<itemvalue="An AST visitor that will recursively visit all of the nodes in an AST structure. For example, using an instance of this class to visit a [Block] will also cause all of the statements in the block to be visited. Subclasses that override a visit method must either invoke the overridden visit method or must explicitly ask the visited node to visit its children. Failure to do so will cause the children of the visited node to not be visited. Clients may extend this class."/>
<itemvalue="An object that can be used to visit an AST structure. Clients may not extend, implement or mix-in this class. There are classes that implement this interface that provide useful default behaviors in `package:analyzerdartastvisitor.dart`. A couple of the most useful include SimpleAstVisitor which implements every visit method by doing nothing, RecursiveAstVisitor which will cause every node in a structure to be visited, and ThrowingAstVisitor which implements every visit method by throwing an exception."/>
<itemvalue="An AST visitor that will throw an exception if any of the visit methods that are invoked have not been overridden. It is intended to be a superclass for classes that implement the visitor pattern and need to (a) override all of the visit methods or (b) need to override a subset of the visit method and want to catch when any other visit methods have been invoked. Clients may extend this class."/>
<itemvalue="A visitor that will do nothing when visiting an element. It is intended to be a superclass for classes that use the visitor pattern primarily as a dispatch mechanism (and hence don't need to recursively visit a whole structure) and that only need to visit a small number of element types. Clients may extend this class."/>