Struct lib_ruby_parser::nodes::Case [−][src]
#[repr(C)]pub struct Case { pub expr: Option<Box<Node>>, pub when_bodies: Vec<Node>, pub else_body: Option<Box<Node>>, pub keyword_l: Loc, pub else_l: Option<Loc>, pub end_l: Loc, pub expression_l: Loc, }
Expand description
Represents a case statement (for pattern matching see CaseMatch node)
Fields
expr: Option<Box<Node>>Expression given to case, Int("1") for case 1; end
None for code like
case
when pattern
end
when_bodies: Vec<Node>A list of When nodes (each has patterns and body)
else_body: Option<Box<Node>>Body of the else branch, None if there’s no else branch
keyword_l: LocLocation of the case keyword
case 1; end
~~~~
else_l: Option<Loc>Location of the else keyword
case 1; else; end
~~~~
None if there’s no else branch
end_l: LocLocation of the end keyword
case 1; end
~~~
expression_l: LocLocation of the full expression
case 1; end
~~~~~~~~~~~
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Caseimpl UnwindSafe for CaseBlanket Implementations
Mutably borrows from an owned value. Read more