SemanticObject

Trait SemanticObject 

Source
pub trait SemanticObject<TRewriter, Error>: Sized {
    // Required method
    fn default_rewrite(
        &mut self,
        rewriter: &mut TRewriter,
    ) -> Result<RewriteResult, Error>;
}

Required Methods§

Source

fn default_rewrite( &mut self, rewriter: &mut TRewriter, ) -> Result<RewriteResult, Error>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConstValue<'a>, Error>> SemanticObject<TRewriter, Error> for ConstValueId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ImplLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ImplId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<NegativeImplLongId<'a>, Error>> SemanticObject<TRewriter, Error> for NegativeImplId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<TypeLongId<'a>, Error>> SemanticObject<TRewriter, Error> for TypeId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ImplVar<'a>, Error>> SemanticObject<TRewriter, Error> for ImplVarId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<NegativeImplVar<'a>, Error>> SemanticObject<TRewriter, Error> for NegativeImplVarId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteFunctionWithBody<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteFunctionWithBodyId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<FunctionLongId<'a>, Error>> SemanticObject<TRewriter, Error> for FunctionId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteImplLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteImplId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<GeneratedImplLongId<'a>, Error>> SemanticObject<TRewriter, Error> for GeneratedImplId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<UninferredGeneratedImplLongId<'a>, Error>> SemanticObject<TRewriter, Error> for UninferredGeneratedImplId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteTraitConstantLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteTraitConstantId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteTraitGenericFunctionLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteTraitGenericFunctionId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteTraitImplLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteTraitImplId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteTraitLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteTraitId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteTraitTypeLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteTraitTypeId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteEnumLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteEnumId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteExternTypeLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteExternTypeId<'a>

Source§

impl<'a, Error, TRewriter: HasDb<&'a dyn Database> + SemanticRewriter<ConcreteStructLongId<'a>, Error>> SemanticObject<TRewriter, Error> for ConcreteStructId<'a>

Source§

impl<'db, T, Error> SemanticObject<T, Error> for StatementContinue<'db>

Source§

impl<'db, T, Error> SemanticObject<T, Error> for StatementItem<'db>

Source§

impl<'db, T: SemanticRewriter<VarId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprVar<'db>

Source§

impl<'db, T: SemanticRewriter<InferenceId<'db>, Error> + SemanticRewriter<ConcreteTraitId<'db>, Error>, Error> SemanticObject<T, Error> for ImplVar<'db>

Source§

impl<'db, T: SemanticRewriter<InferenceId<'db>, Error> + SemanticRewriter<ConcreteTraitId<'db>, Error>, Error> SemanticObject<T, Error> for NegativeImplVar<'db>

Source§

impl<'db, T: SemanticRewriter<Condition, Error> + SemanticRewriter<ExprId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprWhile<'db>

Source§

impl<'db, T: SemanticRewriter<ExprVarMemberPath<'db>, Error> + SemanticRewriter<ExprId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprAssignment<'db>

Source§

impl<'db, T: SemanticRewriter<ExprVarMemberPath<'db>, Error> + SemanticRewriter<ExprId, Error>, Error> SemanticObject<T, Error> for ExprFunctionCallArg<'db>

Source§

impl<'db, T: SemanticRewriter<FixedSizeArrayItems<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprFixedSizeArray<'db>

Source§

impl<'db, T: SemanticRewriter<GenericFunctionId<'db>, Error> + SemanticRewriter<Vec<GenericArgumentId<'db>>, Error>, Error> SemanticObject<T, Error> for ConcreteFunction<'db>

Source§

impl<'db, T: SemanticRewriter<GenericFunctionWithBodyId<'db>, Error> + SemanticRewriter<Vec<GenericArgumentId<'db>>, Error>, Error> SemanticObject<T, Error> for ConcreteFunctionWithBody<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTypeId<'db>, Error> + SemanticRewriter<Vec<TypeId<'db>>, Error> + SemanticRewriter<TypeId<'db>, Error> + SemanticRewriter<GenericParamId<'db>, Error> + SemanticRewriter<TypeVar<'db>, Error> + SemanticRewriter<FunctionId<'db>, Error> + SemanticRewriter<ConstValueId<'db>, Error> + SemanticRewriter<ImplTypeId<'db>, Error> + SemanticRewriter<ClosureTypeLongId<'db>, Error>, Error> SemanticObject<T, Error> for TypeLongId<'db>

Source§

