rust/src
Marijn Haverbeke 575aae407b Saner approach to lvalues and callable values in trans
LValues no longer carry information about generics and objs, instead
there's an extended form of lvalue, lval_maybe_callee, only used by
call and bind, which holds this info.

This makes it possible to take the value of a method and get a working
closure, and will (with some more work) allow us to call statically
known functions without loading from their pair.

Closes #435
Closes #758
2011-09-16 21:31:36 +02:00
..
comp Saner approach to lvalues and callable values in trans 2011-09-16 21:31:36 +02:00
etc Don't check-fast xfail-win32 tests 2011-09-11 17:31:41 -07:00
fuzzer Fuzzer: update lists of known bugs 2011-09-16 10:44:58 -07:00
lib Revert "Revert "Make option::get return the option contents by reference" due to memory corruption" 2011-09-16 12:20:06 -07:00
rt Yield after send 2011-09-16 11:08:01 -07:00
rustllvm Add Rust definitions for new LLVM EH instructions 2011-09-11 17:31:38 -07:00
test Saner approach to lvalues and callable values in trans 2011-09-16 21:31:36 +02:00
README
snapshots.txt Register new snapshot 2011-09-15 17:33:35 +02:00

This is preliminary version of the Rust compiler(s).

Source layout:

comp/              The self-hosted compiler

lib/               The standard library

rustllvm/          LLVM support code

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/libuv           - The library used for async IO in the runtime
rt/{sync,util}     - Small utility classes for the runtime.

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

Please be gentle, it's a work in progress.