2015-03-10 23:58:16 -05:00
|
|
|
// Copyright 2015 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.
|
|
|
|
|
2016-01-30 18:19:37 -06:00
|
|
|
#![deny(warnings)]
|
|
|
|
|
2015-09-01 00:38:34 -05:00
|
|
|
#![feature(binary_heap_extras)]
|
2015-03-10 23:58:16 -05:00
|
|
|
#![feature(box_syntax)]
|
2015-06-10 15:33:52 -05:00
|
|
|
#![feature(btree_range)]
|
2015-03-10 23:58:16 -05:00
|
|
|
#![feature(collections)]
|
2015-06-10 15:33:52 -05:00
|
|
|
#![feature(collections_bound)]
|
2015-05-29 08:42:32 -05:00
|
|
|
#![feature(const_fn)]
|
2016-09-26 11:26:49 -05:00
|
|
|
#![feature(dedup_by)]
|
2015-06-10 15:33:52 -05:00
|
|
|
#![feature(enumset)]
|
2016-11-22 16:31:31 -06:00
|
|
|
#![feature(exact_size_is_empty)]
|
2015-06-10 15:33:52 -05:00
|
|
|
#![feature(pattern)]
|
2015-03-10 23:58:16 -05:00
|
|
|
#![feature(rand)]
|
2016-09-24 12:35:24 -05:00
|
|
|
#![feature(repeat_str)]
|
2015-06-10 15:33:52 -05:00
|
|
|
#![feature(step_by)]
|
|
|
|
#![feature(str_escape)]
|
2016-09-08 05:55:04 -05:00
|
|
|
#![feature(str_replacen)]
|
2016-11-28 12:54:55 -06:00
|
|
|
#![feature(string_split_off)]
|
2015-03-10 23:58:16 -05:00
|
|
|
#![feature(test)]
|
|
|
|
#![feature(unboxed_closures)]
|
|
|
|
#![feature(unicode)]
|
2015-07-11 06:34:57 -05:00
|
|
|
|
2015-03-10 23:58:16 -05:00
|
|
|
extern crate collections;
|
|
|
|
extern crate test;
|
2016-11-29 13:38:08 -06:00
|
|
|
extern crate std_unicode;
|
2015-03-10 23:58:16 -05:00
|
|
|
|
2016-09-28 19:23:36 -05:00
|
|
|
use std::hash::{Hash, Hasher};
|
|
|
|
use std::collections::hash_map::DefaultHasher;
|
2015-08-11 19:27:05 -05:00
|
|
|
|
2016-10-16 05:18:22 -05:00
|
|
|
#[cfg(test)]
|
|
|
|
#[macro_use]
|
|
|
|
mod bench;
|
2015-03-10 23:58:16 -05:00
|
|
|
|
|
|
|
mod binary_heap;
|
|
|
|
mod btree;
|
2016-11-03 20:07:00 -05:00
|
|
|
mod cow_str;
|
2015-03-11 19:28:58 -05:00
|
|
|
mod enum_set;
|
2015-03-10 23:58:16 -05:00
|
|
|
mod fmt;
|
|
|
|
mod linked_list;
|
|
|
|
mod slice;
|
|
|
|
mod str;
|
|
|
|
mod string;
|
|
|
|
mod vec_deque;
|
|
|
|
mod vec;
|
2015-08-11 19:27:05 -05:00
|
|
|
|
|
|
|
fn hash<T: Hash>(t: &T) -> u64 {
|
2016-09-28 19:23:36 -05:00
|
|
|
let mut s = DefaultHasher::new();
|
2015-08-11 19:27:05 -05:00
|
|
|
t.hash(&mut s);
|
|
|
|
s.finish()
|
|
|
|
}
|