pub struct Crate { /* private fields */ }
Expand description
hir::Crate describes a single crate. It’s the main interface with which a crate’s dependencies interact. Mostly, it should be just a proxy for the root module.
Implementations§
source§impl Crate
impl Crate
pub fn origin(self, db: &dyn HirDatabase) -> CrateOrigin
pub fn is_builtin(self, db: &dyn HirDatabase) -> bool
pub fn dependencies(self, db: &dyn HirDatabase) -> Vec<CrateDependency>
pub fn reverse_dependencies(self, db: &dyn HirDatabase) -> Vec<Crate>
pub fn transitive_reverse_dependencies( self, db: &dyn HirDatabase ) -> impl Iterator<Item = Crate>
pub fn root_module(self) -> Module
pub fn modules(self, db: &dyn HirDatabase) -> Vec<Module>
pub fn root_file(self, db: &dyn HirDatabase) -> FileId
pub fn edition(self, db: &dyn HirDatabase) -> Edition
pub fn version(self, db: &dyn HirDatabase) -> Option<String>
pub fn display_name(self, db: &dyn HirDatabase) -> Option<CrateDisplayName>
pub fn query_external_importables( self, db: &dyn DefDatabase, query: Query ) -> impl Iterator<Item = Either<ModuleDef, Macro>>
pub fn all(db: &dyn HirDatabase) -> Vec<Crate>
sourcepub fn get_html_root_url(self: &Crate, db: &dyn HirDatabase) -> Option<String>
pub fn get_html_root_url(self: &Crate, db: &dyn HirDatabase) -> Option<String>
Try to get the root URL of the documentation of a crate.
pub fn cfg(&self, db: &dyn HirDatabase) -> CfgOptions
pub fn potential_cfg(&self, db: &dyn HirDatabase) -> CfgOptions
Trait Implementations§
source§impl PartialEq for Crate
impl PartialEq for Crate
impl Copy for Crate
impl Eq for Crate
impl StructuralPartialEq for Crate
Auto Trait Implementations§
impl Freeze for Crate
impl RefUnwindSafe for Crate
impl Send for Crate
impl Sync for Crate
impl Unpin for Crate
impl UnwindSafe for Crate
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> Cast for T
impl<T> Cast for T
source§fn cast<U>(self, interner: <U as HasInterner>::Interner) -> Uwhere
Self: CastTo<U>,
U: HasInterner,
fn cast<U>(self, interner: <U as HasInterner>::Interner) -> Uwhere
Self: CastTo<U>,
U: HasInterner,
Cast a value to type
U
using CastTo
.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
Compare self to
key
and return true
if they are equal.