public class RebindingMap
A map from old bindings to new bindings, maintained during a copy() operation applied
to an expression tree. When local variable bindings are copied, the mapping from old to
new binding can be added to the list; when local variable references are encountered,
the binding can be switched from the old binding to the new.
Bindings are compared strictly using object identity. Some classes that implement the
Binding interface have their own equals() method that could return true for two
bindings that need to be treated as distinct.