Skip to content

Commit cea4c27

Browse files
committed
core: Spruce up the crate description
1 parent 220313e commit cea4c27

File tree

1 file changed

+22
-11
lines changed

1 file changed

+22
-11
lines changed

src/libcore/lib.rs

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,28 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11-
//! The Rust core library
11+
//! The Rust Core Library
1212
//!
13-
//! This library is meant to represent the core functionality of rust that is
14-
//! maximally portable to other platforms. To that extent, this library has no
15-
//! knowledge of things like allocation, threads, I/O, etc. This library is
16-
//! built on the assumption of a few existing symbols:
13+
//! The Rust Core Library is the dependency-free foundation of [The
14+
//! Rust Standard Library](../std/index.html). It is the portable glue
15+
//! between the language and its libraries, defining the intrinsic and
16+
//! primitive building blocks of all Rust code. It links to no
17+
//! upstream libraries, no system libraries, no libc.
18+
//!
19+
//! The core library is *minimal*: it isn't even aware of heap allocation,
20+
//! nor does it provide concurrency or I/O. These things require
21+
//! platform integration, and this library is platform-oblivious.
22+
//!
23+
//! *It is not recommended to use the core library*. The stable
24+
//! functionality of libcore is reexported from the
25+
//! [standard library](../std/index.html). The composition of this library is
26+
//! subject to change over time; only the interface exposed through libstd is
27+
//! intended to be stable.
28+
//!
29+
//! # How to use the core library
30+
//!
31+
// TODO: Fill me in with more detail when the interface settles
32+
//! This library is built on the assumption of a few existing symbols:
1733
//!
1834
//! * `memcpy`, `memcmp`, `memset` - These are core memory routines which are
1935
//! often generated by LLVM. Additionally, this library can make explicit
@@ -23,16 +39,11 @@
2339
//! distribution.
2440
//!
2541
//! * `rust_begin_unwind` - This function takes three arguments, a
26-
//! `&fmt::Arguments`, a `&str`, and a `uint. These three arguments dictate
42+
//! `&fmt::Arguments`, a `&str`, and a `uint`. These three arguments dictate
2743
//! the failure message, the file at which failure was invoked, and the line.
2844
//! It is up to consumers of this core library to define this failure
2945
//! function; it is only required to never return.
3046
//!
31-
//! Currently, it is *not* recommended to use the core library. The stable
32-
//! functionality of libcore is exported directly into the
33-
//! [standard library](../std/index.html). The composition of this library is
34-
//! subject to change over time, only the interface exposed through libstd is
35-
//! intended to be stable.
3647
3748
#![crate_id = "core#0.11.0-pre"]
3849
#![license = "MIT/ASL2"]

0 commit comments

Comments
 (0)