//! Walker traverses an AST in depth-first order. Each overridden visit method has full control over
//! what happens with its node, it can do its own traversal of the node's children, call `visit::walk_*`
//! Code heavily inspired from <https://github.com/rust-lang/rust/blob/master/compiler/rustc_ast/src/visit.rs>
/// Each method of the `Visitor` trait is a hook to be potentially overridden. Each method's default
/// implementation recursively visits the substructure of the input via the corresponding `walk` method;