pub struct CellData {
pub id: usize,
pub name: String,
pub display_name: String,
pub param_names: Vec<String>,
pub param_types: Vec<String>,
pub param_is_ref: Vec<bool>,
pub param_is_mut: Vec<bool>,
pub return_type: String,
pub doc_comment: Option<String>,
pub source_code: String,
pub source_file: PathBuf,
pub span: (usize, usize, usize, usize),
}Expand description
Serializable cell data for Salsa tracking.
This is a simplified version of CellInfo that implements
the traits required by Salsa (Clone, PartialEq, Eq, Hash).
Fields§
§id: usizeCell index (assigned during parsing)
name: StringFunction name
display_name: StringHuman-readable display name
param_names: Vec<String>Parameter names (dependency references)
param_types: Vec<String>Parameter types
param_is_ref: Vec<bool>Whether each parameter is a reference
param_is_mut: Vec<bool>Whether each parameter is mutable
return_type: StringReturn type
doc_comment: Option<String>Documentation
source_code: StringSource code
source_file: PathBufSource file path
span: (usize, usize, usize, usize)Source location (start_line, start_col, end_line, end_col)
Trait Implementations§
impl Eq for CellData
impl StructuralPartialEq for CellData
Auto Trait Implementations§
impl Freeze for CellData
impl RefUnwindSafe for CellData
impl Send for CellData
impl Sync for CellData
impl Unpin for CellData
impl UnwindSafe for CellData
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.