Zip trait walks two values, invoking the
Zipper methods where
appropriate, but otherwise requiring strict equality.
Zipper trait for more details.
To implement the trait, typically you would use one of the macros
Uses the zipper to walk through two values, ensuring that they match.