[−][src]Struct rustc::traits::auto_trait::AutoTraitFinder
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Fields
tcx: &'a TyCtxt<'a, 'tcx, 'tcx>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Methods
impl<'a, 'tcx> AutoTraitFinder<'a, 'tcx>
[src]
impl<'a, 'tcx> AutoTraitFinder<'a, 'tcx>
pub fn new(tcx: &'a TyCtxt<'a, 'tcx, 'tcx>) -> Self
[src]
pub fn new(tcx: &'a TyCtxt<'a, 'tcx, 'tcx>) -> Self
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn find_auto_trait_generics<A>(
&self,
did: DefId,
trait_did: DefId,
generics: &Generics,
auto_trait_callback: impl for<'i> Fn(&InferCtxt<'_, 'tcx, 'i>, AutoTraitInfo<'i>) -> A
) -> AutoTraitResult<A>
[src]
pub fn find_auto_trait_generics<A>(
&self,
did: DefId,
trait_did: DefId,
generics: &Generics,
auto_trait_callback: impl for<'i> Fn(&InferCtxt<'_, 'tcx, 'i>, AutoTraitInfo<'i>) -> A
) -> AutoTraitResult<A>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Make a best effort to determine whether and under which conditions an auto trait is implemented for a type. For example, if you have
struct Foo<T> { data: Box<T> }
then this might return that Foo
impl<'a, 'tcx> AutoTraitFinder<'a, 'tcx>
[src]
impl<'a, 'tcx> AutoTraitFinder<'a, 'tcx>
pub fn evaluate_predicates<'b, 'gcx, 'c>(
&self,
infcx: &InferCtxt<'b, 'tcx, 'c>,
ty_did: DefId,
trait_did: DefId,
ty: Ty<'c>,
param_env: ParamEnv<'c>,
user_env: ParamEnv<'c>,
fresh_preds: &mut FxHashSet<Predicate<'c>>,
only_projections: bool
) -> Option<(ParamEnv<'c>, ParamEnv<'c>)>
[src]
pub fn evaluate_predicates<'b, 'gcx, 'c>(
&self,
infcx: &InferCtxt<'b, 'tcx, 'c>,
ty_did: DefId,
trait_did: DefId,
ty: Ty<'c>,
param_env: ParamEnv<'c>,
user_env: ParamEnv<'c>,
fresh_preds: &mut FxHashSet<Predicate<'c>>,
only_projections: bool
) -> Option<(ParamEnv<'c>, ParamEnv<'c>)>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
fn add_user_pred<'c>(
&self,
user_computed_preds: &mut FxHashSet<Predicate<'c>>,
new_pred: Predicate<'c>
)
[src]
fn add_user_pred<'c>(
&self,
user_computed_preds: &mut FxHashSet<Predicate<'c>>,
new_pred: Predicate<'c>
)
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn region_name(&self, region: Region) -> Option<String>
[src]
pub fn region_name(&self, region: Region) -> Option<String>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn get_lifetime(
&self,
region: Region,
names_map: &FxHashMap<String, String>
) -> String
[src]
pub fn get_lifetime(
&self,
region: Region,
names_map: &FxHashMap<String, String>
) -> String
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn map_vid_to_region<'cx>(
&self,
regions: &RegionConstraintData<'cx>
) -> FxHashMap<RegionVid, Region<'cx>>
[src]
pub fn map_vid_to_region<'cx>(
&self,
regions: &RegionConstraintData<'cx>
) -> FxHashMap<RegionVid, Region<'cx>>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn is_of_param(&self, substs: &Substs) -> bool
[src]
pub fn is_of_param(&self, substs: &Substs) -> bool
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn evaluate_nested_obligations<'b, 'c, 'd, 'cx, T: Iterator<Item = Obligation<'cx, Predicate<'cx>>>>(
&self,
ty: Ty,
nested: T,
computed_preds: &'b mut FxHashSet<Predicate<'cx>>,
fresh_preds: &'b mut FxHashSet<Predicate<'cx>>,
predicates: &'b mut VecDeque<PolyTraitPredicate<'cx>>,
select: &mut SelectionContext<'c, 'd, 'cx>,
only_projections: bool
) -> bool
[src]
pub fn evaluate_nested_obligations<'b, 'c, 'd, 'cx, T: Iterator<Item = Obligation<'cx, Predicate<'cx>>>>(
&self,
ty: Ty,
nested: T,
computed_preds: &'b mut FxHashSet<Predicate<'cx>>,
fresh_preds: &'b mut FxHashSet<Predicate<'cx>>,
predicates: &'b mut VecDeque<PolyTraitPredicate<'cx>>,
select: &mut SelectionContext<'c, 'd, 'cx>,
only_projections: bool
) -> bool
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn clean_pred<'c, 'd, 'cx>(
&self,
infcx: &InferCtxt<'c, 'd, 'cx>,
p: Predicate<'cx>
) -> Predicate<'cx>
[src]
pub fn clean_pred<'c, 'd, 'cx>(
&self,
infcx: &InferCtxt<'c, 'd, 'cx>,
p: Predicate<'cx>
) -> Predicate<'cx>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Auto Trait Implementations
impl<'a, 'tcx> !Send for AutoTraitFinder<'a, 'tcx>
impl<'a, 'tcx> !Send for AutoTraitFinder<'a, 'tcx>
impl<'a, 'tcx> !Sync for AutoTraitFinder<'a, 'tcx>
impl<'a, 'tcx> !Sync for AutoTraitFinder<'a, 'tcx>
Blanket Implementations
impl<T> MaybeResult for T
[src]
impl<T> MaybeResult for T
fn from_ok(T) -> T
[src]
fn from_ok(T) -> T
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
fn map_same<F>(Self, F) -> T where
F: FnOnce(T) -> T,
[src]
fn map_same<F>(Self, F) -> T where
F: FnOnce(T) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
impl<'a, T> Captures for T where
T: ?Sized,
[src]
impl<'a, T> Captures for T where
T: ?Sized,
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
try_from
)Performs the conversion.
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
ⓘImportant traits for &'a mut Rfn borrow(&self) -> &T
[src]
fn borrow(&self) -> &T
Immutably borrows from an owned value. Read more
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
try_from
)Performs the conversion.
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
ⓘImportant traits for &'a mut Rfn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId
🔬 This is a nightly-only experimental API. (get_type_id
)
this method will likely be replaced by an associated static
Gets the TypeId
of self
. Read more
impl<E> SpecializationError for E
[src]
impl<E> SpecializationError for E
fn not_found<S, T>(trait_name: &'static str, method_name: &'static str) -> E where
T: ?Sized,
[src]
fn not_found<S, T>(trait_name: &'static str, method_name: &'static str) -> E where
T: ?Sized,
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Create an error for a missing method specialization. Defaults to panicking with type, trait & method names. S
is the encoder/decoder state type, T
is the type being encoded/decoded, and the arguments are the names of the trait and method that should've been overridden. Read more
impl<T> Erased for T
[src]
impl<T> Erased for T
impl<T> Send for T where
T: ?Sized,
[src]
impl<T> Send for T where
T: ?Sized,
impl<T> Sync for T where
T: ?Sized,
[src]
impl<T> Sync for T where
T: ?Sized,
impl<T> Erased for T
impl<T> Erased for T