pub struct Case { /* private fields */ }Expand description
A case clause inside a Switch statement, as defined by the spec.
Even though every Case body is a StatementList, it doesn’t create a new lexical
environment. This means any variable declared in a Case will be considered as part of the
lexical environment of the parent Switch block.
Implementations§
Source§impl Case
impl Case
Sourcepub const fn new(condition: Expression, body: StatementList) -> Self
pub const fn new(condition: Expression, body: StatementList) -> Self
Creates a regular Case AST node.
Sourcepub const fn default(body: StatementList) -> Self
pub const fn default(body: StatementList) -> Self
Creates a default Case AST node.
Sourcepub const fn condition(&self) -> Option<&Expression>
pub const fn condition(&self) -> Option<&Expression>
Gets the condition of the case.
If it’s a regular case returns Some with the Expression,
otherwise None is returned if it’s the default case.
Sourcepub const fn body(&self) -> &StatementList
pub const fn body(&self) -> &StatementList
Gets the statement listin the body of the case.
Sourcepub const fn is_default(&self) -> bool
pub const fn is_default(&self) -> bool
Check if the case is the default case.
Trait Implementations§
Source§impl<'arbitrary> Arbitrary<'arbitrary> for Case
impl<'arbitrary> Arbitrary<'arbitrary> for Case
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<'de> Deserialize<'de> for Case
impl<'de> Deserialize<'de> for Case
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<'a> From<&'a mut Case> for NodeRefMut<'a>
impl<'a> From<&'a mut Case> for NodeRefMut<'a>
Source§fn from(node: &'a mut Case) -> NodeRefMut<'a>
fn from(node: &'a mut Case) -> NodeRefMut<'a>
Converts to this type from the input type.
impl StructuralPartialEq for Case
Source§impl VisitWith for Case
impl VisitWith for Case
Source§fn visit_with<'a, V>(&'a self, visitor: &mut V) -> ControlFlow<V::BreakTy>where
V: Visitor<'a>,
fn visit_with<'a, V>(&'a self, visitor: &mut V) -> ControlFlow<V::BreakTy>where
V: Visitor<'a>,
Visit this node with the provided visitor.
Source§fn visit_with_mut<'a, V>(
&'a mut self,
visitor: &mut V,
) -> ControlFlow<V::BreakTy>where
V: VisitorMut<'a>,
fn visit_with_mut<'a, V>(
&'a mut self,
visitor: &mut V,
) -> ControlFlow<V::BreakTy>where
V: VisitorMut<'a>,
Visit this node with the provided visitor mutably, allowing the visitor to modify private
fields.
Auto Trait Implementations§
impl !RefUnwindSafe for Case
impl !Send for Case
impl !Sync for Case
impl !UnwindSafe for Case
impl Freeze for Case
impl Unpin for Case
impl UnsafeUnpin for Case
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