pub struct CfgBlockData {
pub id: i64,
pub kind: String,
pub terminator: String,
pub byte_start: u64,
pub byte_end: u64,
pub start_line: u64,
pub start_col: u64,
pub end_line: u64,
pub end_col: u64,
}Expand description
CFG block data (backend-agnostic representation)
This struct represents the data returned by StorageTrait::get_cfg_blocks.
It is a simplified version of Magellan’s CfgBlock that contains only the
fields needed by Mirage for CFG analysis.
Fields§
§id: i64Block ID (from cfg_blocks table)
kind: StringBlock kind (entry, conditional, loop, match, return, etc.)
terminator: StringTerminator kind (how control exits this block)
byte_start: u64Byte offset where block starts
byte_end: u64Byte offset where block ends
start_line: u64Line where block starts (1-indexed)
start_col: u64Column where block starts (0-indexed)
end_line: u64Line where block ends (1-indexed)
end_col: u64Column where block ends (0-indexed)
Trait Implementations§
Source§impl Clone for CfgBlockData
impl Clone for CfgBlockData
Source§fn clone(&self) -> CfgBlockData
fn clone(&self) -> CfgBlockData
Returns a duplicate 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 CfgBlockData
impl Debug for CfgBlockData
Source§impl<'de> Deserialize<'de> for CfgBlockData
impl<'de> Deserialize<'de> for CfgBlockData
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
Auto Trait Implementations§
impl Freeze for CfgBlockData
impl RefUnwindSafe for CfgBlockData
impl Send for CfgBlockData
impl Sync for CfgBlockData
impl Unpin for CfgBlockData
impl UnsafeUnpin for CfgBlockData
impl UnwindSafe for CfgBlockData
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more