Struct ide::RootDatabase[][src]

pub struct RootDatabase { /* fields omitted */ }

Implementations

Trait Implementations

This function is invoked at key points in the salsa runtime. It permits the database to be customized and to inject logging or other custom behavior. Read more

Starts unwinding the stack if the current revision is cancelled. Read more

Gives access to the underlying salsa runtime. Read more

Gives access to the underlying salsa runtime. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Executes the destructor for this type. Read more

Text of the file.

Creates a second handle to the database that holds the database fixed at a particular revision. So long as this “frozen” handle exists, any attempt to set an input will block. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Main public API – parses a hir file, not caring whether it’s a real file or a macro expansion. Read more

Implementation for the macro case.

Macro ids. That’s probably the tricksiest bit in rust-analyzer, and the reason why we use salsa at all. Read more

Lowers syntactic macro call to a token tree representation.

Extracts syntax node, corresponding to a macro call. That’s a firewall query, only typing in the macro call itself changes the returned subtree. Read more

Gets the expander for this macro. This compiles declarative macros, and just fetches procedural ones. Read more

Expand macro call to a token tree. This query is LRUed (we keep 128 or so results in memory)

Special case of the previous query for procedural macros. We can’t LRU proc macros, since they are not deterministic in general, and non-determinism breaks salsa in a very, very, very bad way. @edwin0cheng heroically debugged this once! Read more

Firewall query that returns the error from the macro_expand query.

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Cast a value to type U using CastTo.

Set the value of the enable_proc_attr_macros input. Read more

Set the value of the enable_proc_attr_macros input and promise that its value will never change again. Read more

Computes the block-level DefMap, returning None when block doesn’t contain any inner items directly. Read more

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

The crate graph.

Set the value of the crate_graph input. Read more

Set the value of the crate_graph input and promise that its value will never change again. Read more

Set the value of the file_text input. Read more

Set the value of the file_text input and promise that its value will never change again. Read more

Path to a file, relative to the root of its source root. Source root of the file. Read more

Set the value of the file_source_root input. Read more

Set the value of the file_source_root input and promise that its value will never change again. Read more

Contents of the source root.

Set the value of the source_root input. Read more

Set the value of the source_root input and promise that its value will never change again. Read more

The set of “local” (that is, from the current workspace) roots. Files in local roots are assumed to change frequently. Read more

Set the value of the local_roots input. Read more

Set the value of the local_roots input and promise that its value will never change again. Read more

The set of roots for crates.io libraries. Files in libraries are assumed to never change. Read more

Set the value of the library_roots input. Read more

Set the value of the library_roots input and promise that its value will never change again. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more