impl<'db, T: SemanticRewriter<Option<ExprId>, Error>, Error> SemanticObject<T, Error> for StatementBreak<'db>

Source§

impl<'db, T: SemanticRewriter<Option<ExprId>, Error>, Error> SemanticObject<T, Error> for StatementReturn<'db>

Source§

impl<'db, T: SemanticRewriter<LookupItemId<'db>, Error> + SemanticRewriter<ImplDefId<'db>, Error> + SemanticRewriter<ImplAliasId<'db>, Error> + SemanticRewriter<GenericParamId<'db>, Error> + SemanticRewriter<GlobalUseId<'db>, Error> + SemanticRewriter<MacroCallId<'db>, Error>, Error> SemanticObject<T, Error> for InferenceId<'db>

Source§

impl<'db, T: SemanticRewriter<StatementItemId<'db>, Error> + SemanticRewriter<StatementItemKind<'db>, Error>, Error> SemanticObject<T, Error> for LocalItem<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<ConcreteVariant<'db>, Error>, Error> SemanticObject<T, Error> for ExprPropagateError<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<ConcreteStructId<'db>, Error> + SemanticRewriter<MemberId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error> + SemanticRewriter<Option<ExprVarMemberPath<'db>>, Error>, Error> SemanticObject<T, Error> for ExprMemberAccess<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprDesnap<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprLogicalOperator<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprLoop<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprSnapshot<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<Vec<MatchArm>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprMatch<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error> + SemanticRewriter<Vec<Parameter<'db>>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprClosure<'db>

Source§

impl<'db, T: SemanticRewriter<ExprId, Error>, Error> SemanticObject<T, Error> for StatementExpr<'db>

Source§

impl<'db, T: SemanticRewriter<ExprLiteral<'db>, Error>, Error> SemanticObject<T, Error> for PatternLiteral<'db>

Source§

impl<'db, T: SemanticRewriter<ExprStringLiteral<'db>, Error>, Error> SemanticObject<T, Error> for PatternStringLiteral<'db>

Source§

impl<'db, T: SemanticRewriter<ExprTuple<'db>, Error> + SemanticRewriter<ExprSnapshot<'db>, Error> + SemanticRewriter<ExprDesnap<'db>, Error> + SemanticRewriter<ExprAssignment<'db>, Error> + SemanticRewriter<ExprLogicalOperator<'db>, Error> + SemanticRewriter<ExprBlock<'db>, Error> + SemanticRewriter<ExprLoop<'db>, Error> + SemanticRewriter<ExprWhile<'db>, Error> + SemanticRewriter<ExprFor<'db>, Error> + SemanticRewriter<ExprFunctionCall<'db>, Error> + SemanticRewriter<ExprMatch<'db>, Error> + SemanticRewriter<ExprIf<'db>, Error> + SemanticRewriter<ExprVar<'db>, Error> + SemanticRewriter<ExprLiteral<'db>, Error> + SemanticRewriter<ExprStringLiteral<'db>, Error> + SemanticRewriter<ExprMemberAccess<'db>, Error> + SemanticRewriter<ExprStructCtor<'db>, Error> + SemanticRewriter<ExprEnumVariantCtor<'db>, Error> + SemanticRewriter<ExprPropagateError<'db>, Error> + SemanticRewriter<ExprConstant<'db>, Error> + SemanticRewriter<ExprFixedSizeArray<'db>, Error> + SemanticRewriter<ExprClosure<'db>, Error> + SemanticRewriter<ExprMissing<'db>, Error>, Error> SemanticObject<T, Error> for Expr<'db>

Source§

impl<'db, T: SemanticRewriter<ExprVar<'db>, Error> + SemanticRewriter<Box<ExprVarMemberPath<'db>>, Error> + SemanticRewriter<MemberId<'db>, Error> + SemanticRewriter<ConcreteStructId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprVarMemberPath<'db>

Source§

impl<'db, T: SemanticRewriter<PatternId, Error> + SemanticRewriter<ExprId, Error> + SemanticRewriter<Option<ExprId>, Error>, Error> SemanticObject<T, Error> for StatementLet<'db>

Source§

impl<'db, T: SemanticRewriter<StatementExpr<'db>, Error> + SemanticRewriter<StatementLet<'db>, Error> + SemanticRewriter<StatementContinue<'db>, Error> + SemanticRewriter<StatementReturn<'db>, Error> + SemanticRewriter<StatementBreak<'db>, Error> + SemanticRewriter<StatementItem<'db>, Error>, Error> SemanticObject<T, Error> for Statement<'db>

