def descr(col):
    """Array-interface compliant full description of a column.

    This returns a 3-tuple (name, type, shape) that can always be
    used in a structured array dtype definition.
    """
    col_dtype = 'O' if col.info.dtype is None else col.info.dtype
    col_shape = col.shape[1:] if hasattr(col, 'shape') else ()
    return col.info.name, col_dtype, col_shape
