This resolves #1589. It updates the MRO for PyProxy: now `proxy.destroy` always refers to the method PyProxy class method that destroys the proxy, `proxy.$destroy` refers to an attribute or method on the proxied Python object. Similarly, `proxy.get` refers to the `PyProxy.get` method if `type(proxy)` has a `__getitem__` method. Otherwise, it refers to an attribute or method on the proxied object. To unambigiously look up `get` on the proxied object, use `proxy.$get`.

The docs should be updated to explain this.
ENH Use leading $ to distinguish shadowed PyProxy methods. This resolves #1589. It updates the MRO for PyProxy: now `proxy.destroy` always refers to the method PyProxy class method that destroys the proxy, `proxy.$destroy` refers to an attribute or method on the proxied Python object. Similarly, `proxy.get` refers to the `PyProxy.get` method if `type(proxy)` has a `__getitem__` method. Otherwise, it refers to an attribute or method on the proxied object. To unambigiously look up `get` on the proxied object, use `proxy.$get`.

The docs should be updated to explain this.
package:
  name: traits
  version: 6.2.0
source:
  sha256: 16fa1518b0778fd53bf0547e6a562b1787bf68c8f6b7995a13bd1902529fdb0c
  url: https://files.pythonhosted.org/packages/44/f3/2fd5d25717536009cbc967449b5598fab7fe9466b84a758fc2f83ebd2c7e/traits-6.2.0.tar.gz
test:
  imports:
  - traits

package:
  name: traits
  version: 6.2.0
source:
  sha256: 16fa1518b0778fd53bf0547e6a562b1787bf68c8f6b7995a13bd1902529fdb0c
  url: https://files.pythonhosted.org/packages/44/f3/2fd5d25717536009cbc967449b5598fab7fe9466b84a758fc2f83ebd2c7e/traits-6.2.0.tar.gz
test:
  imports:
  - traits
