      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126

    // Copyright 2013-2014 The Rust Project Developers. See the COPYRIGHT
    // file at the top-level directory of this distribution and at
    // http://rust-lang.org/COPYRIGHT.
    //
    // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
    // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
    // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
    // option. This file may not be copied, modified, or distributed
    // except according to those terms.

    //! Collection types.
    //!
    //! See [std::collections](../std/collections/index.html) for a detailed discussion of
    //! collections in Rust.

    #![crate_name = "collections"]
    #![crate_type = "rlib"]
    #![unstable(feature = "collections",
                reason = "library is unlikely to be stabilized with the current \
                          layout and name, use std::collections instead",
                issue = "27783")]
    #![doc(html_logo_url = "https://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
           html_favicon_url = "../../rust-logo-32x32-blk.png",
           html_root_url = "https://doc.rust-lang.org/nightly/",
           html_playground_url = "https://play.rust-lang.org/",
           issue_tracker_base_url = "https://github.com/rust-lang/rust/issues/",
           test(no_crate_inject, attr(allow(unused_variables), deny(warnings))))]

    #![allow(trivial_casts)]
    #![cfg_attr(test, allow(deprecated))] // rand

    #![feature(alloc)]
    #![feature(box_patterns)]
    #![feature(box_syntax)]
    #![feature(core_intrinsics)]
    #![feature(decode_utf16)]
    #![feature(drop_in_place)]
    #![feature(dropck_parametricity)]
    #![feature(fmt_internals)]
    #![feature(fmt_radix)]
    #![feature(heap_api)]
    #![feature(iter_arith)]
    #![feature(iter_arith)]
    #![feature(lang_items)]
    #![feature(nonzero)]
    #![feature(num_bits_bytes)]
    #![feature(pattern)]
    #![feature(shared)]
    #![feature(slice_bytes)]
    #![feature(slice_patterns)]
    #![feature(staged_api)]
    #![feature(step_by)]
    #![feature(str_char)]
    #![feature(unboxed_closures)]
    #![feature(unicode)]
    #![feature(unique)]
    #![feature(unsafe_no_drop_flag)]
    #![cfg_attr(test, feature(clone_from_slice, rand, test))]

    #![no_std]

    extern crate rustc_unicode;
    extern crate alloc;

    #[cfg(test)]
    #[macro_use]
    extern crate std;
    #[cfg(test)]
    extern crate test;

    pub use binary_heap::BinaryHeap;
    pub use btree_map::BTreeMap;
    pub use btree_set::BTreeSet;
    pub use linked_list::LinkedList;
    pub use enum_set::EnumSet;
    pub use vec_deque::VecDeque;
    pub use string::String;
    pub use vec::Vec;

    // Needed for the vec! macro
    pub use alloc::boxed;

    #[macro_use]
    mod macros;

    pub mod binary_heap;
    mod btree;
    pub mod borrow;
    pub mod enum_set;
    pub mod fmt;
    pub mod linked_list;
    pub mod range;
    pub mod slice;
    pub mod str;
    pub mod string;
    pub mod vec;
    pub mod vec_deque;

    #[stable(feature = "rust1", since = "1.0.0")]
    pub mod btree_map {
        #[stable(feature = "rust1", since = "1.0.0")]
        pub use btree::map::*;
    }

    #[stable(feature = "rust1", since = "1.0.0")]
    pub mod btree_set {
        #[stable(feature = "rust1", since = "1.0.0")]
        pub use btree::set::*;
    }

    #[cfg(not(test))]
    mod std {
        pub use core::ops;      // RangeFull
    }

    /// An endpoint of a range of keys.
    #[unstable(feature = "collections_bound", issue = "27787")]
    #[derive(Clone, Copy, Debug, Hash, PartialEq, Eq)]
    pub enum Bound<T> {
        /// An inclusive bound.
        Included(T),
        /// An exclusive bound.
        Excluded(T),
        /// An infinite endpoint. Indicates that there is no bound in this direction.
        Unbounded,
    }

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result

## 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`)