Trait ra_ap_base_db::SourceDatabase
source · pub trait SourceDatabase: Database + HasQueryGroup<SourceDatabaseStorage> + FileLoader + Debug {
// Required methods
fn parse(&self, file_id: FileId) -> Parse<SourceFile>;
fn crate_graph(&self) -> Arc<CrateGraph>;
fn set_crate_graph(&mut self, value__: Arc<CrateGraph>);
fn set_crate_graph_with_durability(
&mut self,
value__: Arc<CrateGraph>,
durability__: Durability
);
fn proc_macros(&self) -> Arc<ProcMacros>;
fn set_proc_macros(&mut self, value__: Arc<ProcMacros>);
fn set_proc_macros_with_durability(
&mut self,
value__: Arc<ProcMacros>,
durability__: Durability
);
}
Expand description
Database which stores all significant input facts: source code and project model. Everything else in rust-analyzer is derived from these queries.
Required Methods§
fn parse(&self, file_id: FileId) -> Parse<SourceFile>
sourcefn crate_graph(&self) -> Arc<CrateGraph>
fn crate_graph(&self) -> Arc<CrateGraph>
The crate graph.
sourcefn set_crate_graph(&mut self, value__: Arc<CrateGraph>)
fn set_crate_graph(&mut self, value__: Arc<CrateGraph>)
Set the value of the crate_graph
input.
See crate_graph
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.
sourcefn set_crate_graph_with_durability(
&mut self,
value__: Arc<CrateGraph>,
durability__: Durability
)
fn set_crate_graph_with_durability( &mut self, value__: Arc<CrateGraph>, durability__: Durability )
Set the value of the crate_graph
input and promise
that its value will never change again.
See crate_graph
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.
sourcefn proc_macros(&self) -> Arc<ProcMacros>
fn proc_macros(&self) -> Arc<ProcMacros>
The crate graph.
sourcefn set_proc_macros(&mut self, value__: Arc<ProcMacros>)
fn set_proc_macros(&mut self, value__: Arc<ProcMacros>)
Set the value of the proc_macros
input.
See proc_macros
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.
sourcefn set_proc_macros_with_durability(
&mut self,
value__: Arc<ProcMacros>,
durability__: Durability
)
fn set_proc_macros_with_durability( &mut self, value__: Arc<ProcMacros>, durability__: Durability )
Set the value of the proc_macros
input and promise
that its value will never change again.
See proc_macros
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.