pub struct Void(pub &'static str);Expand description
Marker combinator that denotes the “void” format.
Parsing semantics: always fails.
§Consistency
No value is consistent with Void.
Tuple Fields§
§0: &'static strTrait Implementations§
Source§impl AdmitsUniqueVal for Void
impl AdmitsUniqueVal for Void
Source§proof fn lemma_unique_consistent_val(&self, v1: Self::Val, v2: Self::Val)
proof fn lemma_unique_consistent_val(&self, v1: Self::Val, v2: Self::Val)
Source§impl Consistency for Void
impl Consistency for Void
Source§impl EquivSerializers for Void
impl EquivSerializers for Void
Source§impl EquivSerializersGeneral for Void
impl EquivSerializersGeneral for Void
Source§proof fn lemma_serialize_equiv(&self, v: Self::SVal, obuf: Seq<u8>)
proof fn lemma_serialize_equiv(&self, v: Self::SVal, obuf: Seq<u8>)
Source§fn equiv_general_inv(&self) -> bool
fn equiv_general_inv(&self) -> bool
Source§impl GoodSerializer for Void
impl GoodSerializer for Void
Source§proof fn lemma_serialize_len(&self, v: Self::SVal)
proof fn lemma_serialize_len(&self, v: Self::SVal)
Source§fn serialize_inv(&self) -> bool
fn serialize_inv(&self) -> bool
Source§impl LeafNonMalleable for Void
impl LeafNonMalleable for Void
Source§proof fn nonmal_leaf_inv(&self)
proof fn nonmal_leaf_inv(&self)
Source§impl MinMaxByteLen for Void
impl MinMaxByteLen for Void
Source§impl NoLookAhead for Void
impl NoLookAhead for Void
Source§impl NonMalleable for Void
impl NonMalleable for Void
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 Void
impl NonTailFmt for Void
Source§proof fn lemma_serialize_dps_prepend(&self, v: Self::SValue, obuf: Seq<u8>)
proof fn lemma_serialize_dps_prepend(&self, v: Self::SValue, obuf: Seq<u8>)
Source§proof fn lemma_serialize_dps_len(&self, v: Self::SValue, obuf: Seq<u8>)
proof fn lemma_serialize_dps_len(&self, v: Self::SValue, obuf: Seq<u8>)
Source§fn serialize_dps_inv(&self) -> bool
fn serialize_dps_inv(&self) -> bool
Source§impl Productive for Void
impl Productive for Void
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 Void
impl SPRoundTripDps for Void
Source§proof fn theorem_serialize_dps_parse_roundtrip(&self, v: Self::T, obuf: Seq<u8>)
proof fn theorem_serialize_dps_parse_roundtrip(&self, v: Self::T, obuf: Seq<u8>)
Source§fn unambiguous(&self) -> bool
fn unambiguous(&self) -> bool
Source§impl SafeParser for Void
impl SafeParser for Void
Source§impl<Output: OutputBuf> Serializer<Output, ExecNever> for Void
impl<Output: OutputBuf> Serializer<Output, ExecNever> for Void
Source§exec fn serialize_into(&self, _v: &ExecNever, _obuf: &mut Output)
exec fn serialize_into(&self, _v: &ExecNever, _obuf: &mut Output)
Source§impl SoundParser for Void
impl SoundParser for Void
Source§impl SpecByteLen for Void
impl SpecByteLen for Void
Source§impl SpecParser for Void
impl SpecParser for Void
Source§impl SpecSerializer for Void
impl SpecSerializer for Void
Source§impl SpecSerializerDps for Void
impl SpecSerializerDps for Void
Source§impl StaticByteLen for Void
impl StaticByteLen for Void
Source§open spec fn static_byte_len() -> nat
open spec fn static_byte_len() -> nat
{ ZERO_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 Void
impl ValueByteLen for Void
Source§open spec fn value_byte_len(_v: Self::T) -> nat
open spec fn value_byte_len(_v: Self::T) -> nat
{ ZERO_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 Void
Auto Trait Implementations§
impl Freeze for Void
impl RefUnwindSafe for Void
impl Send for Void
impl Sync for Void
impl Unpin for Void
impl UnsafeUnpin for Void
impl UnwindSafe for Void
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() }