Struct donet_core::dcswitch::SwitchCase
source · pub struct SwitchCase<'dc> {
switch: &'dc DCSwitch<'dc>,
breaks: bool,
value: Vec<u8>,
fields: Vec<DCField<'dc>>,
}
Expand description
Represents a case in a DC switch declaration.
Fields§
§switch: &'dc DCSwitch<'dc>
§breaks: bool
Note that in the legacy DC language, switch cases always assume to break, no matter if a break statement was parsed at syntax analysis. This legacy behavior is not followed by Donet.
value: Vec<u8>
Empty byte array signifies default case.
fields: Vec<DCField<'dc>>
Implementations§
source§impl<'dc> SwitchCase<'dc>
impl<'dc> SwitchCase<'dc>
sourcepub fn is_default(&self) -> bool
pub fn is_default(&self) -> bool
Returns true if this case is a default case.
sourcepub fn get_num_fields(&self) -> usize
pub fn get_num_fields(&self) -> usize
Returns the number of fields in the case.
pub fn get_field(&self, index: usize) -> Option<&'dc DCField<'_>>
pub fn get_field_by_name(&self, _name: String) -> Option<&'dc DCField<'_>>
Trait Implementations§
source§impl<'dc> Debug for SwitchCase<'dc>
impl<'dc> Debug for SwitchCase<'dc>
source§impl<'dc> Display for SwitchCase<'dc>
impl<'dc> Display for SwitchCase<'dc>
source§impl<'dc> LegacyDCHash for SwitchCase<'dc>
impl<'dc> LegacyDCHash for SwitchCase<'dc>
source§fn generate_hash(&self, hashgen: &mut DCHashGenerator)
fn generate_hash(&self, hashgen: &mut DCHashGenerator)
Accumulates the properties of this DC element into the file hash.
Auto Trait Implementations§
impl<'dc> Freeze for SwitchCase<'dc>
impl<'dc> RefUnwindSafe for SwitchCase<'dc>
impl<'dc> Send for SwitchCase<'dc>
impl<'dc> Sync for SwitchCase<'dc>
impl<'dc> Unpin for SwitchCase<'dc>
impl<'dc> UnwindSafe for SwitchCase<'dc>
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