rust/src/libcore/core.rc

191 lines
3.6 KiB
Plaintext
Raw Normal View History

#[link(name = "core",
2012-03-22 23:25:02 +01:00
vers = "0.2",
uuid = "c70c24a7-5551-4f73-8e37-380b11d80be8",
url = "https://github.com/mozilla/rust/tree/master/src/libcore")];
#[comment = "The Rust core library"];
#[license = "MIT"];
#[crate_type = "lib"];
// Don't link to core. We are core.
#[no_core];
2012-03-07 04:09:32 +01:00
#[doc = "
The Rust core library
2012-01-24 02:03:42 +01:00
The core library provides functionality that is closely tied to the Rust
built-in types and runtime services, or that is used in nearly every
non-trivial program.
2012-01-24 02:03:42 +01:00
It is linked by default to all crates and the contents imported. The effect is
as though the user had written the following:
use core;
import core::*;
2012-03-07 04:09:32 +01:00
This behavior can be disabled with the `no_core` crate attribute.
"];
2012-01-24 01:40:33 +01:00
export int, i8, i16, i32, i64;
export uint, u8, u16, u32, u64;
export float, f32, f64;
export box, char, str, ptr, vec, bool;
export either, option, result, iter;
export libc, os, io, run, rand, sys, unsafe, logging;
2012-02-19 08:03:18 +01:00
export comm, task, future;
export extfmt;
2012-01-17 19:43:29 +01:00
export tuple;
export to_str;
// FIXME: This creates some APIs that I do not want to commit to. It is
// currently exported for the uv code in std, but when that code moves into
// core this should become unexported
export priv;
// Built-in-type support modules
#[doc = "Operations and constants for `int`"]
#[path = "int-template"]
mod int {
import inst::{ hash, parse_buf, from_str, to_str, str, pow };
export hash, parse_buf, from_str, to_str, str, pow;
#[path = "int.rs"]
mod inst;
}
#[doc = "Operations and constants for `i8`"]
#[path = "int-template"]
mod i8 {
#[path = "i8.rs"]
mod inst;
}
#[doc = "Operations and constants for `i16`"]
#[path = "int-template"]
mod i16 {
#[path = "i16.rs"]
mod inst;
}
#[doc = "Operations and constants for `i32`"]
#[path = "int-template"]
mod i32 {
#[path = "i32.rs"]
mod inst;
}
#[doc = "Operations and constants for `i64`"]
#[path = "int-template"]
mod i64 {
#[path = "i64.rs"]
mod inst;
}
#[doc = "Operations and constants for `uint`"]
#[path = "uint-template"]
mod uint {
import inst::{
div_ceil, div_round, div_floor, hash, iterate,
next_power_of_two, parse_buf, from_str, to_str, str
};
export div_ceil, div_round, div_floor, hash, iterate,
next_power_of_two, parse_buf, from_str, to_str, str;
#[path = "uint.rs"]
mod inst;
}
#[doc = "Operations and constants for `u8`"]
#[path = "uint-template"]
mod u8 {
import inst::is_ascii;
export is_ascii;
#[path = "u8.rs"]
mod inst;
}
#[doc = "Operations and constants for `u16`"]
#[path = "uint-template"]
mod u16 {
#[path = "u16.rs"]
mod inst;
}
#[doc = "Operations and constants for `u32`"]
#[path = "uint-template"]
mod u32 {
#[path = "u32.rs"]
mod inst;
}
#[doc = "Operations and constants for `u64`"]
#[path = "uint-template"]
mod u64 {
import inst::{ to_str, str, from_str };
export to_str, str, from_str;
#[path = "u64.rs"]
mod inst;
}
mod box;
mod char;
mod float;
mod f32;
mod f64;
mod str;
mod ptr;
mod vec;
mod bool;
// For internal use by char, not exported
mod unicode;
// Do not export
mod priv;
// Ubiquitous-utility-type modules
mod either;
mod option;
mod result;
2012-01-17 19:43:29 +01:00
mod tuple;
mod iter;
// Useful ifaces
mod to_str;
// Runtime and language-primitive support
mod libc;
2012-03-06 19:14:58 +01:00
mod os;
mod io;
mod run;
mod rand;
mod path;
mod cmath;
mod sys;
mod unsafe;
mod logging;
// Concurrency
mod comm;
mod task;
mod future;
// Compiler support modules
mod extfmt;
// Local Variables:
// mode: rust;
// fill-column: 78;
// indent-tabs-mode: nil
// c-basic-offset: 4
// buffer-file-coding-system: utf-8-unix
// compile-command: "make -k -C .. 2>&1 | sed -e 's/\\/x\\//x:\\//g'";
// End: