rust/src
Alex Crichton cd9010c77e native: Improve windows file handling
This commit splits the file implementation into file_unix and file_win32. The
two implementations have diverged to the point that they share almost 0 code at
this point, so it's easier to maintain as separate files.

The other major change accompanied with this commit is that file::open is no
longer based on libc's open function on windows, but rather windows's CreateFile
function. This fixes dealing with binary files on windows (test added in
previous commit).

This also changes the read/write functions to use ReadFile and WriteFile instead
of libc's read/write.

Closes #12406
2014-02-27 12:03:57 -08:00
..
compiler-rt@f4b221571c
compiletest auto merge of #12530 : alexcrichton/rust/make-check-no-rpath, r=brson 2014-02-25 07:56:35 -08:00
doc tutorial: Missing tildes around .notrust block 2014-02-26 14:48:40 +01:00
driver
etc auto merge of #12486 : MicahChalmer/rust/emacs-fixes-round-3, r=brson 2014-02-26 20:01:42 -08:00
gyp@1e46da1000
libarena
libcollections auto merge of #12522 : erickt/rust/hash, r=alexcrichton 2014-02-25 06:41:36 -08:00
libextra
libflate
libfourcc
libgetopts
libglob
libgreen test: Clean out the test suite a bit 2014-02-25 09:21:09 -08:00
libnative native: Improve windows file handling 2014-02-27 12:03:57 -08:00
libnum
librustc rustc: Explicitly mention type params with missing 'static bounds 2014-02-27 02:14:46 +09:00
librustdoc
librustuv
libsemver
libserialize
libstd native: Improve windows file handling 2014-02-27 12:03:57 -08:00
libsync
libsyntax Fix a pretty printer crash on /***. 2014-02-27 12:16:18 +11:00
libterm
libtest
libtime
libuuid
libuv@800b56fe6a
llvm@263c617d66 Update LLVM 2014-02-25 09:37:30 -08:00
rt
rustllvm rustc: Get rustc compiling with LLVM 3.{3,4} again 2014-02-26 15:01:15 -08:00
test Fix a pretty printer crash on /***. 2014-02-27 12:16:18 +11:00
README.md Update source code layout in src/ 2014-02-24 21:22:27 -08:00
snapshots.txt

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.