Rollup merge of #45470 - GuillaumeGomez:unix-metadata-ext, r=QuietMisdreavus
add missing docs for MetadataExt r? @rust-lang/docs
This commit is contained in:
commit
8074361f46
@ -215,36 +215,282 @@ impl OpenOptionsExt for OpenOptions {
|
||||
// casts and rely on manual lowering to `stat` if the raw type is desired.
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
pub trait MetadataExt {
|
||||
/// Returns the ID of the device containing the file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let dev_id = meta.dev();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn dev(&self) -> u64;
|
||||
/// Returns the inode number.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let inode = meta.ino();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn ino(&self) -> u64;
|
||||
/// Returns the rights applied to this file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let mode = meta.mode();
|
||||
/// let user_has_write_access = mode & 0o200;
|
||||
/// let user_has_read_write_access = mode & 0o600;
|
||||
/// let group_has_read_access = mode & 0o040;
|
||||
/// let others_have_exec_access = mode & 0o001;
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn mode(&self) -> u32;
|
||||
/// Returns the number of hard links pointing to this file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let nb_hard_links = meta.nlink();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn nlink(&self) -> u64;
|
||||
/// Returns the user ID of the owner of this file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let user_id = meta.uid();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn uid(&self) -> u32;
|
||||
/// Returns the group ID of the owner of this file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let group_id = meta.gid();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn gid(&self) -> u32;
|
||||
/// Returns the device ID of this file (if it is a special one).
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let device_id = meta.rdev();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn rdev(&self) -> u64;
|
||||
/// Returns the total size of this file in bytes.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let file_size = meta.size();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn size(&self) -> u64;
|
||||
/// Returns the time of the last access to the file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let last_access_time = meta.atime();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn atime(&self) -> i64;
|
||||
/// Returns the time of the last access to the file in nanoseconds.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let nano_last_access_time = meta.atime_nsec();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn atime_nsec(&self) -> i64;
|
||||
/// Returns the time of the last modification of the file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let last_modification_time = meta.mtime();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn mtime(&self) -> i64;
|
||||
/// Returns the time of the last modification of the file in nanoseconds.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let nano_last_modification_time = meta.mtime_nsec();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn mtime_nsec(&self) -> i64;
|
||||
/// Returns the time of the last status change of the file.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let last_status_change_time = meta.ctime();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn ctime(&self) -> i64;
|
||||
/// Returns the time of the last status change of the file in nanoseconds.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let nano_last_status_change_time = meta.ctime_nsec();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn ctime_nsec(&self) -> i64;
|
||||
/// Returns the blocksize for filesystem I/O.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let blocksize = meta.blksize();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn blksize(&self) -> u64;
|
||||
/// Returns the number of blocks allocated to the file, in 512-byte units.
|
||||
///
|
||||
/// Please note that this may be smaller than `st_size / 512` when the file has holes.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::fs;
|
||||
/// use std::os::unix::fs::MetadataExt;
|
||||
///
|
||||
/// # use std::io;
|
||||
/// # fn f() -> io::Result<()> {
|
||||
/// let meta = fs::metadata("some_file")?;
|
||||
/// let blocks = meta.blocks();
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[stable(feature = "metadata_ext", since = "1.1.0")]
|
||||
fn blocks(&self) -> u64;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user