rust/src
bors 70456a6cbd Auto merge of #61892 - rijenkii:master, r=Centril
weird-exprs: if if if if

The `if` keyword can be chained as long as there are enough `{...} else {...}` following, and they all return a `bool` (not required for the last one).
`if` expression can be also put inside a `match` arm guard, thus making the whole thing a little bit more confusing.

Discovered this clusterfunk while reading the reference because I have nothing better to do.
2019-06-16 23:25:12 +00:00
..
bootstrap Separate bootstrap module 2019-06-16 14:17:01 +03:00
build_helper Bump compiler-builtins to 0.1.15 2019-05-22 07:46:36 -07:00
ci Auto merge of #59752 - Zoxc:dylib-fix, r=alexcrichton 2019-06-15 10:18:09 +00:00
doc Rollup merge of #61734 - mati865:books, r=alexcrichton 2019-06-12 04:22:56 +02:00
etc Fix .natvis visualizers. 2019-05-09 16:15:43 -07:00
grammar
liballoc Separate liballoc module 2019-06-16 13:08:09 +03:00
libarena Separate libarena::lib module 2019-06-16 13:08:09 +03:00
libcore Rollup merge of #61844 - AaronKutch:master, r=Centril 2019-06-15 17:45:06 +02:00
libfmt_macros Separate libfmt_macros module 2019-06-16 14:17:01 +03:00
libgraphviz Separate libgraphviz module 2019-06-16 13:08:09 +03:00
libpanic_abort
libpanic_unwind std: Remove internal definitions of cfg_if! macro 2019-06-10 10:58:44 -07:00
libproc_macro
libprofiler_builtins Ship profiler with windows-gnu 2019-05-23 13:32:30 +02:00
librustc Auto merge of #61754 - nikomatsakis:trait-caching-perf-3, r=pnkfelix 2019-06-16 14:58:05 +00:00
librustc_allocator Add deny(unused_lifetimes) to all the crates that have deny(internal). 2019-06-11 14:11:59 +03:00
librustc_apfloat ignore-tidy-filelength on all files with greater than 3000 lines 2019-04-25 21:39:09 +01:00
librustc_asan
librustc_borrowck Remove unnecessary .clone() 2019-06-15 20:46:00 +09:00
librustc_codegen_llvm Auto merge of #61881 - glaubitz:sparc64-ffi-abi, r=petrochenkov 2019-06-16 17:48:24 +00:00
librustc_codegen_ssa Separate librustc_codegen_ssa module 2019-06-16 14:16:55 +03:00
librustc_codegen_utils Run rustfmt --file-lines ... for changes from previous commits. 2019-06-14 18:58:32 +03:00
librustc_cratesio_shim
librustc_data_structures Auto merge of #61347 - Centril:stabilize-underscore_const_names, r=petrochenkov 2019-06-16 20:33:55 +00:00
librustc_driver Unify all uses of 'gcx and 'tcx. 2019-06-14 18:58:23 +03:00
librustc_errors Remove unnecessary .clone() 2019-06-15 20:46:00 +09:00
librustc_fs_util
librustc_incremental Run rustfmt --file-lines ... for changes from previous commits. 2019-06-14 18:58:32 +03:00
librustc_interface Run rustfmt --file-lines ... for changes from previous commits. 2019-06-14 18:58:32 +03:00
librustc_lint Separate librustc_lint module 2019-06-16 14:17:01 +03:00
librustc_llvm Pass LLVM linker flags to librustc_llvm build 2019-06-10 19:50:34 -07:00
librustc_lsan
librustc_macros Unify all uses of 'gcx and 'tcx. 2019-06-14 18:58:23 +03:00
librustc_metadata Separate librustc_metadata module 2019-06-16 14:17:01 +03:00
librustc_mir Auto merge of #60730 - matthewjasper:optimize-false-edges, r=pnkfelix 2019-06-16 09:30:34 +00:00
librustc_msan
librustc_passes Unify all uses of 'gcx and 'tcx. 2019-06-14 18:58:23 +03:00
librustc_plugin Unify all uses of 'gcx and 'tcx. 2019-06-14 18:58:23 +03:00
librustc_privacy Run rustfmt --file-lines ... for changes from previous commits. 2019-06-14 18:58:32 +03:00
librustc_resolve Rollup merge of #61813 - matthewjasper:remove-unnecessary-symbol-ops, r=petrochenkov 2019-06-15 17:45:02 +02:00
librustc_save_analysis Unify all uses of 'gcx and 'tcx. 2019-06-14 18:58:23 +03:00
librustc_target Rollup merge of #61844 - AaronKutch:master, r=Centril 2019-06-15 17:45:06 +02:00
librustc_traits Auto merge of #61754 - nikomatsakis:trait-caching-perf-3, r=pnkfelix 2019-06-16 14:58:05 +00:00
librustc_tsan
librustc_typeck Rollup merge of #61866 - sinkuu:redundant_clone, r=petrochenkov 2019-06-16 06:05:18 +02:00
librustdoc Fix tidy 2019-06-16 14:17:21 +03:00
libserialize Separate libserialize module 2019-06-16 14:17:01 +03:00
libstd make sure we use cfg-if as a std dependency 2019-06-14 11:01:28 +02:00
libsyntax Auto merge of #61347 - Centril:stabilize-underscore_const_names, r=petrochenkov 2019-06-16 20:33:55 +00:00
libsyntax_ext Separate libsyntax_ext module 2019-06-16 14:17:01 +03:00
libsyntax_pos Auto merge of #60730 - matthewjasper:optimize-false-edges, r=pnkfelix 2019-06-16 09:30:34 +00:00
libterm Remove unused #![feature(custom_attribute)]s 2019-06-08 23:55:24 +03:00
libtest Separate libtest module 2019-06-16 14:17:01 +03:00
libunwind std: Remove internal definitions of cfg_if! macro 2019-06-10 10:58:44 -07:00
llvm-emscripten@7f23313edf
llvm-project@788592fb27 Update LLVM 2019-05-31 00:49:06 +01:00
rtstartup
rustc Remove leading newlines 2019-04-22 17:01:33 +01:00
rustllvm Limit internalization in LLVM 8 ThinLTO 2019-04-26 08:58:14 -07:00
stdsimd@4bf456c35e Breaking update of stdsimd 2019-04-22 09:07:25 +02:00
test Auto merge of #61892 - rijenkii:master, r=Centril 2019-06-16 23:25:12 +00:00
tools update miri 2019-06-14 21:58:33 +02:00
.gitignore
README.md
stage0.txt bump nightly to 1.37.0 2019-05-23 12:27:58 +02:00

This directory contains the source code of the rust project, including:

  • rustc and its tests
  • libstd
  • Various submodules for tools, like rustdoc, rls, etc.

For more information on how various parts of the compiler work, see the rustc guide.

There is also useful content in the following READMEs, which are gradually being moved over to the guide: