pub struct SymbolNode {
pub id: SymbolId,
pub name: String,
pub kind: SymbolKind,
pub file_id: FileId,
pub visibility: Option<Visibility>,
pub source_range: SourceRange,
}Expand description
Represents an extracted symbol in the dependency graph.
Symbols are owned by exactly one FileNode (via Ownership edge) and may reference other symbols (via Reference edges).
Fields§
§id: SymbolIdStable identifier for this symbol.
name: StringSymbol name as extracted from source.
kind: SymbolKindSymbol classification (function, class, etc.).
file_id: FileIdReference to the containing file.
visibility: Option<Visibility>Visibility modifier if applicable.
source_range: SourceRangeSource location within the file.
Implementations§
Source§impl SymbolNode
impl SymbolNode
Sourcepub fn from_symbol(symbol: &Symbol, file_id: FileId) -> Self
pub fn from_symbol(symbol: &Symbol, file_id: FileId) -> Self
Creates a new SymbolNode from an extracted Symbol.
This factory method bridges the model layer to the graph layer.
Trait Implementations§
Source§impl Clone for SymbolNode
impl Clone for SymbolNode
Source§fn clone(&self) -> SymbolNode
fn clone(&self) -> SymbolNode
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 moreAuto Trait Implementations§
impl Freeze for SymbolNode
impl RefUnwindSafe for SymbolNode
impl Send for SymbolNode
impl Sync for SymbolNode
impl Unpin for SymbolNode
impl UnsafeUnpin for SymbolNode
impl UnwindSafe for SymbolNode
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