rust/src
Tyler Mandry 11ff32f9ec
Rollup merge of #76206 - CDirkx:const-ipv6, r=ecstatic-morse
Make all methods of `std::net::Ipv6Addr` const

Make the following methods of `std::net::Ipv6Addr` unstable const under the `const_ipv6` feature:
- `segments`
- `is_unspecified`
- `is_loopback`
- `is_global` (unstable)
- `is_unique_local`
- `is_unicast_link_local_strict`
- `is_documentation`
- `multicast_scope`
- `is_multicast`
- `to_ipv4_mapped`
- `to_ipv4`

This would make all methods of `Ipv6Addr` const.

Changed the implementation of `is_unspecified` and `is_loopback` to use a `match` instead of `==`, all other methods did not require a change.

All these methods are dependent on `segments`, the current implementation of which requires unstable `const_fn_transmute` ([PR#75085](https://github.com/rust-lang/rust/pull/75085)).

Part of #76205
2020-09-01 18:24:41 -07:00
..
bootstrap Move ninja requirements to a dynamic check, when actually building 2020-09-01 10:13:56 -04:00
build_helper cleanup: Remove duplicate library names from Cargo.tomls 2020-08-30 22:57:54 +03:00
ci Auto merge of #74922 - joshtriplett:ninja-by-default, r=Mark-Simulacrum 2020-08-29 06:08:37 +00:00
doc Stabilise link-self-contained option 2020-08-31 15:13:31 +02:00
etc Fix loading pretty-printers in rust-lldb script 2020-08-28 09:29:45 +03:00
librustc_llvm cleanup: Remove duplicate library names from Cargo.tomls 2020-08-30 22:57:54 +03:00
librustdoc Use "Fira Sans" for crate list font 2020-09-01 13:41:56 -07:00
llvm-project@45790d7949 Upgrade to LLVM 11 (rc2) 2020-08-22 13:44:54 -07:00
rustllvm Write coverage filenames in Version3 format 2020-08-22 13:44:54 -07:00
test Rollup merge of #76206 - CDirkx:const-ipv6, r=ecstatic-morse 2020-09-01 18:24:41 -07:00
tools Rollup merge of #76132 - Aaron1011:mac-call-stmt, r=petrochenkov 2020-09-01 18:24:33 -07:00
README.md Update README.md 2020-08-30 13:40:11 -05:00
stage0.txt bump version to 1.48 2020-08-26 10:16:59 +02:00

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

  • The test suite
  • The bootstrapping build system
  • Various submodules for tools, like rustdoc, rls, etc.

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