TraitSemantic

Trait TraitSemantic 

Source
pub trait TraitSemantic<'db>: Database {
Show 41 methods // Provided methods fn trait_semantic_declaration_diagnostics( &'db self, trait_id: TraitId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>> { ... } fn trait_generic_params( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db [GenericParam<'db>]> { ... } fn trait_generic_params_ids( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db [GenericParamId<'db>]> { ... } fn trait_attributes( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db [Attribute<'db>]> { ... } fn trait_resolver_data( &'db self, trait_id: TraitId<'db>, ) -> Maybe<Arc<ResolverData<'db>>> { ... } fn trait_semantic_definition_diagnostics( &'db self, trait_id: TraitId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>> { ... } fn trait_required_item_names( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashSet<SmolStrId<'db>>> { ... } fn trait_item_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitItemId<'db>>> { ... } fn trait_item_info_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitItemInfo<'db>>> { ... } fn trait_all_used_uses( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashSet<UseId<'db>>> { ... } fn trait_functions( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitFunctionId<'db>>> { ... } fn trait_function_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitFunctionId<'db>>> { ... } fn trait_types( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitTypeId<'db>>> { ... } fn trait_type_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitTypeId<'db>>> { ... } fn trait_constants( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitConstantId<'db>>> { ... } fn trait_constant_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitConstantId<'db>>> { ... } fn trait_impls( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitImplId<'db>>> { ... } fn trait_impl_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitImplId<'db>>> { ... } fn trait_type_generic_params( &'db self, trait_type_id: TraitTypeId<'db>, ) -> Maybe<&'db [GenericParam<'db>]> { ... } fn trait_type_attributes( &'db self, trait_type_id: TraitTypeId<'db>, ) -> Maybe<&'db [Attribute<'db>]> { ... } fn trait_type_resolver_data( &'db self, trait_type_id: TraitTypeId<'db>, ) -> Maybe<Arc<ResolverData<'db>>> { ... } fn trait_constant_attributes( &'db self, id: TraitConstantId<'db>, ) -> Maybe<Vec<Attribute<'db>>> { ... } fn trait_constant_type( &'db self, id: TraitConstantId<'db>, ) -> Maybe<TypeId<'db>> { ... } fn trait_constant_resolver_data( &'db self, id: TraitConstantId<'db>, ) -> Maybe<Arc<ResolverData<'db>>> { ... } fn concrete_trait_constant_type( &'db self, concrete_trait_constant_id: ConcreteTraitConstantId<'db>, ) -> Maybe<TypeId<'db>> { ... } fn trait_impl_concrete_trait( &'db self, id: TraitImplId<'db>, ) -> Maybe<ConcreteTraitId<'db>> { ... } fn trait_impl_resolver_data( &'db self, id: TraitImplId<'db>, ) -> Maybe<Arc<ResolverData<'db>>> { ... } fn concrete_trait_impl_concrete_trait( &'db self, concrete_trait_impl_id: ConcreteTraitImplId<'db>, ) -> Maybe<ConcreteTraitId<'db>> { ... } fn trait_function_declaration_diagnostics( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>> { ... } fn trait_function_signature( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db Signature<'db>> { ... } fn trait_function_generic_params( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db [GenericParam<'db>]> { ... } fn trait_function_attributes( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db [Attribute<'db>]> { ... } fn trait_function_resolver_data( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Arc<ResolverData<'db>>> { ... } fn trait_function_declaration_inline_config( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<InlineConfiguration<'db>> { ... } fn trait_function_declaration_implicit_precedence( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db ImplicitPrecedence<'db>> { ... } fn trait_function_body_diagnostics( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>> { ... } fn trait_function_body( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Option<&'db FunctionBody<'db>>> { ... } fn trait_function_body_resolver_data( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Option<Arc<ResolverData<'db>>>> { ... } fn priv_trait_function_body_data( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Option<&'db FunctionBodyData<'db>>> { ... } fn concrete_trait_function_generic_params( &'db self, concrete_trait_function_id: ConcreteTraitGenericFunctionId<'db>, ) -> Maybe<&'db [GenericParam<'db>]> { ... } fn concrete_trait_function_signature( &'db self, concrete_trait_function_id: ConcreteTraitGenericFunctionId<'db>, ) -> Maybe<&'db Signature<'db>> { ... }
}
Expand description

Trait for trait-related semantic queries.

Provided Methods§

Source

