rust/src
Alex Crichton 4eb5336054 Move as much I/O as possible off of native::io
When uv's TTY I/O is used for the stdio streams, the file descriptors are put
into a non-blocking mode. This means that other concurrent writes to the same
stream can fail with EAGAIN or EWOULDBLOCK. By all I/O to event-loop I/O, we
avoid this error.

There is one location which cannot move, which is the runtime's dumb_println
function. This was implemented to handle the EAGAIN and EWOULDBLOCK errors and
simply retry again and again.
2013-10-24 14:21:57 -07:00
..
compiletest Drop the '2' suffix from logging macros 2013-10-22 08:09:56 -07:00
driver
etc register snapshots 2013-10-23 18:06:12 -04:00
gyp@f407f09c94
libextra auto merge of #10032 : thestinger/rust/snapshot, r=huonw 2013-10-23 15:11:07 -07:00
librustc drop unused frame_address intrinsic 2013-10-24 00:42:29 -04:00
librustdoc register snapshots 2013-10-23 18:06:12 -04:00
librustpkg auto merge of #10032 : thestinger/rust/snapshot, r=huonw 2013-10-23 15:11:07 -07:00
libstd Move as much I/O as possible off of native::io 2013-10-24 14:21:57 -07:00
libsyntax register snapshots 2013-10-23 18:06:12 -04:00
libuv@d88cf5652a
llvm@c9ffab392a
rt Move as much I/O as possible off of native::io 2013-10-24 14:21:57 -07:00
rustllvm
test Remove unbound pipes from io::pipe 2013-10-24 14:21:56 -07:00
README.txt
snapshots.txt register snapshots 2013-10-23 18:06:12 -04:00

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

Source layout:

librustc/          The self-hosted compiler

libstd/            The standard library (imported and linked by default)
libextra/          The "extras" library (slightly more peripheral code)
libsyntax/         The Rust parser and pretty-printer

rt/                The runtime system
rt/rust_*.cpp      - The majority of the runtime services
rt/isaac           - The PRNG used for pseudo-random choices in the runtime
rt/bigint          - The bigint library used for the 'big' type
rt/uthash          - Small hashtable-and-list library for C, used in runtime
rt/sync            - Concurrency utils
rt/util            - Small utility classes for the runtime.
rt/vg              - Valgrind headers
rt/msvc            - MSVC support

test/              Testsuite
test/compile-fail  - Tests that should fail to compile
test/run-fail      - Tests that should compile, run and fail
test/run-pass      - Tests that should compile, run and succeed
test/bench         - Benchmarks and miscellanea
test/pretty        - Pretty-printer tests
test/auxiliary     - Dependencies of tests

compiletest/       The test runner

librustpkg/        The package manager and build system

librustdoc/        The Rust API documentation tool

llvm/              The LLVM submodule

libuv/             The libuv submodule

rustllvm/          LLVM support code

libfuzzer/         A collection of fuzz testers

etc/               Scripts, editor support, misc