[−][src]Struct rustc_ap_rustc_ast::ptr::P
An owned smart pointer.
Methods
impl<T: 'static> P<T>
[src]
pub fn and_then<U, F>(self, f: F) -> U where
F: FnOnce(T) -> U,
[src]
F: FnOnce(T) -> U,
Move out of the pointer.
Intended for chaining transformations not covered by map
.
pub fn into_inner(self) -> T
[src]
Equivalent to and_then(|x| x)
.
pub fn map<F>(self, f: F) -> P<T> where
F: FnOnce(T) -> T,
[src]
F: FnOnce(T) -> T,
Produce a new P<T>
from self
without reallocating.
pub fn filter_map<F>(self, f: F) -> Option<P<T>> where
F: FnOnce(T) -> Option<T>,
[src]
F: FnOnce(T) -> Option<T>,
Optionally produce a new P<T>
from self
without reallocating.
impl<T> P<[T]>
[src]
pub const fn new() -> P<[T]>
[src]
pub fn from_vec(v: Vec<T>) -> P<[T]>
[src]
pub fn into_vec(self) -> Vec<T>
[src]
Trait Implementations
impl<T: 'static + Clone> Clone for P<T>
[src]
impl<T: Clone> Clone for P<[T]>
[src]
impl<T: ?Sized + Debug> Debug for P<T>
[src]
impl<T: 'static + Decodable> Decodable for P<T>
[src]
impl<T: Decodable> Decodable for P<[T]>
[src]
impl<T> Default for P<[T]>
[src]
impl<T: ?Sized> Deref for P<T>
[src]
impl<T: ?Sized> DerefMut for P<T>
[src]
impl<T: Display> Display for P<T>
[src]
impl<T: Encodable> Encodable for P<T>
[src]
impl<T: Encodable> Encodable for P<[T]>
[src]
impl<T> From<Vec<T>> for P<[T]>
[src]
impl<T> FromIterator<T> for P<[T]>
[src]
impl<T: HasAttrs + 'static> HasAttrs for P<T>
[src]
fn attrs(&self) -> &[Attribute]
[src]
fn visit_attrs(&mut self, f: impl FnOnce(&mut Vec<Attribute>))
[src]
impl<CTX, T: ?Sized> HashStable<CTX> for P<T> where
T: HashStable<CTX>,
[src]
T: HashStable<CTX>,
fn hash_stable(&self, hcx: &mut CTX, hasher: &mut StableHasher)
[src]
impl<T> Into<Vec<T>> for P<[T]>
[src]
impl<T> IntoIterator for P<[T]>
[src]
type Item = T
The type of the elements being iterated over.
type IntoIter = IntoIter<T>
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
[src]
impl<'a, T> IntoIterator for &'a P<[T]>
[src]
type Item = &'a T
The type of the elements being iterated over.
type IntoIter = Iter<'a, T>
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
[src]
impl<T> Pointer for P<T>
[src]
Auto Trait Implementations
impl<T: ?Sized> RefUnwindSafe for P<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T: ?Sized> Send for P<T> where
T: Send,
T: Send,
impl<T: ?Sized> Sync for P<T> where
T: Sync,
T: Sync,
impl<T: ?Sized> Unpin for P<T>
impl<T: ?Sized> UnwindSafe for P<T> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<'a, T> Captures<'a> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Decodable for T where
T: UseSpecializedDecodable,
[src]
T: UseSpecializedDecodable,
impl<T> Encodable for T where
T: UseSpecializedEncodable + ?Sized,
[src]
T: UseSpecializedEncodable + ?Sized,
impl<T> Erased for T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<I> IntoIterator for I where
I: Iterator,
[src]
I: Iterator,
type Item = <I as Iterator>::Item
The type of the elements being iterated over.
type IntoIter = I
Which kind of iterator are we turning this into?
fn into_iter(self) -> I
[src]
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<E> SpecializationError for E
[src]
default fn not_found<S, T>(
trait_name: &'static str,
method_name: &'static str
) -> E where
T: ?Sized,
[src]
trait_name: &'static str,
method_name: &'static str
) -> E where
T: ?Sized,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
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.
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>,