pub struct Provenance {
pub rule_id: Option<String>,
pub source_file: Option<String>,
pub span: Option<SourceSpan>,
pub attributes: Vec<(String, String)>,
}Expand description
Provenance information tracking the origin of an IR node
Fields§
§rule_id: Option<String>Source rule ID or identifier
source_file: Option<String>Source file information
span: Option<SourceSpan>Source span
attributes: Vec<(String, String)>Additional metadata as key-value pairs
Implementations§
Source§impl Provenance
impl Provenance
pub fn new() -> Self
pub fn with_rule_id(self, rule_id: impl Into<String>) -> Self
pub fn with_source_file(self, source_file: impl Into<String>) -> Self
pub fn with_span(self, span: SourceSpan) -> Self
pub fn with_attribute( self, key: impl Into<String>, value: impl Into<String>, ) -> Self
pub fn get_attribute(&self, key: &str) -> Option<&str>
Trait Implementations§
Source§impl Clone for Provenance
impl Clone for Provenance
Source§fn clone(&self) -> Provenance
fn clone(&self) -> Provenance
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 Provenance
impl Debug for Provenance
Source§impl Default for Provenance
impl Default for Provenance
Source§impl<'de> Deserialize<'de> for Provenance
impl<'de> Deserialize<'de> for Provenance
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 PartialEq for Provenance
impl PartialEq for Provenance
Source§impl Serialize for Provenance
impl Serialize for Provenance
impl Eq for Provenance
impl StructuralPartialEq for Provenance
Auto Trait Implementations§
impl Freeze for Provenance
impl RefUnwindSafe for Provenance
impl Send for Provenance
impl Sync for Provenance
impl Unpin for Provenance
impl UnwindSafe for Provenance
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