in fastpay_core/src/base_types.rs [276:288]
fn write(&self, hasher: &mut Hasher);
}
/// Activate the blanket implementation of `Signable` based on serde and BCS.
/// * We use `serde_name` to extract a seed from the name of structs and enums.
/// * We use `BCS` to generate canonical bytes suitable for hashing and signing.
pub trait BcsSignable: Serialize + serde::de::DeserializeOwned {}
impl<T, Hasher> Signable<Hasher> for T
where
T: BcsSignable,
Hasher: std::io::Write,
{