Merge Apple std::os
extensions modules into std::os::darwin
· model-checking/verify-rust-std@cfb0556 (original) (raw)
16 files changed
lines changed
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1638,16 +1638,8 @@ fn rename_directory() { | ||
1638 | 1638 | |
1639 | 1639 | #[test] |
1640 | 1640 | fn test_file_times() { |
1641 | -#[cfg(target_os = "ios")] | |
1642 | -use crate::os::ios::fs::FileTimesExt; | |
1643 | -#[cfg(target_os = "macos")] | |
1644 | -use crate::os::macos::fs::FileTimesExt; | |
1645 | -#[cfg(target_os = "tvos")] | |
1646 | -use crate::os::tvos::fs::FileTimesExt; | |
1647 | -#[cfg(target_os = "visionos")] | |
1648 | -use crate::os::visionos::fs::FileTimesExt; | |
1649 | -#[cfg(target_os = "watchos")] | |
1650 | -use crate::os::watchos::fs::FileTimesExt; | |
1641 | +#[cfg(target_vendor = "apple")] | |
1642 | +use crate::os::darwin::fs::FileTimesExt; | |
1651 | 1643 | #[cfg(windows)] |
1652 | 1644 | use crate::os::windows::fs::FileTimesExt; |
1653 | 1645 | |
@@ -1693,16 +1685,7 @@ fn test_file_times() { | ||
1693 | 1685 | #[test] |
1694 | 1686 | #[cfg(target_vendor = "apple")] |
1695 | 1687 | fn test_file_times_pre_epoch_with_nanos() { |
1696 | -#[cfg(target_os = "ios")] | |
1697 | -use crate::os::ios::fs::FileTimesExt; | |
1698 | -#[cfg(target_os = "macos")] | |
1699 | -use crate::os::macos::fs::FileTimesExt; | |
1700 | -#[cfg(target_os = "tvos")] | |
1701 | -use crate::os::tvos::fs::FileTimesExt; | |
1702 | -#[cfg(target_os = "visionos")] | |
1703 | -use crate::os::visionos::fs::FileTimesExt; | |
1704 | -#[cfg(target_os = "watchos")] | |
1705 | -use crate::os::watchos::fs::FileTimesExt; | |
1688 | +use crate::os::darwin::fs::FileTimesExt; | |
1706 | 1689 | |
1707 | 1690 | let tmp = tmpdir(); |
1708 | 1691 | let file = File::create(tmp.join("foo")).unwrap(); |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,12 @@ | ||
1 | -#![stable(feature = "metadata_ext", since = "1.1.0")] | |
1 | +#![allow(dead_code)] | |
2 | 2 | |
3 | 3 | use crate::fs::{self, Metadata}; |
4 | 4 | use crate::sealed::Sealed; |
5 | 5 | use crate::sys_common::{AsInner, AsInnerMut, IntoInner}; |
6 | 6 | use crate::time::SystemTime; |
7 | 7 | |
8 | 8 | #[allow(deprecated)] |
9 | -use crate::os::macos::raw; | |
9 | +use super::raw; | |
10 | 10 | |
11 | 11 | /// OS-specific extensions to [`fs::Metadata`]. |
12 | 12 | /// |
@@ -70,6 +70,7 @@ pub trait MetadataExt { | ||
70 | 70 | fn st_gen(&self) -> u32; |
71 | 71 | #[stable(feature = "metadata_ext2", since = "1.8.0")] |
72 | 72 | fn st_lspare(&self) -> u32; |
73 | +#[cfg(target_os = "macos")] | |
73 | 74 | #[stable(feature = "metadata_ext2", since = "1.8.0")] |
74 | 75 | fn st_qspare(&self) -> [u64; 2]; |
75 | 76 | } |
@@ -143,6 +144,7 @@ impl MetadataExt for Metadata { | ||
143 | 144 | fn st_lspare(&self) -> u32 { |
144 | 145 | self.as_inner().as_inner().st_lspare as u32 |
145 | 146 | } |
147 | +#[cfg(target_os = "macos")] | |
146 | 148 | fn st_qspare(&self) -> [u64; 2] { |
147 | 149 | let qspare = self.as_inner().as_inner().st_qspare; |
148 | 150 | [qspare[0] as u64, qspare[1] as u64] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
1 | +//! Platform-specific extensions to `std` for Darwin / Apple platforms. | |
2 | +//! | |
3 | +//! This is available on the following operating systems: | |
4 | +//! - macOS | |
5 | +//! - iOS | |
6 | +//! - tvOS | |
7 | +//! - watchOS | |
8 | +//! - visionOS | |
9 | +//! | |
10 | +//! Note: This module is called "Darwin" as that's the name of the underlying | |
11 | +//! core OS of the above operating systems, but it should not be confused with | |
12 | +//! the `-darwin` suffix in the `x86_64-apple-darwin` and | |
13 | +//! `aarch64-apple-darwin` target names, which are mostly named that way for | |
14 | +//! legacy reasons. | |
15 | + | |
16 | +pub(crate) mod fs; | |
17 | +// deprecated, but used for public reexport under `std::os::unix::raw`, as | |
18 | +// well as `std::os::macos`/`std::os::ios`, because those modules precede the | |
19 | +// decision to remove these. | |
20 | +pub(super) mod raw; |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,4 @@ | ||
1 | -//! iOS-specific raw type definitions | |
2 | - | |
3 | -#![stable(feature = "raw_ext", since = "1.1.0")] | |
4 | -#![deprecated( | |
5 | - since = "1.8.0", | |
6 | - note = "these type aliases are no longer supported by \ | |
7 | - the standard library, the `libc` crate on \ | |
8 | - crates.io should be used instead for the correct \ | |
9 | - definitions" | |
10 | -)] | |
11 | -#![allow(deprecated)] | |
12 | - | |
1 | +//! Apple-specific raw type definitions | |
13 | 2 | use crate::os::raw::c_long; |
14 | 3 | |
15 | 4 | #[stable(feature = "raw_ext", since = "1.1.0")] |
@@ -35,6 +24,7 @@ pub type pthread_t = usize; | ||
35 | 24 | #[repr(C)] |
36 | 25 | #[derive(Clone)] |
37 | 26 | #[stable(feature = "raw_ext", since = "1.1.0")] |
27 | +#[allow(dead_code)] | |
38 | 28 | pub struct stat { |
39 | 29 | #[stable(feature = "raw_ext", since = "1.1.0")] |
40 | 30 | pub st_dev: i32, |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -2,5 +2,29 @@ | ||
2 | 2 | |
3 | 3 | #![stable(feature = "raw_ext", since = "1.1.0")] |
4 | 4 | |
5 | -pub mod fs; | |
6 | -pub mod raw; | |
5 | +#[stable(feature = "metadata_ext", since = "1.1.0")] | |
6 | +pub mod fs { | |
7 | +#[doc(inline)] | |
8 | +#[stable(feature = "file_set_times", since = "1.75.0")] | |
9 | +pub use crate::os::darwin::fs::FileTimesExt; | |
10 | + | |
11 | +#[doc(inline)] | |
12 | +#[stable(feature = "metadata_ext", since = "1.1.0")] | |
13 | +pub use crate::os::darwin::fs::MetadataExt; | |
14 | +} | |
15 | + | |
16 | +/// iOS-specific raw type definitions | |
17 | +#[stable(feature = "raw_ext", since = "1.1.0")] | |
18 | +#[deprecated( | |
19 | + since = "1.8.0", | |
20 | + note = "these type aliases are no longer supported by \ | |
21 | + the standard library, the `libc` crate on \ | |
22 | + crates.io should be used instead for the correct \ | |
23 | + definitions" | |
24 | +)] | |
25 | +#[allow(deprecated)] | |
26 | +pub mod raw { | |
27 | +#[doc(inline)] | |
28 | +#[stable(feature = "raw_ext", since = "1.1.0")] | |
29 | +pub use crate::os::darwin::raw::*; | |
30 | +} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -2,5 +2,29 @@ | ||
2 | 2 | |
3 | 3 | #![stable(feature = "raw_ext", since = "1.1.0")] |
4 | 4 | |
5 | -pub mod fs; | |
6 | -pub mod raw; | |
5 | +#[stable(feature = "metadata_ext", since = "1.1.0")] | |
6 | +pub mod fs { | |
7 | +#[doc(inline)] | |
8 | +#[stable(feature = "file_set_times", since = "1.75.0")] | |
9 | +pub use crate::os::darwin::fs::FileTimesExt; | |
10 | + | |
11 | +#[doc(inline)] | |
12 | +#[stable(feature = "metadata_ext", since = "1.1.0")] | |
13 | +pub use crate::os::darwin::fs::MetadataExt; | |
14 | +} | |
15 | + | |
16 | +/// macOS-specific raw type definitions | |
17 | +#[stable(feature = "raw_ext", since = "1.1.0")] | |
18 | +#[deprecated( | |
19 | + since = "1.8.0", | |
20 | + note = "these type aliases are no longer supported by \ | |
21 | + the standard library, the `libc` crate on \ | |
22 | + crates.io should be used instead for the correct \ | |
23 | + definitions" | |
24 | +)] | |
25 | +#[allow(deprecated)] | |
26 | +pub mod raw { | |
27 | +#[doc(inline)] | |
28 | +#[stable(feature = "raw_ext", since = "1.1.0")] | |
29 | +pub use crate::os::darwin::raw::*; | |
30 | +} |