pub struct FunctionId {
pub file: PathBuf,
pub name: String,
pub line: usize,
pub module_path: String,
}Expand description
Unique identifier for a function in the codebase
Fields§
§file: PathBuf§name: String§line: usize§module_path: StringImplementations§
Source§impl FunctionId
impl FunctionId
Sourcepub fn with_module_path(
file: PathBuf,
name: String,
line: usize,
module_path: String,
) -> Self
pub fn with_module_path( file: PathBuf, name: String, line: usize, module_path: String, ) -> Self
Create a new FunctionId with module path
Sourcepub fn exact_key(&self) -> ExactFunctionKey
pub fn exact_key(&self) -> ExactFunctionKey
Get exact key (all fields) for exact matching
Sourcepub fn fuzzy_key(&self) -> FuzzyFunctionKey
pub fn fuzzy_key(&self) -> FuzzyFunctionKey
Get fuzzy key (name + file only) for fuzzy matching
Sourcepub fn simple_key(&self) -> SimpleFunctionKey
pub fn simple_key(&self) -> SimpleFunctionKey
Get simple key (name only) for name-only matching
Sourcepub fn normalize_name(name: &str) -> String
pub fn normalize_name(name: &str) -> String
Normalize function name (strip generics, whitespace)
Sourcepub fn canonicalize_path(path: &Path) -> PathBuf
pub fn canonicalize_path(path: &Path) -> PathBuf
Canonicalize file path for consistent matching
Trait Implementations§
Source§impl Clone for FunctionId
impl Clone for FunctionId
Source§fn clone(&self) -> FunctionId
fn clone(&self) -> FunctionId
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 FunctionId
impl Debug for FunctionId
Source§impl<'de> Deserialize<'de> for FunctionId
impl<'de> Deserialize<'de> for FunctionId
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
impl Eq for FunctionId
Source§impl Hash for FunctionId
impl Hash for FunctionId
Source§impl Ord for FunctionId
impl Ord for FunctionId
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for FunctionId
impl PartialEq for FunctionId
Source§fn eq(&self, other: &FunctionId) -> bool
fn eq(&self, other: &FunctionId) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for FunctionId
impl PartialOrd for FunctionId
Source§impl Serialize for FunctionId
impl Serialize for FunctionId
impl StructuralPartialEq for FunctionId
Auto Trait Implementations§
impl Freeze for FunctionId
impl RefUnwindSafe for FunctionId
impl Send for FunctionId
impl Sync for FunctionId
impl Unpin for FunctionId
impl UnsafeUnpin for FunctionId
impl UnwindSafe for FunctionId
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> EnsureExt<T> for T
impl<T> EnsureExt<T> for T
Source§fn ensure<P, E>(self, predicate: P, error: E) -> Validation<T, NonEmptyVec<E>>where
P: Predicate<T>,
fn ensure<P, E>(self, predicate: P, error: E) -> Validation<T, NonEmptyVec<E>>where
P: Predicate<T>,
Validate that this value satisfies the given predicate. Read more
Source§fn ensure_with<P, E, F>(
self,
predicate: P,
error_fn: F,
) -> Validation<T, NonEmptyVec<E>>
fn ensure_with<P, E, F>( self, predicate: P, error_fn: F, ) -> Validation<T, NonEmptyVec<E>>
Validate with an error-generating function. Read more
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<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§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