Struct DmiId

Source
pub struct DmiId { /* private fields */ }
Expand description

Provides BIOS, Board, Chassis, Product, & Vendor identifiers

Implementations§

Source§

impl DmiId

Source

pub fn bios_date(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 25)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn bios_vendor(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 26)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn bios_version(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 27)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn board_asset_tag(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 28)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn board_name(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 29)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn board_serial(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 30)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn board_vendor(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 31)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn board_version(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 32)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn chassis_asset_tag(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 33)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn chassis_name(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 34)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn chassis_serial(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 35)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn chassis_vendor(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 36)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn chassis_version(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 37)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn modalias(&self) -> Result<String>

Source

pub fn product_family(&self) -> Result<String>

Source

pub fn product_name(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 38)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn product_serial(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 39)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn product_sku(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 40)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn product_uuid(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 41)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn product_version(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 42)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}
Source

pub fn sys_vendor(&self) -> Result<String>

Examples found in repository?
examples/dmi.rs (line 43)
3fn main() {
4    let dmi = DmiId::default();
5    println!(
6        "BIOS Date: {:?}\n\
7        BIOS Vendor: {:?}\n\
8        BIOS Version: {:?}\n\
9        Board Asset Tag: {:?}\n\
10        Board Name: {:?}\n\
11        Board Serial: {:?}\n\
12        Board Vendor: {:?}\n\
13        Board Version: {:?}\n\
14        Chassis Asset Tag: {:?}\n\
15        Chassis Name: {:?}\n\
16        Chassis Serial: {:?}\n\
17        Chassis Vendor: {:?}\n\
18        Chassis Version: {:?}\n\
19        Product Name: {:?}\n\
20        Product Serial: {:?}\n\
21        Product SKU: {:?}\n\
22        Product UUID: {:?}\n\
23        Product Version: {:?}\n\
24        Sys Vendor: {:?}",
25        dmi.bios_date(),
26        dmi.bios_vendor(),
27        dmi.bios_version(),
28        dmi.board_asset_tag(),
29        dmi.board_name(),
30        dmi.board_serial(),
31        dmi.board_vendor(),
32        dmi.board_version(),
33        dmi.chassis_asset_tag(),
34        dmi.chassis_name(),
35        dmi.chassis_serial(),
36        dmi.chassis_vendor(),
37        dmi.chassis_version(),
38        dmi.product_name(),
39        dmi.product_serial(),
40        dmi.product_sku(),
41        dmi.product_uuid(),
42        dmi.product_version(),
43        dmi.sys_vendor()
44    );
45}

Trait Implementations§

Source§

impl Clone for DmiId

Source§

fn clone(&self) -> DmiId

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for DmiId

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl SysClass for DmiId

Source§

fn class() -> &'static str

Return the class of the sys object, the name of a folder in `/sys/${base}``
Source§

unsafe fn from_path_unchecked(_path: PathBuf) -> Self

Create a sys object from an absolute path without checking path for validity
Source§

fn path(&self) -> &Path

Return the path of the sys object
Source§

fn base() -> &'static str

Sets the base directory, which defaults to class.
Source§

fn dir() -> PathBuf

Return the path to the sys objects, the full path of a folder in /sys/class
Source§

fn from_path(path: &Path) -> Result<Self>

Create a sys object from a path, checking it for validity
Source§

fn all() -> Result<Vec<Self>>

Retrieve all of the object instances of a sys class
Source§

fn iter() -> Box<dyn Iterator<Item = Result<Self>>>
where Self: 'static,

Retrieve all of the object instances of a sys class, with a boxed iterator
Source§

fn new(id: &str) -> Result<Self>

Create a sys object by id, checking it for validity
Source§

fn id(&self) -> &str

Return the id of the sys object
Source§

fn read_file<P: AsRef<Path>>(&self, name: P) -> Result<String>

Read a file underneath the sys object
Source§

fn parse_file<F: FromStr, P: AsRef<Path>>(&self, name: P) -> Result<F>
where F::Err: Display,

Parse a number from a file underneath the sys object
Source§

fn trim_file<P: AsRef<Path>>(&self, name: P) -> Result<String>

Read a file underneath the sys object and trim whitespace
Source§

fn write_file<P: AsRef<Path>, S: AsRef<[u8]>>( &self, name: P, data: S, ) -> Result<()>

Write a file underneath the sys object

Auto Trait Implementations§

§

impl Freeze for DmiId

§

impl RefUnwindSafe for DmiId

§

impl Send for DmiId

§

impl Sync for DmiId

§

impl Unpin for DmiId

§

impl UnwindSafe for DmiId

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.