1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
// use af_move_type::MoveInstance;
// use af_sui_types::{Address, TypeTag, Version};
// use futures::{Stream, StreamExt};
// use sui_gql_client::GraphQlClient;
// use sui_gql_client::queries::GraphQlClientExt as _;
// use sui_gql_client::queries::outputs::DynamicField;
// use super::Result as QResult;
// pub(super) async fn query<C>(
// client: &C,
// registry_address: Address,
// version: Option<Version>,
// ) -> Result<impl Stream<Item = QResult<Address, C>> + '_, C::Error>
// where
// C: GraphQlClient,
// {
// let dfs = std::pin::pin!(client.object_dfs(registry_address, version, None).await);
// let res = vec
// while let Some(df) = dfs.next().await {
// let (name, raw) = df?;
// let DynamicField::Field(_raw) = raw else {
// continue;
// };
// let TypeTag::Struct(name_type) = name.type_ else {
// continue;
// };
// if let Ok(key) =
// MoveInstance::<crate::keys::RegistryMarketInfo>::from_raw_struct(*name_type, &name.bcs)
// {
// yield key.value.ch_id.bytes;
// }
// }
// // async_stream::try_stream! {
// // let mut has_next_page = true;
// // let mut cursor = None;
// // while has_next_page {
// // let (dfs, cursor_) = client
// // .owner_df_contents(registry_address, version, None, cursor)
// // .await?;
// // cursor = cursor_;
// // has_next_page = cursor.is_some();
// // for (name, raw) in dfs {
// // let DynamicField::Field(_raw) = raw else {
// // continue;
// // };
// // let TypeTag::Struct(name_type) = name.type_ else {
// // continue;
// // };
// // if let Ok(key) =
// // MoveInstance::<crate::keys::RegistryMarketInfo>::from_raw_struct(*name_type, &name.bcs)
// // {
// // yield key.value.ch_id.bytes;
// // }
// // }
// // }
// // }
// }