]> git.lizzy.rs Git - rust.git/blob - src/libextra/extra.rs
Added hexadecimal encoding module
[rust.git] / src / libextra / extra.rs
1 // Copyright 2012-2013 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
4 //
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
10
11 /*!
12
13 Rust extras.
14
15 The `extra` crate is a set of useful modules for a variety of
16 purposes, including collections, numerics, I/O, serialization,
17 and concurrency.
18
19 Rust extras are part of the standard Rust distribution.
20
21 */
22
23 #[link(name = "extra",
24        vers = "0.8-pre",
25        uuid = "122bed0b-c19b-4b82-b0b7-7ae8aead7297",
26        url = "https://github.com/mozilla/rust/tree/master/src/libextra")];
27
28 #[comment = "Rust extras"];
29 #[license = "MIT/ASL2"];
30 #[crate_type = "lib"];
31
32 #[deny(non_camel_case_types)];
33 #[deny(missing_doc)];
34
35 use std::str::{StrSlice, OwnedStr};
36
37 pub use std::os;
38
39 // Utility modules
40
41 pub mod c_vec;
42 pub mod io_util;
43 pub mod rc;
44
45 // Concurrency
46
47 pub mod sync;
48 pub mod arc;
49 pub mod comm;
50 pub mod future;
51 pub mod task_pool;
52 pub mod flatpipes;
53
54 // Collections
55
56 pub mod container;
57 pub mod bitv;
58 pub mod fun_treemap;
59 pub mod list;
60 pub mod ringbuf;
61 pub mod priority_queue;
62 pub mod smallintmap;
63
64 pub mod sort;
65
66 pub mod dlist;
67 pub mod treemap;
68
69 // Crypto
70 #[path="crypto/cryptoutil.rs"]
71 mod cryptoutil;
72 #[path="crypto/digest.rs"]
73 pub mod digest;
74 #[path="crypto/sha1.rs"]
75 pub mod sha1;
76 #[path="crypto/sha2.rs"]
77 pub mod sha2;
78
79 // And ... other stuff
80
81 pub mod url;
82 pub mod ebml;
83 pub mod getopts;
84 pub mod json;
85 pub mod md4;
86 pub mod tempfile;
87 pub mod term;
88 pub mod time;
89 pub mod arena;
90 pub mod par;
91 pub mod base64;
92 pub mod rl;
93 pub mod workcache;
94 pub mod enum_set;
95 #[path="num/bigint.rs"]
96 pub mod bigint;
97 #[path="num/rational.rs"]
98 pub mod rational;
99 #[path="num/complex.rs"]
100 pub mod complex;
101 pub mod stats;
102 pub mod semver;
103 pub mod fileinput;
104 pub mod flate;
105 pub mod hex;
106
107 #[cfg(unicode)]
108 mod unicode;
109
110 #[path="terminfo/terminfo.rs"]
111 pub mod terminfo;
112
113 // Compiler support modules
114
115 pub mod test;
116 pub mod serialize;
117
118 // A curious inner-module that's not exported that contains the binding
119 // 'extra' so that macro-expanded references to extra::serialize and such
120 // can be resolved within libextra.
121 #[doc(hidden)]
122 pub mod extra {
123     pub use serialize;
124     pub use test;
125
126     // For bootstrapping.
127     pub use std::clone;
128     pub use std::condition;
129     pub use std::cmp;
130     pub use std::sys;
131     pub use std::unstable;
132     pub use std::str;
133     pub use std::os;
134 }