Expand description
§CosmWasm Map Pagination
This package provides generic convienence methods for paginating keys
and values in a CosmWasm Map or SnapshotMap. If you use these
methods to paginate the maps in your contract you may make larry0x
happy.
§Example
Given a map like:
use cw_storage_plus::Map;
pub const ITEMS: Map<String, String> = Map::new("items");You can use this package to write a query to list it’s contents like:
use cosmwasm_std::{Deps, Binary, to_json_binary, StdResult};
use cw_storage_plus::Map;
use cw_paginate_storage::paginate_map;
pub const ITEMS: Map<String, String> = Map::new("items");
pub fn query_list_items(
deps: Deps,
start_after: Option<String>,
limit: Option<u32>,
) -> StdResult<Binary> {
to_json_binary(&paginate_map(
deps,
&ITEMS,
start_after,
limit,
cosmwasm_std::Order::Descending,
)?)
}Functions§
- paginate_
map - Generic function for paginating a list of (K, V) pairs in a CosmWasm Map.
- paginate_
map_ keys - Same as
paginate_mapbut only returns the keys. - paginate_
map_ values - Same as
paginate_mapbut only returns the values. - paginate_
snapshot_ map - Same as
paginate_mapbut for use withSnapshotMap. - paginate_
snapshot_ map_ keys - Same as
paginate_mapbut only returns the keys. For use withSnaphotMap.