pub struct I8;Expand description
Signed 8-bit integer combinator.
Defined as Mapped { inner: Fixed::<1>, mapper: (i8_from_bytes, i8_to_bytes) }.
Trait Implementations§
Source§impl Consistency for I8
impl Consistency for I8
Source§impl EquivSerializers for I8
impl EquivSerializers for I8
Source§impl EquivSerializersGeneral for I8
impl EquivSerializersGeneral for I8
Source§proof fn lemma_serialize_equiv(&self, v: i8, obuf: Seq<u8>)
proof fn lemma_serialize_equiv(&self, v: i8, obuf: Seq<u8>)
Source§fn equiv_general_inv(&self) -> bool
fn equiv_general_inv(&self) -> bool
Source§impl GoodSerializer for I8
impl GoodSerializer for I8
Source§proof fn lemma_serialize_len(&self, v: i8)
proof fn lemma_serialize_len(&self, v: i8)
Source§fn serialize_inv(&self) -> bool
fn serialize_inv(&self) -> bool
Source§impl LeafNonMalleable for I8
impl LeafNonMalleable for I8
Source§proof fn nonmal_leaf_inv(&self)
proof fn nonmal_leaf_inv(&self)
Source§impl MinMaxByteLen for I8
impl MinMaxByteLen for I8
Source§impl NoLookAhead for I8
impl NoLookAhead for I8
Source§impl NonMalleable for I8
impl NonMalleable for I8
Source§proof fn lemma_parse_non_malleable(&self, buf1: Seq<u8>, buf2: Seq<u8>)
proof fn lemma_parse_non_malleable(&self, buf1: Seq<u8>, buf2: Seq<u8>)
Source§fn nonmal_inv(&self) -> bool
fn nonmal_inv(&self) -> bool
Source§impl NonTailFmt for I8
impl NonTailFmt for I8
Source§proof fn lemma_serialize_dps_prepend(&self, v: i8, obuf: Seq<u8>)
proof fn lemma_serialize_dps_prepend(&self, v: i8, obuf: Seq<u8>)
Source§proof fn lemma_serialize_dps_len(&self, v: i8, obuf: Seq<u8>)
proof fn lemma_serialize_dps_len(&self, v: i8, obuf: Seq<u8>)
Source§fn serialize_dps_inv(&self) -> bool
fn serialize_dps_inv(&self) -> bool
Source§impl Productive for I8
impl Productive for I8
Source§proof fn lemma_productive(&self, s: Seq<u8>)
proof fn lemma_productive(&self, s: Seq<u8>)
Source§fn productive_inv(&self) -> bool
fn productive_inv(&self) -> bool
Source§impl SPRoundTripDps for I8
impl SPRoundTripDps for I8
Source§proof fn theorem_serialize_dps_parse_roundtrip(&self, v: i8, obuf: Seq<u8>)
proof fn theorem_serialize_dps_parse_roundtrip(&self, v: i8, obuf: Seq<u8>)
Source§fn unambiguous(&self) -> bool
fn unambiguous(&self) -> bool
Source§impl SafeParser for I8
impl SafeParser for I8
Source§impl<Output: OutputBuf> Serializer<Output, i8> for I8
impl<Output: OutputBuf> Serializer<Output, i8> for I8
Source§exec fn serialize_into(&self, v: &i8, obuf: &mut Output)
exec fn serialize_into(&self, v: &i8, obuf: &mut Output)
Source§impl SoundParser for I8
impl SoundParser for I8
Source§impl SpecByteLen for I8
impl SpecByteLen for I8
Source§impl SpecParser for I8
impl SpecParser for I8
Source§impl SpecSerializer for I8
impl SpecSerializer for I8
Source§impl SpecSerializerDps for I8
impl SpecSerializerDps for I8
Source§impl StaticByteLen for I8
impl StaticByteLen for I8
Source§open spec fn static_byte_len() -> nat
open spec fn static_byte_len() -> nat
{ U8_BYTE_LEN as nat }Source§proof fn lemma_static_len_matches_byte_len(&self, v: Self::T)
proof fn lemma_static_len_matches_byte_len(&self, v: Self::T)
Source§impl ValueByteLen for I8
impl ValueByteLen for I8
Source§open spec fn value_byte_len(_v: Self::T) -> nat
open spec fn value_byte_len(_v: Self::T) -> nat
{ U8_BYTE_LEN as nat }Source§proof fn lemma_value_len_matches_byte_len(&self, v: Self::T)
proof fn lemma_value_len_matches_byte_len(&self, v: Self::T)
impl Copy for I8
Auto Trait Implementations§
impl Freeze for I8
impl RefUnwindSafe for I8
impl Send for I8
impl Sync for I8
impl Unpin for I8
impl UnsafeUnpin for I8
impl UnwindSafe for I8
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, VERUS_SPEC__A> FromSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: From<T>,
impl<T, VERUS_SPEC__A> FromSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: From<T>,
fn obeys_from_spec() -> bool
fn from_spec(v: T) -> VERUS_SPEC__A
§impl<T, VERUS_SPEC__A> IntoSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: Into<T>,
impl<T, VERUS_SPEC__A> IntoSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: Into<T>,
fn obeys_into_spec() -> bool
fn into_spec(self) -> T
§impl<T, U> IntoSpecImpl<U> for Twhere
U: From<T>,
impl<T, U> IntoSpecImpl<U> for Twhere
U: From<T>,
fn obeys_into_spec() -> bool
fn into_spec(self) -> U
Source§impl<C> NonAmbiguous for Cwhere
C: SPRoundTrip,
impl<C> NonAmbiguous for Cwhere
C: SPRoundTrip,
Source§open spec fn nonamb_inv(&self) -> bool
open spec fn nonamb_inv(&self) -> bool
{ self.sp_roundtrip_inv() }Source§proof fn lemma_serialize_injective(
&self,
v1: <C as Consistency>::Val,
v2: <C as Consistency>::Val,
)
proof fn lemma_serialize_injective( &self, v1: <C as Consistency>::Val, v2: <C as Consistency>::Val, )
Source§impl<C> PSRoundTrip for C
impl<C> PSRoundTrip for C
Source§open spec fn ps_roundtrip_inv(&self) -> bool
open spec fn ps_roundtrip_inv(&self) -> bool
{ self.safe_inv() && self.sound_inv() && self.nonmal_inv() && self.sp_roundtrip_inv() }Source§proof fn theorem_parse_serialize_roundtrip(&self, ibuf: Seq<u8>)
proof fn theorem_parse_serialize_roundtrip(&self, ibuf: Seq<u8>)
Source§impl<C> SPRoundTrip for C
impl<C> SPRoundTrip for C
Source§open spec fn sp_roundtrip_inv(&self) -> bool
open spec fn sp_roundtrip_inv(&self) -> bool
{ self.serialize_inv() && self.equiv_inv() && self.unambiguous() }