To test for interface compliance, what about
```python
from collections import Mapping
if isinstance(obj, Mapping):
```

Or I'd be fine with just doing a:

```python
try:
    distbuffer = obj.__distarray__()
except AttributeError:
    distbuffer = obj
```
and let duck typing take it from here.

Thoughts?