rust/library/std/src
Matthias Krüger afd6f5c478
Rollup merge of #93562 - sunfishcode:sunfishcode/io-docs, r=joshtriplett
Update the documentation for `{As,Into,From}Raw{Fd,Handle,Socket}`.

This change weakens the descriptions of the
`{as,into,from}_raw_{fd,handle,socket}` descriptions from saying that
they *do* express ownership relations to say that they are *typically used*
in ways that express ownership relations. This is needed since, for
example, std's own [`RawFd`] implements `{As,From,Into}Fd` without any of
the ownership relationships.

This adds proper `# Safety` comments to `from_raw_{fd,handle,socket}`,
adds the requirement that raw handles be not opened with the
`FILE_FLAG_OVERLAPPED` flag, and merges the `OwnedHandle::from_raw_handle`
comment into the main `FromRawHandle::from_raw_handle` comment.

And, this changes `HandleOrNull` and `HandleOrInvalid` to not implement
`FromRawHandle`, since they are intended for limited use in FFI situations,
and not for generic use, and they have constraints that are stronger than
the those of `FromRawHandle`.

[`RawFd`]: https://doc.rust-lang.org/stable/std/os/unix/io/type.RawFd.html
2022-03-03 11:02:49 +01:00
..
backtrace Add Frames iterator for Backtrace 2021-01-23 11:56:33 -06:00
collections Switch bootstrap cfgs 2022-02-25 08:00:52 -05:00
env std: move "mod tests/benches" to separate files 2020-08-31 02:56:59 +00:00
error silence tidy errors 2022-01-07 13:59:27 -08:00
f32 Implement IEEE 754-2019 minimun and maximum functions for f32/f64 2021-11-20 10:14:03 +01:00
f64 Remove fNN::lerp - consensus unlikely 2021-10-25 22:44:41 -05:00
ffi Rollup merge of #93979 - SUPERCILEX:debug_check, r=dtolnay 2022-02-19 06:45:30 +01:00
fs fs: Add a regression test for #93384 2022-01-29 16:37:21 -05:00
io word wrpa 2022-02-24 00:37:06 +01:00
lazy Upgrade wasm32 image to Ubuntu 20.04 2021-02-06 13:05:56 +01:00
net Hide Repr details from io::Error, and rework io::Error::new_const. 2022-02-04 18:47:29 -08:00
num rustc_expand: Mark inner #![test] attributes as soft-unstable 2020-11-20 19:35:03 +03:00
os Rollup merge of #93562 - sunfishcode:sunfishcode/io-docs, r=joshtriplett 2022-03-03 11:02:49 +01:00
panic review: fix nits and move panic safety tests to the correct place 2020-09-25 23:10:24 +02:00
path Auto merge of #91673 - ChrisDenton:path-absolute, r=Mark-Simulacrum 2022-02-13 12:03:52 +00:00
prelude update cfg(bootstrap)s 2022-01-28 15:01:07 +01:00
process Rollup merge of #92208 - ChrisDenton:win-bat-cmd, r=dtolnay 2021-12-23 00:28:56 +01:00
sync update cfg(bootstrap)s 2022-01-28 15:01:07 +01:00
sys Rollup merge of #93663 - sunfishcode:sunfishcode/as-raw-name, r=joshtriplett 2022-03-03 01:09:10 +01:00
sys_common Remove assertion on output length for getsockopt. 2022-02-20 21:27:36 -08:00
thread Make TLS __getit #[inline(always)] on non-Windows 2022-02-25 15:21:27 -05:00
time make Instant::{duration_since, elapsed, sub} saturating and remove workarounds 2022-02-13 01:04:55 +01:00
alloc.rs Rename rterr to rtprintpanic 2021-05-19 15:52:09 +02:00
ascii.rs Convert many files to intra-doc links 2020-09-02 17:37:40 -04:00
backtrace.rs Change Backtrace::enabled atomic from SeqCst to Relaxed 2021-12-20 12:34:10 -08:00
env.rs Add missing platform-specific information on current_dir and set_current_dir 2022-02-11 16:33:02 +01:00
error.rs Improve Duration::try_from_secs_f32/64 accuracy by directly processing exponent and mantissa 2022-01-26 18:14:25 +03:00
f32.rs Remove fNN::lerp - consensus unlikely 2021-10-25 22:44:41 -05:00
f64.rs Remove fNN::lerp - consensus unlikely 2021-10-25 22:44:41 -05:00
fs.rs Rollup merge of #93206 - ChrisDenton:ntopenfile, r=nagisa 2022-02-08 16:40:49 +01:00
keyword_docs.rs Rollup merge of #91192 - r00ster91:futuredocs, r=GuillaumeGomez 2022-02-21 19:36:46 +01:00
lazy.rs Add #[must_use] to core and std constructors 2021-10-10 02:44:26 -04:00
lib.rs Provide C FFI types via core::ffi, not just in std 2022-03-01 17:16:05 -08:00
macros.rs Add diagnostic items for macros 2022-01-06 14:59:33 +00:00
num.rs Add Saturating type (based on Wrapping type) 2021-08-10 19:27:01 +02:00
panic.rs Configure panic hook backtrace behavior 2022-02-02 13:46:42 -05:00
panicking.rs Configure panic hook backtrace behavior 2022-02-02 13:46:42 -05:00
path.rs Rollup merge of #93976 - SUPERCILEX:separator_str, r=yaahc 2022-02-17 23:00:58 +01:00
primitive_docs.rs Fix annotation of code blocks 2022-02-01 21:44:53 +00:00
process.rs Rollup merge of #89869 - kpreid:from-doc, r=yaahc 2022-02-17 06:29:57 +01:00
rt.rs Change Termination::report return type to ExitCode 2022-01-28 12:53:36 -08:00
time.rs Capitalize "Rust" 2022-02-13 01:06:36 +01:00