#[repr(C)]pub struct SwitchStmt {
pub span: Span,
pub discriminant: Box<Expr>,
pub cases: Vec<SwitchCase>,
}
Fields§
§span: Span
§discriminant: Box<Expr>
§cases: Vec<SwitchCase>
Trait Implementations§
Source§impl<'arbitrary> Arbitrary<'arbitrary> for SwitchStmt
impl<'arbitrary> Arbitrary<'arbitrary> for SwitchStmt
Source§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
Generate an arbitrary value of
Self
from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Get a size hint for how many bytes out of an
Unstructured
this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Get a size hint for how many bytes out of an
Unstructured
this type
needs to construct itself. Read moreSource§impl Archive for SwitchStmt
impl Archive for SwitchStmt
Source§const COPY_OPTIMIZATION: CopyOptimization<Self>
const COPY_OPTIMIZATION: CopyOptimization<Self>
An optimization flag that allows the bytes of this type to be copied
directly to a writer instead of calling
serialize
. Read moreSource§impl Clone for SwitchStmt
impl Clone for SwitchStmt
Source§fn clone(&self) -> SwitchStmt
fn clone(&self) -> SwitchStmt
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for SwitchStmt
impl Debug for SwitchStmt
Source§impl Default for SwitchStmt
impl Default for SwitchStmt
Source§fn default() -> SwitchStmt
fn default() -> SwitchStmt
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for SwitchStmt
impl<'de> Deserialize<'de> for SwitchStmt
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<__D: Fallible + ?Sized> Deserialize<SwitchStmt, __D> for Archived<SwitchStmt>
impl<__D: Fallible + ?Sized> Deserialize<SwitchStmt, __D> for Archived<SwitchStmt>
Source§fn deserialize(
&self,
deserializer: &mut __D,
) -> Result<SwitchStmt, <__D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut __D, ) -> Result<SwitchStmt, <__D as Fallible>::Error>
Deserializes using the given deserializer
Source§impl EqIgnoreSpan for SwitchStmt
impl EqIgnoreSpan for SwitchStmt
fn eq_ignore_span(&self, other: &Self) -> bool
Source§impl From<SwitchStmt> for ModuleItem
impl From<SwitchStmt> for ModuleItem
Source§fn from(src: SwitchStmt) -> ModuleItem
fn from(src: SwitchStmt) -> ModuleItem
Converts to this type from the input type.
Source§impl From<SwitchStmt> for Stmt
impl From<SwitchStmt> for Stmt
Source§fn from(v: SwitchStmt) -> Self
fn from(v: SwitchStmt) -> Self
Converts to this type from the input type.
Source§impl Hash for SwitchStmt
impl Hash for SwitchStmt
Source§impl PartialEq for SwitchStmt
impl PartialEq for SwitchStmt
Source§impl<__S> Serialize<__S> for SwitchStmt
impl<__S> Serialize<__S> for SwitchStmt
Source§impl Serialize for SwitchStmt
impl Serialize for SwitchStmt
Source§impl ShrinkToFit for SwitchStmt
impl ShrinkToFit for SwitchStmt
fn shrink_to_fit(&mut self)
Source§impl Spanned for SwitchStmt
impl Spanned for SwitchStmt
impl Eq for SwitchStmt
impl StructuralPartialEq for SwitchStmt
Auto Trait Implementations§
impl Freeze for SwitchStmt
impl RefUnwindSafe for SwitchStmt
impl Send for SwitchStmt
impl Sync for SwitchStmt
impl Unpin for SwitchStmt
impl UnwindSafe for SwitchStmt
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere
T: Archive,
Source§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
The archived counterpart of this type. Unlike
Archive
, it may be
unsized. Read moreSource§fn archived_metadata(
&self,
) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
fn archived_metadata( &self, ) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
Creates the archived version of the metadata for this value.
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out
indicating that a T
is niched.Source§impl<T, S> SerializeUnsized<S> for T
impl<T, S> SerializeUnsized<S> for T
Source§impl<T> SpanExt for Twhere
T: Spanned,
impl<T> SpanExt for Twhere
T: Spanned,
fn is_synthesized(&self) -> bool
fn starts_on_new_line(&self, format: ListFormat) -> bool
Source§fn comment_range(&self) -> Span
fn comment_range(&self) -> Span
Gets a custom text range to use when emitting comments.