1.0.0[−][src]Struct nom::lib::std::ops::RangeFull
An unbounded range (..
).
RangeFull
is primarily used as a slicing index, its shorthand is ..
.
It cannot serve as an Iterator
because it doesn't have a starting point.
Examples
The ..
syntax is a RangeFull
:
assert_eq!((..), std::ops::RangeFull);
It does not have an IntoIterator
implementation, so you can't use it in
a for
loop directly. This won't compile:
for i in .. { // ... }
Used as a slicing index, RangeFull
produces the full array as a slice.
let arr = [0, 1, 2, 3, 4]; assert_eq!(arr[ .. ], [0, 1, 2, 3, 4]); // This is the `RangeFull` assert_eq!(arr[ .. 3], [0, 1, 2 ]); assert_eq!(arr[ ..=3], [0, 1, 2, 3 ]); assert_eq!(arr[1.. ], [ 1, 2, 3, 4]); assert_eq!(arr[1.. 3], [ 1, 2 ]); assert_eq!(arr[1..=3], [ 1, 2, 3 ]);
Trait Implementations
impl<'a, O, T> BitSliceIndex<'a, O, T> for RangeFull where
O: 'a + BitOrder,
T: 'a + BitStore,
[src]
O: 'a + BitOrder,
T: 'a + BitStore,
RangeFull
is the identity function.
type Immut = &'a BitSlice<O, T>
The output type for immutable functions.
type Mut = &'a mut BitSlice<O, T>
The output type for mutable functions.
pub fn get(
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Immut
) -> Option<<RangeFull as BitSliceIndex<'a, O, T>>::Immut>
[src]
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Immut
) -> Option<<RangeFull as BitSliceIndex<'a, O, T>>::Immut>
pub fn get_mut(
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Mut
) -> Option<<RangeFull as BitSliceIndex<'a, O, T>>::Mut>
[src]
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Mut
) -> Option<<RangeFull as BitSliceIndex<'a, O, T>>::Mut>
pub unsafe fn get_unchecked(
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Immut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Immut
[src]
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Immut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Immut
pub unsafe fn get_unchecked_mut(
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Mut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Mut
[src]
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Mut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Mut
pub fn index(
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Immut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Immut
[src]
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Immut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Immut
pub fn index_mut(
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Mut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Mut
[src]
self,
slice: <RangeFull as BitSliceIndex<'a, O, T>>::Mut
) -> <RangeFull as BitSliceIndex<'a, O, T>>::Mut
impl Clone for RangeFull
[src]
impl Copy for RangeFull
[src]
impl Debug for RangeFull
[src]
impl Default for RangeFull
[src]
impl Eq for RangeFull
[src]
impl Hash for RangeFull
[src]
pub fn hash<__H>(&self, state: &mut __H) where
__H: Hasher,
[src]
__H: Hasher,
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Index<RangeFull> for CString
1.7.0[src]
type Output = CStr
The returned type after indexing.
pub fn index(&self, _index: RangeFull) -> &CStr
[src]
impl Index<RangeFull> for OsString
[src]
type Output = OsStr
The returned type after indexing.
pub fn index(&self, _index: RangeFull) -> &OsStr
[src]
impl Index<RangeFull> for String
[src]
type Output = str
The returned type after indexing.
pub fn index(&self, _index: RangeFull) -> &str
[src]
impl<O, T> Index<RangeFull> for BitSlice<O, T> where
O: BitOrder,
T: BitStore,
[src]
O: BitOrder,
T: BitStore,
type Output = BitSlice<O, T>
The returned type after indexing.
pub fn index(
&self,
index: RangeFull
) -> &<BitSlice<O, T> as Index<RangeFull>>::Output
[src]
&self,
index: RangeFull
) -> &<BitSlice<O, T> as Index<RangeFull>>::Output
impl IndexMut<RangeFull> for OsString
1.44.0[src]
impl IndexMut<RangeFull> for String
1.3.0[src]
impl<O, T> IndexMut<RangeFull> for BitSlice<O, T> where
O: BitOrder,
T: BitStore,
[src]
O: BitOrder,
T: BitStore,
pub fn index_mut(
&mut self,
index: RangeFull
) -> &mut <BitSlice<O, T> as Index<RangeFull>>::Output
[src]
&mut self,
index: RangeFull
) -> &mut <BitSlice<O, T> as Index<RangeFull>>::Output
impl PartialEq<RangeFull> for RangeFull
[src]
impl<T> RangeBounds<T> for RangeFull where
T: ?Sized,
1.28.0[src]
T: ?Sized,
pub fn start_bound(&self) -> Bound<&T>
[src]
pub fn end_bound(&self) -> Bound<&T>
[src]
fn assert_len(self, len: usize) -> Range<usize>ⓘ where
Self: RangeBounds<usize>,
[src]
Self: RangeBounds<usize>,
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
1.35.0[src]
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
impl<'a> Slice<RangeFull> for &'a str
[src]
impl<'a, T> Slice<RangeFull> for &'a [T]
[src]
impl<'a, O, T> Slice<RangeFull> for &'a BitSlice<O, T> where
O: BitOrder,
T: BitStore,
[src]
O: BitOrder,
T: BitStore,
impl<T> SliceIndex<[T]> for RangeFull
1.15.0[src]
type Output = [T]
The output type returned by methods.
pub fn get(self, slice: &[T]) -> Option<&[T]>
[src]
pub fn get_mut(self, slice: &mut [T]) -> Option<&mut [T]>
[src]
pub unsafe fn get_unchecked(self, slice: *const [T]) -> *const [T]
[src]
pub unsafe fn get_unchecked_mut(self, slice: *mut [T]) -> *mut [T]
[src]
pub fn index(self, slice: &[T]) -> &[T]ⓘ
[src]
pub fn index_mut(self, slice: &mut [T]) -> &mut [T]ⓘ
[src]
impl SliceIndex<str> for RangeFull
1.20.0[src]
Implements substring slicing with syntax &self[..]
or &mut self[..]
.
Returns a slice of the whole string, i.e., returns &self
or &mut self
. Equivalent to &self[0 .. len]
or &mut self[0 .. len]
. Unlike
other indexing operations, this can never panic.
This operation is O(1).
Prior to 1.20.0, these indexing operations were still supported by
direct implementation of Index
and IndexMut
.
Equivalent to &self[0 .. len]
or &mut self[0 .. len]
.
type Output = str
The output type returned by methods.
pub fn get(self, slice: &str) -> Option<&<RangeFull as SliceIndex<str>>::Output>
[src]
pub fn get_mut(
self,
slice: &mut str
) -> Option<&mut <RangeFull as SliceIndex<str>>::Output>
[src]
self,
slice: &mut str
) -> Option<&mut <RangeFull as SliceIndex<str>>::Output>
pub unsafe fn get_unchecked(
self,
slice: *const str
) -> *const <RangeFull as SliceIndex<str>>::Output
[src]
self,
slice: *const str
) -> *const <RangeFull as SliceIndex<str>>::Output
pub unsafe fn get_unchecked_mut(
self,
slice: *mut str
) -> *mut <RangeFull as SliceIndex<str>>::Output
[src]
self,
slice: *mut str
) -> *mut <RangeFull as SliceIndex<str>>::Output
pub fn index(self, slice: &str) -> &<RangeFull as SliceIndex<str>>::Output
[src]
pub fn index_mut(
self,
slice: &mut str
) -> &mut <RangeFull as SliceIndex<str>>::Output
[src]
self,
slice: &mut str
) -> &mut <RangeFull as SliceIndex<str>>::Output
impl StructuralEq for RangeFull
[src]
impl StructuralPartialEq for RangeFull
[src]
Auto Trait Implementations
impl RefUnwindSafe for RangeFull
impl Send for RangeFull
impl Sync for RangeFull
impl Unpin for RangeFull
impl UnwindSafe for RangeFull
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,
pub fn borrow_mut(&mut self) -> &mut Tⓘ
[src]
impl<T> Conv for T
impl<T> Conv for T
impl<T> FmtForward for T
fn fmt_binary(self) -> FmtBinary<Self> where
Self: Binary,
Self: Binary,
fn fmt_display(self) -> FmtDisplay<Self> where
Self: Display,
Self: Display,
fn fmt_lower_exp(self) -> FmtLowerExp<Self> where
Self: LowerExp,
Self: LowerExp,
fn fmt_lower_hex(self) -> FmtLowerHex<Self> where
Self: LowerHex,
Self: LowerHex,
fn fmt_octal(self) -> FmtOctal<Self> where
Self: Octal,
Self: Octal,
fn fmt_pointer(self) -> FmtPointer<Self> where
Self: Pointer,
Self: Pointer,
fn fmt_upper_exp(self) -> FmtUpperExp<Self> where
Self: UpperExp,
Self: UpperExp,
fn fmt_upper_hex(self) -> FmtUpperHex<Self> where
Self: UpperHex,
Self: UpperHex,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pipe for T where
T: ?Sized,
T: ?Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R where
R: 'a,
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R where
R: 'a,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R where
B: 'a + ?Sized,
R: 'a,
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
Self: Borrow<B>,
fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
B: 'a + ?Sized,
R: 'a,
Self: BorrowMut<B>,
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
B: 'a + ?Sized,
R: 'a,
Self: BorrowMut<B>,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R where
R: 'a,
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
Self: AsRef<U>,
U: 'a + ?Sized,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R where
R: 'a,
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
Self: AsMut<U>,
U: 'a + ?Sized,
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
R: 'a,
Self: Deref<Target = T>,
T: 'a + ?Sized,
R: 'a,
Self: Deref<Target = T>,
T: 'a + ?Sized,
fn pipe_deref_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
R: 'a,
Self: DerefMut<Target = T> + Deref,
T: 'a + ?Sized,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
R: 'a,
Self: DerefMut<Target = T> + Deref,
T: 'a + ?Sized,
impl<T> Pipe for T
impl<T> PipeAsRef for T
fn pipe_as_ref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
R: 'a,
Self: AsRef<T>,
T: 'a,
R: 'a,
Self: AsRef<T>,
T: 'a,
fn pipe_as_mut<'a, T, R>(&'a mut self, func: impl FnOnce(&'a mut T) -> R) -> R where
R: 'a,
Self: AsMut<T>,
T: 'a,
R: 'a,
Self: AsMut<T>,
T: 'a,
impl<T> PipeBorrow for T
fn pipe_borrow<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
R: 'a,
Self: Borrow<T>,
T: 'a,
R: 'a,
Self: Borrow<T>,
T: 'a,
fn pipe_borrow_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
R: 'a,
Self: BorrowMut<T>,
T: 'a,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
R: 'a,
Self: BorrowMut<T>,
T: 'a,
impl<T> PipeDeref for T
fn pipe_deref<'a, R>(&'a self, func: impl FnOnce(&'a Self::Target) -> R) -> R where
R: 'a,
Self: Deref,
R: 'a,
Self: Deref,
fn pipe_deref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
R: 'a,
Self: DerefMut,
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
R: 'a,
Self: DerefMut,
impl<T> PipeRef for T
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R where
R: 'a,
R: 'a,
fn pipe_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R where
R: 'a,
R: 'a,
impl<T> Tap for T
fn tap(self, func: impl FnOnce(&Self)) -> Self
fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self where
B: ?Sized,
Self: Borrow<B>,
B: ?Sized,
Self: Borrow<B>,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self where
B: ?Sized,
Self: BorrowMut<B>,
B: ?Sized,
Self: BorrowMut<B>,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self where
R: ?Sized,
Self: AsRef<R>,
R: ?Sized,
Self: AsRef<R>,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self where
R: ?Sized,
Self: AsMut<R>,
R: ?Sized,
Self: AsMut<R>,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self where
Self: Deref<Target = T>,
T: ?Sized,
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self where
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self where
B: ?Sized,
Self: Borrow<B>,
B: ?Sized,
Self: Borrow<B>,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self where
B: ?Sized,
Self: BorrowMut<B>,
B: ?Sized,
Self: BorrowMut<B>,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self where
R: ?Sized,
Self: AsRef<R>,
R: ?Sized,
Self: AsRef<R>,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self where
R: ?Sized,
Self: AsMut<R>,
R: ?Sized,
Self: AsMut<R>,
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self where
Self: Deref<Target = T>,
T: ?Sized,
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self where
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
impl<T> Tap for T
fn tap<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
F: FnOnce(&Self) -> R,
fn tap_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
F: FnOnce(&Self) -> R,
fn tap_mut<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
F: FnOnce(&mut Self) -> R,
fn tap_mut_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
F: FnOnce(&mut Self) -> R,
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
U: ?Sized,
fn tap_ref<F, R>(self, func: F) -> Self where
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
fn tap_ref_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
fn tap_ref_mut<F, R>(self, func: F) -> Self where
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
fn tap_ref_mut_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
U: ?Sized,
fn tap_borrow<F, R>(self, func: F) -> Self where
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
fn tap_borrow_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
fn tap_borrow_mut<F, R>(self, func: F) -> Self where
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
impl<T> TapDeref for T
fn tap_deref<F, R>(self, func: F) -> Self where
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
fn tap_deref_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
fn tap_deref_mut<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
fn tap_deref_mut_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> TryConv for T
impl<T> TryConv for 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>,