diplomat_core::ast

Struct BorrowedParams

source
#[non_exhaustive]
pub struct BorrowedParams<'a>(pub Option<&'a SelfParam>, pub Vec<(&'a Param, LifetimeKind)>);
Expand description

Parameters in a method that might be borrowed in the return type.

Tuple Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§0: Option<&'a SelfParam>§1: Vec<(&'a Param, LifetimeKind)>

Implementations§

source§

impl BorrowedParams<'_>

source

pub fn return_names<'a>( &'a self, self_name: &'a Ident, ) -> impl Iterator<Item = &'a Ident>

Returns an Iterator through the names of the parameters that are borrowed for the lifetime of the return value, accepting an Ident that the self param will be called if present.

source

pub fn static_names(&self) -> impl Iterator<Item = &Ident>

Returns an Iterator through the names of the parameters that are borrowed for a static lifetime.

source

pub fn contains(&self, param_name: &Ident) -> bool

Returns true if a provided param name is included in the borrowed params, otherwise false.

This method doesn’t check the self parameter. Use BorrowedParams::borrows_self instead.

source

pub fn is_empty(&self) -> bool

Returns true if there are no borrowed parameters, otherwise false.

source

pub fn borrows_self(&self) -> bool

Returns true if the self param is borrowed, otherwise false.

source

pub fn borrows_params(&self) -> bool

Returns true if there are any borrowed params, otherwise false.

source

pub fn len(&self) -> usize

Returns the number of borrowed params.

Trait Implementations§

source§

impl<'a> Debug for BorrowedParams<'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a> Default for BorrowedParams<'a>

source§

fn default() -> BorrowedParams<'a>

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for BorrowedParams<'a>

§

impl<'a> RefUnwindSafe for BorrowedParams<'a>

§

impl<'a> Send for BorrowedParams<'a>

§

impl<'a> Sync for BorrowedParams<'a>

§

impl<'a> Unpin for BorrowedParams<'a>

§

impl<'a> UnwindSafe for BorrowedParams<'a>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.