Leave apply available in the generic traverser to do something else.
Leave apply available in the generic traverser to do something else.
Compiler specific tree types are handled here: the remainder are in the library's abstract tree traverser.
Compiler specific tree types are handled here: the remainder are in the library's abstract tree traverser.
The abstract traverser is not aware of Tree.
The abstract traverser is not aware of Tree.isTerm, so we override this one.
Traverse pattern and collect all variable names with their types in buffer The variables keep their positions; whereas the pattern is converted to be synthetic for all nodes that contain a variable position.