rust/src
Huon Wilson 3d6c28acd0 docs: begin a "low-level & unsafe code" guide.
This aims to cover the basics of writing safe unsafe code. At the moment
it is just designed to be a better place for the `asm!()` docs than the
detailed release notes wiki page, and I took the time to write up some
other things.

More examples are needed, especially of things that can subtly go wrong;
and vast areas of `unsafe`-ty aren't covered, e.g. `static mut`s and
thread-safety in general.
2014-03-15 13:51:53 +11:00
..
compiler-rt@f4b221571c Update compiler-rt 2014-02-17 19:58:47 -08:00
compiletest lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
doc docs: begin a "low-level & unsafe code" guide. 2014-03-15 13:51:53 +11:00
driver rustc: Use libnative for the compiler 2014-02-27 12:03:58 -08:00
etc auto merge of #12815 : alexcrichton/rust/chan-rename, r=brson 2014-03-13 14:06:37 -07:00
gyp@1e46da1000 Update bundled gyp 2013-12-28 10:42:25 -08:00
libarena lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libbacktrace Bundle libbacktrace with the compiler 2014-03-11 21:02:34 -07:00
libcollections auto merge of #12864 : huonw/rust/hash-docs, r=alexcrichton 2014-03-14 00:41:34 -07:00
libextra auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libflate lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libfourcc libfourcc: Fix errors arising from the automated ~[T] conversion 2014-03-01 22:40:53 -08:00
libgetopts lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libglob lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libgreen auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libhexfloat Implement hexadecimal floating point literals via a syntax extension 2014-03-10 22:36:56 +00:00
libnative auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libnum lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
librand auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
librustc auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
librustdoc auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
librustuv auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libsemver lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libserialize lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libstd auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libsync auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libsyntax auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libterm lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libtest auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
libtime lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libuuid lint: add lint for use of a ~[T]. 2014-03-14 11:28:39 +11:00
libuv@800b56fe6a Make priavcy checking aware that a use directive can point to two defintions (namespaces) with different privacy. Closes #4110 2014-02-19 14:47:10 +13:00
llvm@263c617d66 Update LLVM 2014-02-25 09:37:30 -08:00
rt std: Move rand to librand. 2014-03-12 11:31:05 +11:00
rustllvm rustc: Fix support for LLVM 3.3 2014-03-05 18:05:05 -08:00
test auto merge of #12861 : huonw/rust/lint-owned-vecs, r=thestinger 2014-03-13 22:26:35 -07:00
README.md Update source code layout in src/ 2014-02-24 21:22:27 -08:00
snapshots.txt Register new snapshots 2014-03-03 18:00:52 -08:00

This is a preliminary version of the Rust compiler, libraries and tools.

Source layout:

Path Description
librustc/ The self-hosted compiler
libstd/ The standard library (imported and linked by default)
libextra/ The "extras" library (slightly more peripheral code)
libgreen/ The M:N runtime library
libnative/ The 1:1 runtime library
libsyntax/ The Rust parser and pretty-printer
libcollections/ A collection of useful data structures and containers
libnum/ Extended number support library (complex, rational, etc)
libtest/ Rust's test-runner code
------------------- ---------------------------------------------------------
libarena/ The arena (a fast but limited) memory allocator
libflate/ Simple compression library
libfourcc/ Data format identifier library
libgetopts/ Get command-line-options library
libglob/ Unix glob patterns library
libsemver/ Rust's semantic versioning library
libserialize/ Encode-Decode types library
libsync/ Concurrency mechanisms and primitives
libterm/ ANSI color library for terminals
libtime/ Time operations library
libuuid/ UUID's handling code
------------------- ---------------------------------------------------------
rt/ The runtime system
rt/rust_*.c - Some of the runtime services
rt/vg - Valgrind headers
rt/msvc - MSVC support
rt/sundown - The Markdown library used by rustdoc
------------------- ---------------------------------------------------------
compiletest/ The test runner
test/ Testsuite
test/codegen - Tests for the LLVM IR infrastructure
test/compile-fail - Tests that should fail to compile
test/debug-info - Tests for the debuginfo tool
test/run-fail - Tests that should compile, run and fail
test/run-make - Tests that depend on a Makefile infrastructure
test/run-pass - Tests that should compile, run and succeed
test/bench - Benchmarks and miscellaneous
test/pretty - Pretty-printer tests
test/auxiliary - Dependencies of tests
------------------- ---------------------------------------------------------
librustdoc/ The Rust API documentation tool
libuv/ The libuv submodule
librustuv/ Rust libuv support code
------------------- ---------------------------------------------------------
llvm/ The LLVM submodule
rustllvm/ LLVM support code
------------------- ---------------------------------------------------------
etc/ Scripts, editors support, misc

NOTE: This list (especially the second part of the table which contains modules and libraries) is highly volatile and subject to change.