The #[finder] macro is used to define a new implementor which combines other implementors,
capable of asserting if different elements are part of an AST with just one instruction, with
the same level of precision as if we had used each implementor separately.
The #[mutator] macro is used to define a new implementor which combines other implementors,
capable of mutating different parts of an AST with just one instruction, with the same level of
precision as if we had used each implementor separately.