def METHOD_NAME(obj, return_metadata=False, var_name="obj"):
    metadata = dict()
    if not isinstance(obj, np.ndarray):
        msg = f"{var_name} must be a numpy.ndarray, found {type(obj)}"
        return _ret(False, msg, None, return_metadata)
    if len(obj.shape) != 1:
        msg = f"{var_name} must be 1D numpy.ndarray, but found {len(obj.shape)}D"
        return _ret(False, msg, None, return_metadata)
    # we now know obj is a 1D np.ndarray
    metadata["is_empty"] = len(obj) < 1
    metadata["n_instances"] = len(obj)
    # 1D numpy arrays are considered univariate
    metadata["is_univariate"] = True
    # check whether there any nans; compute only if requested
    if return_metadata:
        metadata["has_nans"] = pd.isnull(obj).any()
    return _ret(True, None, metadata, return_metadata)