fn list_paginated()

in src/client/list.rs [63:90]


    fn list_paginated(
        &self,
        prefix: Option<&Path>,
        delimiter: bool,
        offset: Option<&Path>,
    ) -> BoxStream<'static, Result<ListResult>> {
        let offset = offset.map(|x| x.to_string());
        let prefix = prefix
            .filter(|x| !x.as_ref().is_empty())
            .map(|p| format!("{}{}", p.as_ref(), crate::path::DELIMITER));

        stream_paginated(
            self.clone(),
            (prefix, offset),
            move |client, (prefix, offset), token| async move {
                let (r, next_token) = client
                    .list_request(
                        prefix.as_deref(),
                        delimiter,
                        token.as_deref(),
                        offset.as_deref(),
                    )
                    .await?;
                Ok((r, (prefix, offset), next_token))
            },
        )
        .boxed()
    }