Struct ra_ap_hir_ty::TyBuilder [−][src]
This is a builder for Ty
or anything that needs a Substitution
.
Implementations
impl<D> TyBuilder<D>
[src]
pub fn push(self, arg: impl CastTo<GenericArg>) -> Self
[src]
pub fn remaining(&self) -> usize
[src]
pub fn fill_with_bound_vars(
self,
debruijn: DebruijnIndex,
starting_from: usize
) -> Self
[src]
self,
debruijn: DebruijnIndex,
starting_from: usize
) -> Self
pub fn fill_with_unknown(self) -> Self
[src]
pub fn fill(self, filler: impl Iterator<Item = impl CastTo<GenericArg>>) -> Self
[src]
pub fn use_parent_substs(self, parent_substs: &Substitution) -> Self
[src]
impl TyBuilder<()>
[src]
pub fn unit() -> Ty
[src]
pub fn fn_ptr(sig: CallableSig) -> Ty
[src]
pub fn builtin(builtin: BuiltinType) -> Ty
[src]
pub fn type_params_subst(
db: &dyn HirDatabase,
def: impl Into<GenericDefId>
) -> Substitution
[src]
db: &dyn HirDatabase,
def: impl Into<GenericDefId>
) -> Substitution
pub fn subst_for_def(
db: &dyn HirDatabase,
def: impl Into<GenericDefId>
) -> TyBuilder<()>
[src]
db: &dyn HirDatabase,
def: impl Into<GenericDefId>
) -> TyBuilder<()>
pub fn build(self) -> Substitution
[src]
impl TyBuilder<AdtId>
[src]
pub fn adt(db: &dyn HirDatabase, adt: AdtId) -> TyBuilder<AdtId>
[src]
pub fn fill_with_defaults(
self,
db: &dyn HirDatabase,
fallback: impl FnMut() -> Ty
) -> Self
[src]
self,
db: &dyn HirDatabase,
fallback: impl FnMut() -> Ty
) -> Self
pub fn build(self) -> Ty
[src]
impl TyBuilder<Tuple>
[src]
impl TyBuilder<TraitId>
[src]
pub fn trait_ref(db: &dyn HirDatabase, trait_id: TraitId) -> TyBuilder<TraitId>
[src]
pub fn build(self) -> TraitRef
[src]
impl TyBuilder<TypeAliasId>
[src]
pub fn assoc_type_projection(
db: &dyn HirDatabase,
type_alias: TypeAliasId
) -> TyBuilder<TypeAliasId>
[src]
db: &dyn HirDatabase,
type_alias: TypeAliasId
) -> TyBuilder<TypeAliasId>
pub fn build(self) -> ProjectionTy
[src]
impl<T: TypeWalk + HasInterner<Interner = Interner>> TyBuilder<Binders<T>>
[src]
impl TyBuilder<Binders<Ty>>
[src]
pub fn def_ty(db: &dyn HirDatabase, def: TyDefId) -> TyBuilder<Binders<Ty>>
[src]
pub fn impl_self_ty(db: &dyn HirDatabase, def: ImplId) -> TyBuilder<Binders<Ty>>
[src]
pub fn value_ty(
db: &dyn HirDatabase,
def: ValueTyDefId
) -> TyBuilder<Binders<Ty>>
[src]
db: &dyn HirDatabase,
def: ValueTyDefId
) -> TyBuilder<Binders<Ty>>
Auto Trait Implementations
impl<D> RefUnwindSafe for TyBuilder<D> where
D: RefUnwindSafe,
D: RefUnwindSafe,
impl<D> Send for TyBuilder<D> where
D: Send,
D: Send,
impl<D> Sync for TyBuilder<D> where
D: Sync,
D: Sync,
impl<D> Unpin for TyBuilder<D> where
D: Unpin,
D: Unpin,
impl<D> UnwindSafe for TyBuilder<D> where
D: UnwindSafe,
D: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Any for T where
T: Any,
T: Any,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Cast for T
[src]
pub fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
[src]
Self: CastTo<U>,
U: HasInterner,
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,