solana_config_interface/
state.rs1use solana_pubkey::Pubkey;
2#[cfg(feature = "serde")]
3use {
4 serde_derive::{Deserialize, Serialize},
5 solana_short_vec as short_vec,
6};
7
8#[derive(Debug, Default)]
10#[cfg_attr(feature = "serde", derive(Deserialize, Serialize))]
11pub struct ConfigKeys {
12 #[cfg_attr(feature = "serde", serde(with = "short_vec"))]
15 pub keys: Vec<(Pubkey, bool)>,
16}
17
18#[cfg(feature = "bincode")]
20pub fn get_config_data(bytes: &[u8]) -> Result<&[u8], bincode::Error> {
21 bincode::deserialize::<ConfigKeys>(bytes)
22 .and_then(|keys| bincode::serialized_size(&keys))
23 .map(|offset| &bytes[offset as usize..])
24}