Skip to main content

libc/new/glibc/sysdeps/unix/linux/bits/
statvfs.rs

1//! Header: `sysdeps/unix/sysv/linux/bits/statvfs.h`
2
3use crate::prelude::*;
4
5#[allow(clippy :: manual_non_exhaustive)]
#[repr(C)]
#[allow(deprecated)]
pub struct statvfs {
    pub f_bsize: c_ulong,
    pub f_frsize: c_ulong,
    pub f_blocks: crate::fsblkcnt_t,
    pub f_bfree: crate::fsblkcnt_t,
    pub f_bavail: crate::fsblkcnt_t,
    pub f_files: crate::fsfilcnt_t,
    pub f_ffree: crate::fsfilcnt_t,
    pub f_favail: crate::fsfilcnt_t,
    pub f_fsid: c_ulong,
    pub f_flag: c_ulong,
    pub f_namemax: c_ulong,
    pub f_type: c_uint,
    __f_spare: Padding<[c_int; 5]>,
    __non_exhaustive: (),
}
#[automatically_derived]
#[doc(hidden)]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
unsafe impl ::core::clone::TrivialClone for statvfs { }
#[automatically_derived]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
impl ::core::clone::Clone for statvfs {
    #[inline]
    fn clone(&self) -> Self {
        let _: ::core::clone::AssertParamIsClone<c_ulong>;
        let _: ::core::clone::AssertParamIsClone<crate::fsblkcnt_t>;
        let _: ::core::clone::AssertParamIsClone<crate::fsblkcnt_t>;
        let _: ::core::clone::AssertParamIsClone<crate::fsblkcnt_t>;
        let _: ::core::clone::AssertParamIsClone<crate::fsfilcnt_t>;
        let _: ::core::clone::AssertParamIsClone<crate::fsfilcnt_t>;
        let _: ::core::clone::AssertParamIsClone<crate::fsfilcnt_t>;
        let _: ::core::clone::AssertParamIsClone<c_uint>;
        let _: ::core::clone::AssertParamIsClone<Padding<[c_int; 5]>>;
        let _: ::core::clone::AssertParamIsClone<()>;
        *self
    }
}
#[automatically_derived]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
impl ::core::marker::Copy for statvfs { }
#[automatically_derived]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
impl ::core::fmt::Debug for statvfs {
    #[inline]
    fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
        let names: &'static _ =
            &["f_bsize", "f_frsize", "f_blocks", "f_bfree", "f_bavail",
                        "f_files", "f_ffree", "f_favail", "f_fsid", "f_flag",
                        "f_namemax", "f_type", "__f_spare", "__non_exhaustive"];
        let values: &[&dyn ::core::fmt::Debug] =
            &[&self.f_bsize, &self.f_frsize, &self.f_blocks, &self.f_bfree,
                        &self.f_bavail, &self.f_files, &self.f_ffree,
                        &self.f_favail, &self.f_fsid, &self.f_flag, &self.f_namemax,
                        &self.f_type, &self.__f_spare, &&self.__non_exhaustive];
        ::core::fmt::Formatter::debug_struct_fields_finish(f, "statvfs",
            names, values)
    }
}
#[allow(deprecated)]
impl ::core::default::Default for statvfs {
    #[allow(unused_doc_comments)]
    fn default() -> Self {
        Self {
            f_bsize: ::core::default::Default::default(),
            f_frsize: ::core::default::Default::default(),
            f_blocks: ::core::default::Default::default(),
            f_bfree: ::core::default::Default::default(),
            f_bavail: ::core::default::Default::default(),
            f_files: ::core::default::Default::default(),
            f_ffree: ::core::default::Default::default(),
            f_favail: ::core::default::Default::default(),
            f_fsid: ::core::default::Default::default(),
            f_flag: ::core::default::Default::default(),
            f_namemax: ::core::default::Default::default(),
            f_type: ::core::default::Default::default(),
            __f_spare: ::core::default::Default::default(),
            __non_exhaustive: (),
        }
    }
}
#[allow(clippy :: manual_non_exhaustive)]
#[repr(C)]
#[allow(deprecated)]
pub struct statvfs64 {
    pub f_bsize: c_ulong,
    pub f_frsize: c_ulong,
    pub f_blocks: u64,
    pub f_bfree: u64,
    pub f_bavail: u64,
    pub f_files: u64,
    pub f_ffree: u64,
    pub f_favail: u64,
    pub f_fsid: c_ulong,
    pub f_flag: c_ulong,
    pub f_namemax: c_ulong,
    pub f_type: c_uint,
    __f_spare: Padding<[c_int; 5]>,
    __non_exhaustive: (),
}
#[automatically_derived]
#[doc(hidden)]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
unsafe impl ::core::clone::TrivialClone for statvfs64 { }
#[automatically_derived]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
impl ::core::clone::Clone for statvfs64 {
    #[inline]
    fn clone(&self) -> Self {
        let _: ::core::clone::AssertParamIsClone<c_ulong>;
        let _: ::core::clone::AssertParamIsClone<u64>;
        let _: ::core::clone::AssertParamIsClone<c_uint>;
        let _: ::core::clone::AssertParamIsClone<Padding<[c_int; 5]>>;
        let _: ::core::clone::AssertParamIsClone<()>;
        *self
    }
}
#[automatically_derived]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
impl ::core::marker::Copy for statvfs64 { }
#[automatically_derived]
#[allow(clippy :: manual_non_exhaustive)]
#[allow(deprecated)]
impl ::core::fmt::Debug for statvfs64 {
    #[inline]
    fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
        let names: &'static _ =
            &["f_bsize", "f_frsize", "f_blocks", "f_bfree", "f_bavail",
                        "f_files", "f_ffree", "f_favail", "f_fsid", "f_flag",
                        "f_namemax", "f_type", "__f_spare", "__non_exhaustive"];
        let values: &[&dyn ::core::fmt::Debug] =
            &[&self.f_bsize, &self.f_frsize, &self.f_blocks, &self.f_bfree,
                        &self.f_bavail, &self.f_files, &self.f_ffree,
                        &self.f_favail, &self.f_fsid, &self.f_flag, &self.f_namemax,
                        &self.f_type, &self.__f_spare, &&self.__non_exhaustive];
        ::core::fmt::Formatter::debug_struct_fields_finish(f, "statvfs64",
            names, values)
    }
}
#[allow(deprecated)]
impl ::core::default::Default for statvfs64 {
    #[allow(unused_doc_comments)]
    fn default() -> Self {
        Self {
            f_bsize: ::core::default::Default::default(),
            f_frsize: ::core::default::Default::default(),
            f_blocks: ::core::default::Default::default(),
            f_bfree: ::core::default::Default::default(),
            f_bavail: ::core::default::Default::default(),
            f_files: ::core::default::Default::default(),
            f_ffree: ::core::default::Default::default(),
            f_favail: ::core::default::Default::default(),
            f_fsid: ::core::default::Default::default(),
            f_flag: ::core::default::Default::default(),
            f_namemax: ::core::default::Default::default(),
            f_type: ::core::default::Default::default(),
            __f_spare: ::core::default::Default::default(),
            __non_exhaustive: (),
        }
    }
}s2! {
6    pub struct statvfs {
7        pub f_bsize: c_ulong,
8        pub f_frsize: c_ulong,
9        pub f_blocks: crate::fsblkcnt_t,
10        pub f_bfree: crate::fsblkcnt_t,
11        pub f_bavail: crate::fsblkcnt_t,
12        pub f_files: crate::fsfilcnt_t,
13        pub f_ffree: crate::fsfilcnt_t,
14        pub f_favail: crate::fsfilcnt_t,
15        pub f_fsid: c_ulong,
16        // Mirrors `_STATVFSBUF_F_UNUSED` in the header. x32 is excluded because
17        // its `__SYSCALL_WORDSIZE` is 64, aarch64 because glibc always sets
18        // `__WORDSIZE` to 64.
19        #[cfg(all(
20            target_pointer_width = "32",
21            not(any(target_arch = "x86_64", target_arch = "aarch64"))
22        ))]
23        __f_unused: Padding<c_int>,
24        pub f_flag: c_ulong,
25        pub f_namemax: c_ulong,
26        pub f_type: c_uint,
27        __f_spare: Padding<[c_int; 5]>,
28    }
29
30    pub struct statvfs64 {
31        pub f_bsize: c_ulong,
32        pub f_frsize: c_ulong,
33        pub f_blocks: u64,
34        pub f_bfree: u64,
35        pub f_bavail: u64,
36        pub f_files: u64,
37        pub f_ffree: u64,
38        pub f_favail: u64,
39        pub f_fsid: c_ulong,
40        // Mirrors `_STATVFSBUF_F_UNUSED` in the header. x32 is excluded because
41        // its `__SYSCALL_WORDSIZE` is 64, aarch64 because glibc always sets
42        // `__WORDSIZE` to 64.
43        #[cfg(all(
44            target_pointer_width = "32",
45            not(any(target_arch = "x86_64", target_arch = "aarch64"))
46        ))]
47        __f_unused: Padding<c_int>,
48        pub f_flag: c_ulong,
49        pub f_namemax: c_ulong,
50        pub f_type: c_uint,
51        __f_spare: Padding<[c_int; 5]>,
52    }
53}