fn trait_semantic_declaration_diagnostics( &'db self, trait_id: TraitId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>>

Returns the semantic declaration diagnostics of a trait.

Source

fn trait_generic_params( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db [GenericParam<'db>]>

Returns the generic parameters of a trait.

Source

fn trait_generic_params_ids( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db [GenericParamId<'db>]>

Returns the ids of the generic parameters of a trait.

Source

fn trait_attributes( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db [Attribute<'db>]>

Returns the attributes of a trait.

Source

fn trait_resolver_data( &'db self, trait_id: TraitId<'db>, ) -> Maybe<Arc<ResolverData<'db>>>

Returns the resolution resolved_items of a trait.

Source

fn trait_semantic_definition_diagnostics( &'db self, trait_id: TraitId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>>

Returns the semantic definition diagnostics of a trait.

Source

fn trait_required_item_names( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashSet<SmolStrId<'db>>>

Returns the names of all the non default implemented items of a trait.

Source

fn trait_item_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitItemId<'db>>>

Returns the item of the trait, by the given name, if exists.

Source

fn trait_item_info_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitItemInfo<'db>>>

Returns the metadata for a trait item, by the given name, if exists.

Source

fn trait_all_used_uses( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashSet<UseId<'db>>>

Returns all the items used within the trait.

Source

fn trait_functions( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitFunctionId<'db>>>

Returns the functions of a trait.

Source

fn trait_function_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitFunctionId<'db>>>

Returns the function with the given name of the given trait, if exists.

Source

fn trait_types( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitTypeId<'db>>>

Returns the types of a trait.

Source

fn trait_type_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitTypeId<'db>>>

Returns the item type with the given name of the given trait, if exists.

Source

fn trait_constants( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitConstantId<'db>>>

Returns the constants of a trait.

Source

fn trait_constant_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitConstantId<'db>>>

Returns the item constants with the given name of the given trait, if exists.

Source

fn trait_impls( &'db self, trait_id: TraitId<'db>, ) -> Maybe<&'db OrderedHashMap<SmolStrId<'db>, TraitImplId<'db>>>

Returns the constants of a trait.

Source

fn trait_impl_by_name( &'db self, trait_id: TraitId<'db>, name: SmolStrId<'db>, ) -> Maybe<Option<TraitImplId<'db>>>

Returns the item impls with the given name of the given trait, if exists.

Source

fn trait_type_generic_params( &'db self, trait_type_id: TraitTypeId<'db>, ) -> Maybe<&'db [GenericParam<'db>]>

Returns the generic params of a trait type.

Source

fn trait_type_attributes( &'db self, trait_type_id: TraitTypeId<'db>, ) -> Maybe<&'db [Attribute<'db>]>

Returns the attributes of a trait type.

Source

fn trait_type_resolver_data( &'db self, trait_type_id: TraitTypeId<'db>, ) -> Maybe<Arc<ResolverData<'db>>>

Returns the resolution resolved_items of a trait type.

Source

fn trait_constant_attributes( &'db self, id: TraitConstantId<'db>, ) -> Maybe<Vec<Attribute<'db>>>

Returns the attributes of a trait constants.

Source

fn trait_constant_type( &'db self, id: TraitConstantId<'db>, ) -> Maybe<TypeId<'db>>

Returns the type of a trait constant.

Source

fn trait_constant_resolver_data( &'db self, id: TraitConstantId<'db>, ) -> Maybe<Arc<ResolverData<'db>>>

Returns the resolution resolved_items of a trait constants.

Source

fn concrete_trait_constant_type( &'db self, concrete_trait_constant_id: ConcreteTraitConstantId<'db>, ) -> Maybe<TypeId<'db>>

Returns the type of a trait constant.

Source

fn trait_impl_concrete_trait( &'db self, id: TraitImplId<'db>, ) -> Maybe<ConcreteTraitId<'db>>

Returns the concrete trait of a trait impl.

Source

fn trait_impl_resolver_data( &'db self, id: TraitImplId<'db>, ) -> Maybe<Arc<ResolverData<'db>>>

Returns the resolution resolved_items of a trait impls.

Source

fn concrete_trait_impl_concrete_trait( &'db self, concrete_trait_impl_id: ConcreteTraitImplId<'db>, ) -> Maybe<ConcreteTraitId<'db>>

Returns the concrete trait of a concrete trait impl.

Source

fn trait_function_declaration_diagnostics( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>>

Returns the semantic diagnostics of a trait function.

Source

fn trait_function_signature( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db Signature<'db>>

Returns the signature of a trait function.

Source

fn trait_function_generic_params( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db [GenericParam<'db>]>

Returns the generic params of a trait function.

Source

fn trait_function_attributes( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db [Attribute<'db>]>

Returns the attributes of a trait function.

Source

fn trait_function_resolver_data( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Arc<ResolverData<'db>>>

Returns the resolver data of a trait function.

Source

fn trait_function_declaration_inline_config( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<InlineConfiguration<'db>>

Returns the inline configuration of a trait function’s declaration.

Source

fn trait_function_declaration_implicit_precedence( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<&'db ImplicitPrecedence<'db>>

Returns the implicits precedence of a trait function.

Source

fn trait_function_body_diagnostics( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Diagnostics<'db, SemanticDiagnostic<'db>>

Returns the semantic diagnostics of a trait function definition (declaration + body).

Source

fn trait_function_body( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Option<&'db FunctionBody<'db>>>

Returns the body of a trait function, if any.

Source

fn trait_function_body_resolver_data( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Option<Arc<ResolverData<'db>>>>

Returns the resolution resolved_items of a trait function.

Source

fn priv_trait_function_body_data( &'db self, trait_function_id: TraitFunctionId<'db>, ) -> Maybe<Option<&'db FunctionBodyData<'db>>>

Private query to compute data about a trait function definition (declaration + body)

Source

fn concrete_trait_function_generic_params( &'db self, concrete_trait_function_id: ConcreteTraitGenericFunctionId<'db>, ) -> Maybe<&'db [GenericParam<'db>]>

Returns the generic params of a concrete trait function.

Source

fn concrete_trait_function_signature( &'db self, concrete_trait_function_id: ConcreteTraitGenericFunctionId<'db>, ) -> Maybe<&'db Signature<'db>>

Returns the signature of a concrete trait function.

Implementors§

Source§

impl<'db, T: Database + ?Sized> TraitSemantic<'db> for T