use super::*;
impl<N: Network> ToBits for DynamicFuture<N> {
#[inline]
fn write_bits_le(&self, vec: &mut Vec<bool>) {
self.program_name.write_bits_le(vec);
self.program_network.write_bits_le(vec);
self.function_name.write_bits_le(vec);
self.checksum.write_bits_le(vec);
}
#[inline]
fn write_bits_be(&self, vec: &mut Vec<bool>) {
self.program_name.write_bits_be(vec);
self.program_network.write_bits_be(vec);
self.function_name.write_bits_be(vec);
self.checksum.write_bits_be(vec);
}
}
impl<N: Network> DynamicFuture<N> {
#[inline]
pub fn size_in_bits() -> Result<usize> {
Field::<N>::size_in_bits().checked_mul(4).ok_or_else(|| anyhow!("`size_in_bits` overflowed"))
}
#[inline]
pub fn size_in_bits_raw() -> Result<usize> {
Self::size_in_bits()
}
}