pub enum GodotDef {
Global {
decl_file: FileId,
name: SmolStr,
},
Member {
owner_file: FileId,
name: SmolStr,
},
Local {
body_file: FileId,
body_range: TextRange,
decl_name_range: TextRange,
},
Autoload {
name: SmolStr,
target_file: Option<FileId>,
},
Engine {
name: SmolStr,
},
}Expand description
The canonical identity of a findable / renameable symbol. Equality is on identity, not the
name string (rust-analyzer’s Definition).
Variants§
Global
A class_name global. Identity = the one file that declares it.
Member
A script member (func / var / const / signal / enum / inner class). Identity = the script file that declares it (for an inherited member, the base file where it is found) + name.
Local
A local binding (var / param / for-var). Identity = the owning function body + the
binding’s declaration-site name range. Two is in different functions, or a local
shadowing a member, are distinct by construction.
Fields
Autoload
An autoload singleton (the *-flagged [autoload] name; project-unique).
Fields
Engine
An engine / builtin symbol (Node, Vector2, a builtin func, …) — resolved, but not
ours to rename, and find-references over it is out of scope. Distinguishes “resolved, it’s
engine” from “unresolved” (the latter is None).
Implementations§
Trait Implementations§
impl Eq for GodotDef
impl StructuralPartialEq for GodotDef
Auto Trait Implementations§
impl Freeze for GodotDef
impl RefUnwindSafe for GodotDef
impl Send for GodotDef
impl Sync for GodotDef
impl Unpin for GodotDef
impl UnsafeUnpin for GodotDef
impl UnwindSafe for GodotDef
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
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<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> 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>
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
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.