rust/src
bors b3d50fc2c0 auto merge of #9015 : MicahChalmer/rust/emacs-fixes-round-2, r=nikomatsakis
Here are fixes for more problems mentioned in #8787.  I think I've addressed everything mentioned there except for @nikomatsakis's comment about match/patterns now.  (This also fixes the bug in struct alignment that @pnkfelix mentioned from my earlier pull request #8872.)

The biggest change here is to make fill-paragraph (M-q) and auto-fill-mode work inside different variations of multi-line and doc comments.  Because of the way emacs paragraph fills work (callbacks interacting with global regexp variables that are used in odd ways) there were quite a few edge cases that I had to work around.

The only way I was able to keep it all straight was to create some regression tests.  They use the emacs lisp regression testing tool ERT, and are included as the last commit here.  I added a few tests for indentation as well.  I have not attempted to integrate the tests into the overall rust compiler build process, since I can't imagine anyone would want the compiler build to have a dependency on emacs.  Maybe at some point tools like this get their own repositories?  Just a thought.

One other thought related to the tests: should there be a place to put these types of style samples that isn't specific to one text editor?  Maybe as part of an official rust style guide, but in a form that would allow tools like this to pull out the samples and use them for tests?
2013-09-07 16:10:58 -07:00
..
compiletest Rename str::from_bytes to str::from_utf8, closes #8985 2013-09-05 14:17:24 +02:00
driver Bring compiletest/rustpkg/driver up to date on std vs core 2013-07-04 16:30:48 -07:00
etc Cover all cases for padding in paragraph fills as intended 2013-09-07 00:39:38 -04:00
gyp@f407f09c94 Upgrade libuv to the current master (again) 2013-09-06 11:12:49 -07:00
libextra Renamed Uuid::from_utf8 to Uuid::from_bytes 2013-09-07 11:05:48 -07:00
librust Update clients of path.rs to use new API. 2013-09-04 13:10:32 +02:00
librustc ident->name in debuginfo 2013-09-06 23:19:11 -07:00
librustdoc Rename str::from_bytes to str::from_utf8, closes #8985 2013-09-05 14:17:24 +02:00
librusti Modernized a few more types in syntax::ast 2013-09-03 14:45:06 +02:00
librustpkg Rename str::from_bytes to str::from_utf8, closes #8985 2013-09-05 14:17:24 +02:00
libstd auto merge of #9046 : thestinger/rust/repr, r=alexcrichton 2013-09-07 15:01:02 -07:00
libsyntax added index to test cases, more debugging output 2013-09-06 13:35:14 -07:00
libuv@d88cf5652a Upgrade libuv to the current master (again) 2013-09-06 11:12:49 -07:00
llvm@08a3bd96ee Enable segmented stacks for llvm on mingw-64 2013-08-28 20:44:46 -07:00
rt Upgrade libuv to the current master (again) 2013-09-06 11:12:49 -07:00
rustllvm debuginfo: Added test cases for structs, tuples, enums, etc passed by value. 2013-09-04 18:38:46 +02:00
test add hygiene test, add copyright to another 2013-09-06 13:35:14 -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 register new snapshots 2013-08-14 18:45:51 -07: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