Skip to main content

forest/ipld/selector/
empty_map.rs

1// Copyright 2019-2026 ChainSafe Systems
2// SPDX-License-Identifier: Apache-2.0, MIT
3
4use serde::{Deserialize, Deserializer, Serialize, Serializer};
5
6// This is only used as a utility because go impl serializes no data as an empty
7// map
8#[allow(dead_code)]
9#[derive(Serialize, Deserialize)]
10struct EmptyMap {}
11
12#[allow(dead_code)]
13pub fn serialize<S>(serializer: S) -> Result<S::Ok, S::Error>
14where
15    S: Serializer,
16{
17    EmptyMap {}.serialize(serializer)
18}
19
20#[allow(dead_code)]
21pub fn deserialize<'de, D>(deserializer: D) -> Result<(), D::Error>
22where
23    D: Deserializer<'de>,
24{
25    let EmptyMap {} = Deserialize::deserialize(deserializer)?;
26    Ok(())
27}