Source§

impl<'db, T: SemanticRewriter<PatternLiteral<'db>, Error> + SemanticRewriter<PatternStringLiteral<'db>, Error> + SemanticRewriter<PatternVariable<'db>, Error> + SemanticRewriter<PatternStruct<'db>, Error> + SemanticRewriter<PatternTuple<'db>, Error> + SemanticRewriter<PatternFixedSizeArray<'db>, Error> + SemanticRewriter<PatternEnumVariant<'db>, Error> + SemanticRewriter<PatternOtherwise<'db>, Error> + SemanticRewriter<PatternMissing<'db>, Error>, Error> SemanticObject<T, Error> for Pattern<'db>

Source§

impl<'db, T: SemanticRewriter<ConstValueId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for StatementItemKind<'db>

Source§

impl<'db, T: SemanticRewriter<ConstValueId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprConstant<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteVariant<'db>, Error> + SemanticRewriter<Option<PatternId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for PatternEnumVariant<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteVariant<'db>, Error> + SemanticRewriter<ExprId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprEnumVariantCtor<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteVariant<'db>, Error> + SemanticRewriter<ValueSelectorArm, Error>, Error> SemanticObject<T, Error> for MatchArmSelector<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteFunction<'db>, Error>, Error> SemanticObject<T, Error> for FunctionLongId<'db>

Source§

impl<'db, T: SemanticRewriter<FunctionId<'db>, Error> + SemanticRewriter<ExprVarMemberPath<'db>, Error> + SemanticRewriter<ExprId, Error> + SemanticRewriter<PatternId, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprFor<'db>

Source§

impl<'db, T: SemanticRewriter<FunctionId<'db>, Error> + SemanticRewriter<Vec<ExprFunctionCallArg<'db>>, Error> + SemanticRewriter<Option<ExprId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprFunctionCall<'db>

Source§

impl<'db, T: SemanticRewriter<GenericParamType<'db>, Error> + SemanticRewriter<GenericParamConst<'db>, Error> + SemanticRewriter<GenericParamImpl<'db>, Error>, Error> SemanticObject<T, Error> for GenericParam<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteImplId<'db>, Error> + SemanticRewriter<ImplFunctionBodyId<'db>, Error>, Error> SemanticObject<T, Error> for ImplGenericFunctionWithBodyId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteImplId<'db>, Error> + SemanticRewriter<GenericParamId<'db>, Error> + SemanticRewriter<ImplVarId<'db>, Error> + SemanticRewriter<ImplImplId<'db>, Error> + SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<GeneratedImplId<'db>, Error>, Error> SemanticObject<T, Error> for ImplLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ImplId<'db>, Error> + SemanticRewriter<TraitConstantId<'db>, Error>, Error> SemanticObject<T, Error> for ImplConstantId<'db>

Source§

impl<'db, T: SemanticRewriter<ImplId<'db>, Error> + SemanticRewriter<TraitFunctionId<'db>, Error>, Error> SemanticObject<T, Error> for ImplGenericFunctionId<'db>

Source§

impl<'db, T: SemanticRewriter<ImplId<'db>, Error> + SemanticRewriter<TraitImplId<'db>, Error>, Error> SemanticObject<T, Error> for ImplImplId<'db>

Source§

impl<'db, T: SemanticRewriter<ImplId<'db>, Error> + SemanticRewriter<TraitTypeId<'db>, Error>, Error> SemanticObject<T, Error> for ImplTypeId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<ImplVarTraitItemMappings<'db>, Error>, Error> SemanticObject<T, Error> for CanonicalTrait<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<Vec<GenericParam<'db>>, Error> + SemanticRewriter<GeneratedImplItems<'db>, Error>, Error> SemanticObject<T, Error> for GeneratedImplLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<Vec<GenericParam<'db>>, Error> + SemanticRewriter<GeneratedImplItems<'db>, Error>, Error> SemanticObject<T, Error> for UninferredGeneratedImplLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<Vec<ImplId<'db>>, Error> + SemanticRewriter<ImplId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for Ambiguity<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<GenericParamId<'db>, Error> + SemanticRewriter<NegativeImplVarId<'db>, Error>, Error> SemanticObject<T, Error> for NegativeImplLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<TraitConstantId<'db>, Error>, Error> SemanticObject<T, Error> for ConcreteTraitConstantLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<TraitFunctionId<'db>, Error>, Error> SemanticObject<T, Error> for ConcreteTraitGenericFunctionLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<TraitImplId<'db>, Error>, Error> SemanticObject<T, Error> for ConcreteTraitImplLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteTraitId<'db>, Error> + SemanticRewriter<TraitTypeId<'db>, Error>, Error> SemanticObject<T, Error> for ConcreteTraitTypeLongId<'db>

