diff options
| author | bors <bors@rust-lang.org> | 2015-06-12 21:31:37 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-06-12 21:31:37 +0000 |
| commit | 50ab23ddbd39d797dde46288af0ae9d29784e7a3 (patch) | |
| tree | f716ad4c0e3fb8e8dc90b4b807cf7f81a812cfaf /src/libstd/os | |
| parent | 85b5338e3444de1c46ac8cf9bf20ae4b31b9f905 (diff) | |
| parent | ec68c4a8351e65ec6e2d349aa103a457494ad814 (diff) | |
| download | rust-50ab23ddbd39d797dde46288af0ae9d29784e7a3.tar.gz rust-50ab23ddbd39d797dde46288af0ae9d29784e7a3.zip | |
Auto merge of #25844 - alexcrichton:stabilize-fs-features, r=aturon
This commit stabilizes the following APIs, slating them all to be cherry-picked
into the 1.1 release.
* fs::FileType (and transitively the derived trait implementations)
* fs::Metadata::file_type
* fs::FileType::is_dir
* fs::FileType::is_file
* fs::FileType::is_symlink
* fs::DirEntry::metadata
* fs::DirEntry::file_type
* fs::DirEntry::file_name
* fs::set_permissions
* fs::symlink_metadata
* os::raw::{self, *}
* os::{android, bitrig, linux, ...}::raw::{self, *}
* os::{android, bitrig, linux, ...}::fs::MetadataExt
* os::{android, bitrig, linux, ...}::fs::MetadataExt::as_raw_stat
* os::unix::fs::PermissionsExt
* os::unix::fs::PermissionsExt::mode
* os::unix::fs::PermissionsExt::set_mode
* os::unix::fs::PermissionsExt::from_mode
* os::unix::fs::OpenOptionsExt
* os::unix::fs::OpenOptionsExt::mode
* os::unix::fs::DirEntryExt
* os::unix::fs::DirEntryExt::ino
* os::windows::fs::MetadataExt
* os::windows::fs::MetadataExt::file_attributes
* os::windows::fs::MetadataExt::creation_time
* os::windows::fs::MetadataExt::last_access_time
* os::windows::fs::MetadataExt::last_write_time
* os::windows::fs::MetadataExt::file_size
The `os::unix::fs::Metadata` structure was also removed entirely, moving all of
its associated methods into the `os::unix::fs::MetadataExt` trait instead. The
methods are all marked as `#[stable]` still.
As some minor cleanup, some deprecated and unstable fs apis were also removed:
* File::path
* Metadata::accessed
* Metadata::modified
Features that were explicitly left unstable include:
* fs::WalkDir - the semantics of this were not considered in the recent fs
expansion RFC.
* fs::DirBuilder - it's still not 100% clear if the naming is right here and if
the set of functionality exposed is appropriate.
* fs::canonicalize - the implementation on Windows here is specifically in
question as it always returns a verbatim path. Additionally the Unix
implementation is susceptible to buffer overflows on long paths unfortunately.
* fs::PathExt - as this is just a convenience trait, it is not stabilized at
this time.
* fs::set_file_times - this funciton is still waiting on a time abstraction.
Diffstat (limited to 'src/libstd/os')
| -rw-r--r-- | src/libstd/os/android/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/android/raw.rs | 59 | ||||
| -rw-r--r-- | src/libstd/os/bitrig/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/bitrig/raw.rs | 41 | ||||
| -rw-r--r-- | src/libstd/os/dragonfly/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/dragonfly/raw.rs | 43 | ||||
| -rw-r--r-- | src/libstd/os/freebsd/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/freebsd/raw.rs | 34 | ||||
| -rw-r--r-- | src/libstd/os/ios/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/ios/raw.rs | 41 | ||||
| -rw-r--r-- | src/libstd/os/linux/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/linux/raw.rs | 135 | ||||
| -rw-r--r-- | src/libstd/os/macos/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/macos/raw.rs | 41 | ||||
| -rw-r--r-- | src/libstd/os/nacl/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/nacl/raw.rs | 135 | ||||
| -rw-r--r-- | src/libstd/os/openbsd/mod.rs | 3 | ||||
| -rw-r--r-- | src/libstd/os/openbsd/raw.rs | 41 | ||||
| -rw-r--r-- | src/libstd/os/raw.rs | 43 |
19 files changed, 518 insertions, 122 deletions
diff --git a/src/libstd/os/android/mod.rs b/src/libstd/os/android/mod.rs index a94abba5d12..1947bebb947 100644 --- a/src/libstd/os/android/mod.rs +++ b/src/libstd/os/android/mod.rs @@ -10,10 +10,11 @@ //! Android-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/android/raw.rs b/src/libstd/os/android/raw.rs index ea80151623b..e5e89ad800a 100644 --- a/src/libstd/os/android/raw.rs +++ b/src/libstd/os/android/raw.rs @@ -10,6 +10,8 @@ //! Android-specific raw type definitions +#![stable(feature = "raw_ext", since = "1.1.0")] + #[doc(inline)] pub use self::arch::{dev_t, mode_t, blkcnt_t, blksize_t, ino_t, nlink_t, off_t, stat, time_t}; @@ -18,36 +20,64 @@ mod arch { use os::raw::{c_uint, c_uchar, c_ulonglong, c_longlong, c_ulong}; use os::unix::raw::{uid_t, gid_t}; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u16; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u16; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i32; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: c_ulonglong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad0: [c_uchar; 4], + #[stable(feature = "raw_ext", since = "1.1.0")] pub __st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: c_uint, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: c_uint, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: c_ulonglong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad3: [c_uchar; 4], + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: c_longlong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: c_ulonglong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: c_ulonglong, } @@ -59,37 +89,64 @@ mod arch { use os::raw::{c_uchar, c_ulong}; use os::unix::raw::{uid_t, gid_t}; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad0: [c_uchar; 4], + #[stable(feature = "raw_ext", since = "1.1.0")] pub __st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad3: [c_uchar; 4], + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, } - } diff --git a/src/libstd/os/bitrig/mod.rs b/src/libstd/os/bitrig/mod.rs index 1fe5fdd4e14..2e9f1d33951 100644 --- a/src/libstd/os/bitrig/mod.rs +++ b/src/libstd/os/bitrig/mod.rs @@ -10,10 +10,11 @@ //! Bitrig-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/bitrig/raw.rs b/src/libstd/os/bitrig/raw.rs index aebc21aa718..2427a4e4092 100644 --- a/src/libstd/os/bitrig/raw.rs +++ b/src/libstd/os/bitrig/raw.rs @@ -10,39 +10,62 @@ //! Bitrig-specific raw type definitions +#![stable(feature = "raw_ext", since = "1.1.0")] + use os::raw::c_long; use os::unix::raw::{uid_t, gid_t}; -pub type blkcnt_t = i64; -pub type blksize_t = u32; -pub type dev_t = i32; -pub type fflags_t = u32; // type not declared, but struct stat have u_int32_t -pub type ino_t = u64; -pub type mode_t = u32; -pub type nlink_t = u32; -pub type off_t = i64; -pub type time_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = i32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type fflags_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] +#[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_flags: fflags_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gen: u32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime_nsec: c_long, } diff --git a/src/libstd/os/dragonfly/mod.rs b/src/libstd/os/dragonfly/mod.rs index d5c7c581733..79ccb8a0458 100644 --- a/src/libstd/os/dragonfly/mod.rs +++ b/src/libstd/os/dragonfly/mod.rs @@ -10,10 +10,11 @@ //! Dragonfly-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/dragonfly/raw.rs b/src/libstd/os/dragonfly/raw.rs index 86522cc1e79..41e8f9b0567 100644 --- a/src/libstd/os/dragonfly/raw.rs +++ b/src/libstd/os/dragonfly/raw.rs @@ -10,41 +10,66 @@ //! Dragonfly-specific raw type definitions +#![stable(feature = "raw_ext", since = "1.1.0")] + use os::raw::c_long; use os::unix::raw::{uid_t, gid_t}; -pub type blkcnt_t = i64; -pub type blksize_t = u32; -pub type dev_t = u32; -pub type fflags_t = u32; -pub type ino_t = u64; -pub type mode_t = u16; -pub type nlink_t = u16; -pub type off_t = i64; -pub type time_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type fflags_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] +#[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_padding1: u16, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_flags: fflags_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gen: uint32_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_lspare: int32_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_qspare1: int64_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_qspare2: int64_t, } diff --git a/src/libstd/os/freebsd/mod.rs b/src/libstd/os/freebsd/mod.rs index 28c9f8321f8..947826b8160 100644 --- a/src/libstd/os/freebsd/mod.rs +++ b/src/libstd/os/freebsd/mod.rs @@ -10,10 +10,11 @@ //! FreeBSD-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/freebsd/raw.rs b/src/libstd/os/freebsd/raw.rs index a3b95738a1a..38e31a3c5ac 100644 --- a/src/libstd/os/freebsd/raw.rs +++ b/src/libstd/os/freebsd/raw.rs @@ -10,41 +10,75 @@ //! FreeBSD-specific raw type definitions +#![stable(feature = "raw_ext", since = "1.1.0")] + use os::raw::c_long; use os::unix::raw::{uid_t, gid_t}; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type fflags_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] +#[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_flags: fflags_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gen: u32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_lspare: i32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused: [u8; 2], } diff --git a/src/libstd/os/ios/mod.rs b/src/libstd/os/ios/mod.rs index dd2878c6e38..e2fe2e8a9ba 100644 --- a/src/libstd/os/ios/mod.rs +++ b/src/libstd/os/ios/mod.rs @@ -10,10 +10,11 @@ //! iOS-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/ios/raw.rs b/src/libstd/os/ios/raw.rs index a66e01b2c39..a9803f50b7b 100644 --- a/src/libstd/os/ios/raw.rs +++ b/src/libstd/os/ios/raw.rs @@ -10,40 +10,65 @@ //! iOS-specific raw type definitions +#![stable(feature = "raw_ext", since = "1.1.0")] + use os::raw::c_long; use os::unix::raw::{uid_t, gid_t}; -pub type blkcnt_t = i64; -pub type blksize_t = i32; -pub type dev_t = i32; -pub type ino_t = u64; -pub type mode_t = u16; -pub type nlink_t = u16; -pub type off_t = i64; -pub type time_t = c_long; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = i32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = c_long; #[repr(C)] +#[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_flags: u32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gen: u32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_lspare: i32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_qspare: [i64; 2], } diff --git a/src/libstd/os/linux/mod.rs b/src/libstd/os/linux/mod.rs index d2f9bcc3bcf..146a74a4550 100644 --- a/src/libstd/os/linux/mod.rs +++ b/src/libstd/os/linux/mod.rs @@ -10,10 +10,11 @@ //! Linux-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/linux/raw.rs b/src/libstd/os/linux/raw.rs index 9589f4cf099..3275ce07b48 100644 --- a/src/libstd/os/linux/raw.rs +++ b/src/libstd/os/linux/raw.rs @@ -10,8 +10,10 @@ //! Linux-specific raw type definitions -pub type dev_t = u64; -pub type mode_t = u32; +#![stable(feature = "raw_ext", since = "1.1.0")] + +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = u64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u32; #[doc(inline)] pub use self::arch::{off_t, ino_t, nlink_t, blksize_t, blkcnt_t, stat, time_t}; @@ -25,34 +27,55 @@ mod arch { use os::raw::{c_long, c_short}; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i32; - pub type blksize_t = i32; - pub type ino_t = u32; - pub type nlink_t = u32; - pub type off_t = i32; - pub type time_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i32; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad1: c_short, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad2: c_short, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused4: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused5: c_long, } } @@ -64,34 +87,55 @@ mod arch { use os::raw::{c_long, c_ulong}; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i32; - pub type blksize_t = i32; - pub type ino_t = u32; - pub type nlink_t = u32; - pub type off_t = i32; - pub type time_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i32; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad1: [c_long; 3], + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad2: [c_long; 2], + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad3: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad5: [c_long; 14], } } @@ -102,33 +146,53 @@ mod arch { use os::raw::{c_long, c_int}; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i64; - pub type blksize_t = i32; - pub type ino_t = u64; - pub type nlink_t = u32; - pub type off_t = i64; - pub type time_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad1: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad2: c_int, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused: [c_int; 2], } } @@ -139,32 +203,51 @@ mod arch { use os::raw::{c_long, c_int}; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i64; - pub type blksize_t = i64; - pub type ino_t = u64; - pub type nlink_t = u64; - pub type off_t = i64; - pub type time_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad0: c_int, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused: [c_long; 3], } } diff --git a/src/libstd/os/macos/mod.rs b/src/libstd/os/macos/mod.rs index 6c96909f382..db3a0e0e64a 100644 --- a/src/libstd/os/macos/mod.rs +++ b/src/libstd/os/macos/mod.rs @@ -10,10 +10,11 @@ //! MacOS-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/macos/raw.rs b/src/libstd/os/macos/raw.rs index 03fcb768c11..dbc1b8c726b 100644 --- a/src/libstd/os/macos/raw.rs +++ b/src/libstd/os/macos/raw.rs @@ -10,40 +10,65 @@ //! MacOS-specific raw type definitions +#![stable(feature = "raw_ext", since = "1.1.0")] + use os::raw::c_long; use os::unix::raw::{uid_t, gid_t}; -pub type blkcnt_t = i64; -pub type blksize_t = i32; -pub type dev_t = i32; -pub type ino_t = u64; -pub type mode_t = u16; -pub type nlink_t = u16; -pub type off_t = i64; -pub type time_t = c_long; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = i32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u16; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = c_long; #[repr(C)] +#[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_flags: u32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gen: u32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_lspare: i32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_qspare: [i64; 2], } diff --git a/src/libstd/os/nacl/mod.rs b/src/libstd/os/nacl/mod.rs index 413bb72f6e1..d481d45404c 100644 --- a/src/libstd/os/nacl/mod.rs +++ b/src/libstd/os/nacl/mod.rs @@ -10,10 +10,11 @@ //! Nacl-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/nacl/raw.rs b/src/libstd/os/nacl/raw.rs index 9defa8301ea..d811b94c847 100644 --- a/src/libstd/os/nacl/raw.rs +++ b/src/libstd/os/nacl/raw.rs @@ -10,8 +10,10 @@ //! Nacl-specific raw type definitions -pub type dev_t = u64; -pub type mode_t = u32; +#![stable(feature = "raw_ext", since = "1.1.0")] + +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = u64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u32; pub use self::arch::{off_t, ino_t, nlink_t, blksize_t, blkcnt_t, stat, time_t}; @@ -24,34 +26,55 @@ mod arch { use os::raw::{c_long, c_short}; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i32; - pub type blksize_t = i32; - pub type ino_t = u32; - pub type nlink_t = u32; - pub type off_t = i32; - pub type time_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i32; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad1: c_short, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad2: c_short, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused4: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused5: c_long, } } @@ -63,34 +86,55 @@ mod arch { use os::raw::c_long; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i32; - pub type blksize_t = i32; - pub type ino_t = u32; - pub type nlink_t = u32; - pub type off_t = i32; - pub type time_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i32; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad1: [c_long; 3], + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: c_ulong, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad2: [c_long; 2], + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad3: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_pad5: [c_long; 14], } } @@ -101,33 +145,53 @@ mod arch { use os::raw::{c_long, c_int}; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i64; - pub type blksize_t = i32; - pub type ino_t = u64; - pub type nlink_t = u32; - pub type off_t = i64; - pub type time_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad1: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad2: c_int, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused: [c_int; 2], } } @@ -138,32 +202,51 @@ mod arch { use os::raw::{c_long, c_int}; use os::unix::raw::{gid_t, uid_t}; - pub type blkcnt_t = i64; - pub type blksize_t = i64; - pub type ino_t = u64; - pub type nlink_t = u64; - pub type off_t = i64; - pub type time_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; + #[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] + #[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __pad0: c_int, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub __unused: [c_long; 3], } } diff --git a/src/libstd/os/openbsd/mod.rs b/src/libstd/os/openbsd/mod.rs index 5654a7a0229..bdb003b877b 100644 --- a/src/libstd/os/openbsd/mod.rs +++ b/src/libstd/os/openbsd/mod.rs @@ -10,10 +10,11 @@ //! OpenBSD-specific definitions -#![unstable(feature = "raw_ext", reason = "recently added API")] +#![stable(feature = "raw_ext", since = "1.1.0")] pub mod raw; pub mod fs { + #![stable(feature = "raw_ext", since = "1.1.0")] pub use sys::fs::MetadataExt; } diff --git a/src/libstd/os/openbsd/raw.rs b/src/libstd/os/openbsd/raw.rs index 0bdba9e3487..79ca901ade7 100644 --- a/src/libstd/os/openbsd/raw.rs +++ b/src/libstd/os/openbsd/raw.rs @@ -10,39 +10,62 @@ //! OpenBSD-specific raw type definitions +#![stable(feature = "raw_ext", since = "1.1.0")] + use os::raw::c_long; use os::unix::raw::{uid_t, gid_t}; -pub type blkcnt_t = i64; -pub type blksize_t = u32; -pub type dev_t = i32; -pub type fflags_t = u32; // type not declared, but struct stat have u_int32_t -pub type ino_t = u64; -pub type mode_t = u32; -pub type nlink_t = u32; -pub type off_t = i64; -pub type time_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blkcnt_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type blksize_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type dev_t = i32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type fflags_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type ino_t = u64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type mode_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type nlink_t = u32; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type off_t = i64; +#[stable(feature = "raw_ext", since = "1.1.0")] pub type time_t = i64; #[repr(C)] +#[stable(feature = "raw_ext", since = "1.1.0")] pub struct stat { + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mode: mode_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_dev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ino: ino_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_nlink: nlink_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_uid: uid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gid: gid_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_rdev: dev_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_atime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_mtime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_ctime_nsec: c_long, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_size: off_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blocks: blkcnt_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_blksize: blksize_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_flags: fflags_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_gen: u32, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime: time_t, + #[stable(feature = "raw_ext", since = "1.1.0")] pub st_birthtime_nsec: c_long, } diff --git a/src/libstd/os/raw.rs b/src/libstd/os/raw.rs index 44f4a1c828b..2de0448a534 100644 --- a/src/libstd/os/raw.rs +++ b/src/libstd/os/raw.rs @@ -10,24 +10,30 @@ //! Raw OS-specific types for the current platform/architecture -#![unstable(feature = "raw_os", reason = "recently added API")] +#![stable(feature = "raw_os", since = "1.1.0")] -#[cfg(target_arch = "aarch64")] pub type c_char = u8; -#[cfg(not(target_arch = "aarch64"))] pub type c_char = i8; -pub type c_schar = i8; -pub type c_uchar = u8; -pub type c_short = i16; -pub type c_ushort = u16; -pub type c_int = i32; -pub type c_uint = u32; -#[cfg(any(target_pointer_width = "32", windows))] pub type c_long = i32; -#[cfg(any(target_pointer_width = "32", windows))] pub type c_ulong = u32; -#[cfg(all(target_pointer_width = "64", not(windows)))] pub type c_long = i64; -#[cfg(all(target_pointer_width = "64", not(windows)))] pub type c_ulong = u64; -pub type c_longlong = i64; -pub type c_ulonglong = u64; -pub type c_float = f32; -pub type c_double = f64; +#[cfg(target_arch = "aarch64")] +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_char = u8; +#[cfg(not(target_arch = "aarch64"))] +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_char = i8; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_schar = i8; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_uchar = u8; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_short = i16; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_ushort = u16; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_int = i32; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_uint = u32; +#[cfg(any(target_pointer_width = "32", windows))] +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_long = i32; +#[cfg(any(target_pointer_width = "32", windows))] +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_ulong = u32; +#[cfg(all(target_pointer_width = "64", not(windows)))] +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_long = i64; +#[cfg(all(target_pointer_width = "64", not(windows)))] +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_ulong = u64; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_longlong = i64; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_ulonglong = u64; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_float = f32; +#[stable(feature = "raw_os", since = "1.1.0")] pub type c_double = f64; /// Type used to construct void pointers for use with C. /// @@ -41,8 +47,11 @@ pub type c_double = f64; // variants, because the compiler complains about the repr attribute // otherwise. #[repr(u8)] +#[stable(feature = "raw_os", since = "1.1.0")] pub enum c_void { + #[unstable(feature = "c_void_variant", reason = "should not have to exist")] #[doc(hidden)] __variant1, + #[unstable(feature = "c_void_variant", reason = "should not have to exist")] #[doc(hidden)] __variant2, } |
