[][src]Module chalk_ir::zip

Traits for "zipping" types, walking through two structures and checking that they match.

Traits

Zip

The Zip trait walks two values, invoking the Zipper methods where appropriate, but otherwise requiring strict equality.

Zipper

When we zip types, we basically traverse the structure, ensuring that it matches. When we come to types/lifetimes, we invoke the callback methods in the zipper to match them up. Primarily used during unification or similar operations.