Source§

impl<'db, T: SemanticRewriter<LocalVariable<'db>, Error>, Error> SemanticObject<T, Error> for PatternVariable<'db>

Source§

impl<'db, T: SemanticRewriter<ParamId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for Parameter<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteEnumId<'db>, Error> + SemanticRewriter<VariantId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ConcreteVariant<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteStructId<'db>, Error> + SemanticRewriter<ConcreteEnumId<'db>, Error> + SemanticRewriter<ConcreteExternTypeId<'db>, Error>, Error> SemanticObject<T, Error> for ConcreteTypeId<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteStructId<'db>, Error> + SemanticRewriter<Vec<(ExprId, MemberId<'db>)>, Error> + SemanticRewriter<Option<ExprId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprStructCtor<'db>

Source§

impl<'db, T: SemanticRewriter<ConcreteStructId<'db>, Error> + SemanticRewriter<Vec<(PatternId, Member<'db>)>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for PatternStruct<'db>

Source§

impl<'db, T: SemanticRewriter<TypeId<'db>, Error> + SemanticRewriter<ConstValueId<'db>, Error> + SemanticRewriter<ImplId<'db>, Error> + SemanticRewriter<NegativeImplId<'db>, Error>, Error> SemanticObject<T, Error> for GenericArgumentId<'db>

Source§

impl<'db, T: SemanticRewriter<TypeId<'db>, Error> + SemanticRewriter<Vec<ConstValueId<'db>>, Error> + SemanticRewriter<ConcreteVariant<'db>, Error> + SemanticRewriter<ConstValueId<'db>, Error> + SemanticRewriter<ImplConstantId<'db>, Error> + SemanticRewriter<ConstVar<'db>, Error>, Error> SemanticObject<T, Error> for ConstValue<'db>

Source§

impl<'db, T: SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprLiteral<'db>

Source§

impl<'db, T: SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprMissing<'db>

Source§

impl<'db, T: SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprStringLiteral<'db>

Source§

impl<'db, T: SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for PatternMissing<'db>

Source§

impl<'db, T: SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for PatternOtherwise<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<Condition>, Error> + SemanticRewriter<ExprId, Error> + SemanticRewriter<Option<ExprId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprIf<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<ExprId>, Error> + SemanticRewriter<ExprId, Error> + SemanticRewriter<ConstValueId<'db>, Error>, Error> SemanticObject<T, Error> for FixedSizeArrayItems<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<ExprId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprTuple<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<PatternId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for PatternFixedSizeArray<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<PatternId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for PatternTuple<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<StatementId>, Error> + SemanticRewriter<Option<ExprId>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprBlock<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<Parameter<'db>>, Error> + SemanticRewriter<TypeId<'db>, Error> + SemanticRewriter<Vec<TypeId<'db>>, Error>, Error> SemanticObject<T, Error> for Signature<'db>

Source§

impl<'db, T: SemanticRewriter<Vec<TypeId<'db>>, Error> + SemanticRewriter<TypeId<'db>, Error> + SemanticRewriter<Maybe<FunctionId<'db>>, Error>, Error> SemanticObject<T, Error> for ClosureTypeLongId<'db>

Source§

impl<'db, T: SemanticRewriter<EnumId<'db>, Error> + SemanticRewriter<Vec<GenericArgumentId<'db>>, Error>, Error> SemanticObject<T, Error> for ConcreteEnumLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ExternTypeId<'db>, Error> + SemanticRewriter<Vec<GenericArgumentId<'db>>, Error>, Error> SemanticObject<T, Error> for ConcreteExternTypeLongId<'db>

Source§

impl<'db, T: SemanticRewriter<FreeFunctionId<'db>, Error> + SemanticRewriter<ImplGenericFunctionWithBodyId<'db>, Error> + SemanticRewriter<ConcreteTraitGenericFunctionId<'db>, Error>, Error> SemanticObject<T, Error> for GenericFunctionWithBodyId<'db>

Source§

impl<'db, T: SemanticRewriter<FreeFunctionId<'db>, Error> + SemanticRewriter<ExternFunctionId<'db>, Error> + SemanticRewriter<ImplGenericFunctionId<'db>, Error>, Error> SemanticObject<T, Error> for GenericFunctionId<'db>

Source§

impl<'db, T: SemanticRewriter<GenericParamId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for GenericParamConst<'db>

Source§

impl<'db, T: SemanticRewriter<GenericParamId<'db>, Error> + SemanticRewriter<Maybe<ConcreteTraitId<'db>>, Error> + SemanticRewriter<OrderedHashMap<TraitTypeId<'db>, TypeId<'db>>, Error>, Error> SemanticObject<T, Error> for GenericParamImpl<'db>

Source§

impl<'db, T: SemanticRewriter<GenericParamId<'db>, Error>, Error> SemanticObject<T, Error> for GenericParamType<'db>

Source§

impl<'db, T: SemanticRewriter<ImplDefId<'db>, Error> + SemanticRewriter<Vec<GenericArgumentId<'db>>, Error>, Error> SemanticObject<T, Error> for ConcreteImplLongId<'db>

Source§

impl<'db, T: SemanticRewriter<ImplDefId<'db>, Error> + SemanticRewriter<ImplAliasId<'db>, Error> + SemanticRewriter<GenericParamId<'db>, Error> + SemanticRewriter<ImplImplId<'db>, Error> + SemanticRewriter<UninferredGeneratedImplId<'db>, Error>, Error> SemanticObject<T, Error> for UninferredImpl<'db>

Source§

impl<'db, T: SemanticRewriter<ImplFunctionId<'db>, Error> + SemanticRewriter<TraitFunctionId<'db>, Error>, Error> SemanticObject<T, Error> for ImplFunctionBodyId<'db>

Source§

impl<'db, T: SemanticRewriter<LocalVarId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for LocalVariable<'db>

Source§

impl<'db, T: SemanticRewriter<MemberId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for Member<'db>

Source§

impl<'db, T: SemanticRewriter<StatementUseId<'db>, Error> + SemanticRewriter<TypeId<'db>, Error>, Error> SemanticObject<T, Error> for ExprUse<'db>

Source§

impl<'db, T: SemanticRewriter<StructId<'db>, Error> + SemanticRewriter<Vec<GenericArgumentId<'db>>, Error>, Error> SemanticObject<T, Error> for ConcreteStructLongId<'db>

Source§

impl<'db, T: SemanticRewriter<TraitId<'db>, Error> + SemanticRewriter<Vec<GenericArgumentId<'db>>, Error>, Error> SemanticObject<T, Error> for ConcreteTraitLongId<'db>

Source§

impl<'db, T: SemanticRewriter<OrderedHashMap<TraitTypeId<'db>, TypeId<'db>>, Error> + SemanticRewriter<OrderedHashMap<TraitConstantId<'db>, ConstValueId<'db>>, Error> + SemanticRewriter<OrderedHashMap<TraitImplId<'db>, ImplId<'db>>, Error>, Error> SemanticObject<T, Error> for ImplVarTraitItemMappings<'db>

Source§

impl<'db, T: SemanticRewriter<OrderedHashMap<TraitTypeId<'db>, TypeId<'db>>, Error>, Error> SemanticObject<T, Error> for GeneratedImplItems<'db>

Source§

impl<T, Error> SemanticObject<T, Error> for ValueSelectorArm

Source§

impl<T: SemanticRewriter<usize, Error>, Error> SemanticObject<T, Error> for LocalConstVarId

Source§

impl<T: SemanticRewriter<usize, Error>, Error> SemanticObject<T, Error> for LocalImplVarId

Source§

impl<T: SemanticRewriter<usize, Error>, Error> SemanticObject<T, Error> for LocalNegativeImplVarId

Source§

impl<T: SemanticRewriter<usize, Error>, Error> SemanticObject<T, Error> for LocalTypeVarId

Source§

impl<T: SemanticRewriter<LocalTypeVarId, Error> + SemanticRewriter<LocalConstVarId, Error> + SemanticRewriter<LocalImplVarId, Error> + SemanticRewriter<LocalNegativeImplVarId, Error>, Error> SemanticObject<T, Error> for InferenceVar

Source§

impl<T: SemanticRewriter<ExprId, Error> + SemanticRewriter<Vec<PatternId>, Error>, Error> SemanticObject<T, Error> for Condition

Source§

impl<T: SemanticRewriter<Vec<PatternId>, Error> + SemanticRewriter<ExprId, Error>, Error> SemanticObject<T, Error> for MatchArm