alloc::range::RangeArgument - Rust
Description: API documentation for the Rust `RangeArgument` trait in crate `alloc`.
Keywords: rust, rustlang, rust-lang, RangeArgument

# Trait alloc::range::RangeArgument [−] [src]

    pub trait RangeArgument<T: ?Sized> {
        fn start(&self) -> Bound<&T>;
        fn end(&self) -> Bound<&T>;
    }

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

`RangeArgument` is implemented by Rust's built-in range types, produced by range syntax like `..`, `a..`, `..b` or `c..d`.

## Required Methods

### `fn start(&self) -> Bound<&T>`

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

Start index bound.

Returns the start value as a `Bound`.

# Examples

    #![feature(alloc)]
    #![feature(collections_range)]

    extern crate alloc;

    use alloc::range::RangeArgument;
    use alloc::Bound::*;

    assert_eq!((..10).start(), Unbounded);
    assert_eq!((3..10).start(), Included(&3));

### `fn end(&self) -> Bound<&T>`

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

End index bound.

Returns the end value as a `Bound`.

# Examples

    #![feature(alloc)]
    #![feature(collections_range)]

    extern crate alloc;

    use alloc::range::RangeArgument;
    use alloc::Bound::*;

    assert_eq!((3..).end(), Unbounded);
    assert_eq!((3..10).end(), Excluded(&10));

## Implementations on Foreign Types

### `impl<T: ?Sized> RangeArgument<T> for RangeFull`
[src]

#### `fn start(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

#### `fn end(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

### `impl<T> RangeArgument<T> for RangeFrom<T>`
[src]

#### `fn start(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

#### `fn end(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

### `impl<T> RangeArgument<T> for RangeTo<T>`
[src]

#### `fn start(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

#### `fn end(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

### `impl<T> RangeArgument<T> for Range<T>`
[src]

#### `fn start(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

#### `fn end(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

### `impl<T> RangeArgument<T> for RangeInclusive<T>`
[src]

#### `fn start(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

#### `fn end(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

### `impl<T> RangeArgument<T> for RangeToInclusive<T>`
[src]

#### `fn start(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

#### `fn end(&self) -> Bound<&T>`
[src]

🔬 This is a nightly-only experimental API. (`collections_range` #30877)

waiting for dust to settle on inclusive ranges

## Implementors

- `impl<T> RangeArgument<T> for (Bound<T>, Bound<T>)`
- `impl<'a, T: ?Sized + 'a> RangeArgument<T> for (Bound<&'a T>, Bound<&'a T>)`

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
↑
  Move up in search results
↓
  Move down in search results
↹
  Switch tab
⏎
  Go to active search result
+ / -
  Collapse/expand all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)