Trait cairo_lang_filesystem::db::FilesGroup
source · pub trait FilesGroup: Database + HasQueryGroup<FilesDatabase> {
Show 15 methods
fn intern_crate(&self, key0: CrateLongId) -> CrateId;
fn lookup_intern_crate(&self, key0: CrateId) -> CrateLongId;
fn intern_file(&self, key0: FileLongId) -> FileId;
fn lookup_intern_file(&self, key0: FileId) -> FileLongId;
fn crate_roots(&self) -> Arc<HashMap<CrateId, Directory>>;
fn set_crate_roots(&mut self, value__: Arc<HashMap<CrateId, Directory>>);
fn set_crate_roots_with_durability(
&mut self,
value__: Arc<HashMap<CrateId, Directory>>,
durability__: Durability
);
fn file_overrides(&self) -> Arc<HashMap<FileId, Arc<String>>>;
fn set_file_overrides(&mut self, value__: Arc<HashMap<FileId, Arc<String>>>);
fn set_file_overrides_with_durability(
&mut self,
value__: Arc<HashMap<FileId, Arc<String>>>,
durability__: Durability
);
fn crates(&self) -> Vec<CrateId> ⓘ;
fn crate_root_dir(&self, key0: CrateId) -> Option<Directory>;
fn priv_raw_file_content(&self, key0: FileId) -> Option<Arc<String>>;
fn file_content(&self, key0: FileId) -> Option<Arc<String>>;
fn file_summary(&self, key0: FileId) -> Option<Arc<FileSummary>>;
}
Required Methods§
fn intern_crate(&self, key0: CrateLongId) -> CrateId
fn lookup_intern_crate(&self, key0: CrateId) -> CrateLongId
fn intern_file(&self, key0: FileLongId) -> FileId
fn lookup_intern_file(&self, key0: FileId) -> FileLongId
sourcefn crate_roots(&self) -> Arc<HashMap<CrateId, Directory>>
fn crate_roots(&self) -> Arc<HashMap<CrateId, Directory>>
Main input of the project. Lists all the crates.
sourcefn set_crate_roots(&mut self, value__: Arc<HashMap<CrateId, Directory>>)
fn set_crate_roots(&mut self, value__: Arc<HashMap<CrateId, Directory>>)
Set the value of the crate_roots
input.
See crate_roots
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.
sourcefn set_crate_roots_with_durability(
&mut self,
value__: Arc<HashMap<CrateId, Directory>>,
durability__: Durability
)
fn set_crate_roots_with_durability(
&mut self,
value__: Arc<HashMap<CrateId, Directory>>,
durability__: Durability
)
Set the value of the crate_roots
input and promise
that its value will never change again.
See crate_roots
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.
sourcefn file_overrides(&self) -> Arc<HashMap<FileId, Arc<String>>>
fn file_overrides(&self) -> Arc<HashMap<FileId, Arc<String>>>
Overrides for file content. Mostly used by language server and tests. TODO(spapini): Currently, when this input changes, all the file_content() queries will be invalidated. Change this mechanism to hold file_overrides on the db struct outside salsa mechanism, and invalidate manually.
sourcefn set_file_overrides(&mut self, value__: Arc<HashMap<FileId, Arc<String>>>)
fn set_file_overrides(&mut self, value__: Arc<HashMap<FileId, Arc<String>>>)
Set the value of the file_overrides
input.
See file_overrides
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.
sourcefn set_file_overrides_with_durability(
&mut self,
value__: Arc<HashMap<FileId, Arc<String>>>,
durability__: Durability
)
fn set_file_overrides_with_durability(
&mut self,
value__: Arc<HashMap<FileId, Arc<String>>>,
durability__: Durability
)
Set the value of the file_overrides
input and promise
that its value will never change again.
See file_overrides
for details.
Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.
sourcefn crate_root_dir(&self, key0: CrateId) -> Option<Directory>
fn crate_root_dir(&self, key0: CrateId) -> Option<Directory>
Root directory of the crate.
sourcefn priv_raw_file_content(&self, key0: FileId) -> Option<Arc<String>>
fn priv_raw_file_content(&self, key0: FileId) -> Option<Arc<String>>
Query for raw file contents. Private.
sourcefn file_content(&self, key0: FileId) -> Option<Arc<String>>
fn file_content(&self, key0: FileId) -> Option<Arc<String>>
Query for the file contents. This takes overrides into consideration.