rust/src
Michael Sullivan e75ec80157 Improve vtable resolution.
Improve vtable resolution in a handful of ways.  First, if we don't
find a vtable for a self/param type, do a regular vtable search.  This
could find impls of the form "impl for A". Second, we don't require
that types be fully resolved before looking up subtables, and we
process tables in reverse order. This allows us to gain more
information about early type parameters based on how they are used by
the impls used to resolve later params.

Closes #6967, I believe.
2013-07-23 17:06:32 -07:00
..
compiletest Remove what appears to be redundant indirection from 2013-07-21 18:33:29 +01:00
driver Bring compiletest/rustpkg/driver up to date on std vs core 2013-07-04 16:30:48 -07:00
etc Merge pull request #7936 from thestinger/cleanup 2013-07-21 20:04:15 -07:00
libextra auto merge of #7944 : blake2-ppc/rust/dlist-move-nodes, r=bblum 2013-07-23 04:46:41 -07:00
librust librustc: Remove all uses of the Copy bound. 2013-07-17 14:57:53 -07:00
librustc Improve vtable resolution. 2013-07-23 17:06:32 -07:00
librustdoc Ast spanned<T> refactoring, renaming: crate, local, blk, crate_num, crate_cfg. 2013-07-22 15:35:28 +02:00
librusti Ast spanned<T> refactoring, renaming: crate, local, blk, crate_num, crate_cfg. 2013-07-22 15:35:28 +02:00
librustpkg std: Move change_dir_locked to unstable. #7870 2013-07-22 14:16:52 -07:00
libstd Add a to_owned_vec method to IteratorUtil. 2013-07-23 17:06:32 -07:00
libsyntax auto merge of #7873 : sstewartgallus/rust/cleanup_syntax, r=alexcrichton 2013-07-22 20:58:35 -07:00
libuv@dfae9c3e95 libsyntax: Fix more merge fallout. 2013-05-22 21:57:11 -07:00
llvm@2e9f0d21fe llvm: Unrevert change 2013-05-08 17:04:03 -07:00
rt std: Remove at_exit API. Unused 2013-07-22 14:17:09 -07:00
rustllvm Avoid blocks for static allocas and loading the closure environment 2013-07-21 18:29:20 +02:00
test extra: Remove uv, net, timer code 2013-07-22 14:16:33 -07:00
README.txt Update doc references to new names for std, extra, and std::libc 2013-06-16 23:26:08 -07:00
snapshots.txt new snapshot 2013-07-22 01:09:48 -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
rt/linenoise       - a readline-like line editing library

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

librusti/          The JIT REPL

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