Struct ExprRange

struct ExprRange { ... }

A range expression: 1..2, 1.., ..2, 1..=2, ..=2.

Fields

attrs: Vec<Attribute>
start: Option<Box<Expr>>
limits: RangeLimits
end: Option<Box<Expr>>

Implementations

impl Clone for ExprRange

fn clone(self: &Self) -> Self

impl Debug for ExprRange

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

impl Eq for ExprRange

impl Freeze for ExprRange

impl Hash for ExprRange

fn hash<H>(self: &Self, state: &mut H)
where
    H: Hasher

impl Parse for ExprRange

fn parse(input: ParseStream<'_>) -> Result<Self>

impl PartialEq for ExprRange

fn eq(self: &Self, other: &Self) -> bool

impl RefUnwindSafe for ExprRange

impl Send for ExprRange

impl Sync for ExprRange

impl ToTokens for ExprRange

fn to_tokens(self: &Self, tokens: &mut TokenStream)

impl Unpin for ExprRange

impl UnsafeUnpin for ExprRange

impl UnwindSafe for ExprRange

impl<T> Any for ExprRange

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for ExprRange

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for ExprRange

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

impl<T> CloneToUninit for ExprRange

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for ExprRange

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> Spanned for ExprRange

fn span(self: &Self) -> Span

impl<T> ToOwned for ExprRange

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for ExprRange

fn into(self: Self) -> U

Calls U::from(self).

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

impl<T, U> TryFrom for ExprRange

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

impl<T, U> TryInto for ExprRange

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