Initial std library support for NuttX · qinheping/verify-rust-std@c47920f (original) (raw)
``
1
`+
#![stable(feature = "metadata_ext", since = "1.1.0")]
`
``
2
+
``
3
`+
use crate::fs::Metadata;
`
``
4
`+
use crate::sys_common::AsInner;
`
``
5
+
``
6
`+
#[stable(feature = "metadata_ext", since = "1.1.0")]
`
``
7
`+
pub trait MetadataExt {
`
``
8
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
9
`+
fn st_dev(&self) -> u64;
`
``
10
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
11
`+
fn st_ino(&self) -> u64;
`
``
12
`+
#[stable(feature = "metadata_ext", since = "1.1.0")]
`
``
13
`+
fn st_mode(&self) -> u32;
`
``
14
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
15
`+
fn st_nlink(&self) -> u64;
`
``
16
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
17
`+
fn st_uid(&self) -> u32;
`
``
18
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
19
`+
fn st_gid(&self) -> u32;
`
``
20
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
21
`+
fn st_rdev(&self) -> u64;
`
``
22
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
23
`+
fn st_size(&self) -> u64;
`
``
24
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
25
`+
fn st_atime(&self) -> i64;
`
``
26
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
27
`+
fn st_atime_nsec(&self) -> i64;
`
``
28
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
29
`+
fn st_mtime(&self) -> i64;
`
``
30
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
31
`+
fn st_mtime_nsec(&self) -> i64;
`
``
32
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
33
`+
fn st_ctime(&self) -> i64;
`
``
34
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
35
`+
fn st_ctime_nsec(&self) -> i64;
`
``
36
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
37
`+
fn st_blksize(&self) -> u64;
`
``
38
`+
#[stable(feature = "metadata_ext2", since = "1.8.0")]
`
``
39
`+
fn st_blocks(&self) -> u64;
`
``
40
`+
}
`
``
41
+
``
42
`+
#[stable(feature = "metadata_ext", since = "1.1.0")]
`
``
43
`+
impl MetadataExt for Metadata {
`
``
44
`+
fn st_dev(&self) -> u64 {
`
``
45
`+
self.as_inner().as_inner().st_dev as u64
`
``
46
`+
}
`
``
47
`+
fn st_ino(&self) -> u64 {
`
``
48
`+
self.as_inner().as_inner().st_ino as u64
`
``
49
`+
}
`
``
50
`+
fn st_mode(&self) -> u32 {
`
``
51
`+
self.as_inner().as_inner().st_mode as u32
`
``
52
`+
}
`
``
53
`+
fn st_nlink(&self) -> u64 {
`
``
54
`+
self.as_inner().as_inner().st_nlink as u64
`
``
55
`+
}
`
``
56
`+
fn st_uid(&self) -> u32 {
`
``
57
`+
self.as_inner().as_inner().st_uid as u32
`
``
58
`+
}
`
``
59
`+
fn st_gid(&self) -> u32 {
`
``
60
`+
self.as_inner().as_inner().st_gid as u32
`
``
61
`+
}
`
``
62
`+
fn st_rdev(&self) -> u64 {
`
``
63
`+
self.as_inner().as_inner().st_rdev as u64
`
``
64
`+
}
`
``
65
`+
fn st_size(&self) -> u64 {
`
``
66
`+
self.as_inner().as_inner().st_size as u64
`
``
67
`+
}
`
``
68
`+
fn st_atime(&self) -> i64 {
`
``
69
`+
self.as_inner().as_inner().st_atim.tv_sec as i64
`
``
70
`+
}
`
``
71
`+
fn st_atime_nsec(&self) -> i64 {
`
``
72
`+
self.as_inner().as_inner().st_atim.tv_nsec as i64
`
``
73
`+
}
`
``
74
`+
fn st_mtime(&self) -> i64 {
`
``
75
`+
self.as_inner().as_inner().st_mtim.tv_sec as i64
`
``
76
`+
}
`
``
77
`+
fn st_mtime_nsec(&self) -> i64 {
`
``
78
`+
self.as_inner().as_inner().st_mtim.tv_nsec as i64
`
``
79
`+
}
`
``
80
`+
fn st_ctime(&self) -> i64 {
`
``
81
`+
self.as_inner().as_inner().st_ctim.tv_sec as i64
`
``
82
`+
}
`
``
83
`+
fn st_ctime_nsec(&self) -> i64 {
`
``
84
`+
self.as_inner().as_inner().st_ctim.tv_nsec as i64
`
``
85
`+
}
`
``
86
`+
fn st_blksize(&self) -> u64 {
`
``
87
`+
self.as_inner().as_inner().st_blksize as u64
`
``
88
`+
}
`
``
89
`+
fn st_blocks(&self) -> u64 {
`
``
90
`+
self.as_inner().as_inner().st_blocks as u64
`
``
91
`+
}
`
``
92
`+
}
`