pub struct CaseGroup {
pub labels: Vec<i64>,
pub string_labels: Vec<String>,
pub enum_labels: Vec<String>,
pub raw_labels: Vec<String>,
pub guard: Option<Expr>,
pub body: Vec<Stmt>,
}Fields§
§labels: Vec<i64>Case labels (empty = fallthrough continuation of previous group).
string_labels: Vec<String>String case values (when on_string).
enum_labels: Vec<String>Enum constant names (restored $SwitchMap switch).
raw_labels: Vec<String>Verbatim case labels (null, type patterns) from typeSwitch
restoration.
guard: Option<Expr>Pattern guard (case T v when GUARD:) folded from the desugared
restart shape (guarded typeSwitch: if (guard) body else {state=N; continue;}). Printed after the raw label.
body: Vec<Stmt>Trait Implementations§
impl StructuralPartialEq for CaseGroup
Auto Trait Implementations§
impl Freeze for CaseGroup
impl RefUnwindSafe for CaseGroup
impl Send for CaseGroup
impl Sync for CaseGroup
impl Unpin for CaseGroup
impl UnsafeUnpin for CaseGroup
impl UnwindSafe for CaseGroup
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