|
1 | 1 | /// `ElementType` represents the type of elements that a tensor can hold. See [`ElementType`](https://docs.openvino.ai/2023.3/api/c_cpp_api/group__ov__base__c__api.html#_CPPv417ov_element_type_e).
|
2 |
| -#[derive(Debug)] |
| 2 | +#[derive(Eq, PartialEq, Copy, Clone, Debug)] |
3 | 3 | #[repr(u32)]
|
4 | 4 | pub enum ElementType {
|
5 | 5 | /// An undefined element type.
|
6 |
| - Undefined = 0, |
| 6 | + Undefined = openvino_sys::ov_element_type_e_UNDEFINED, |
7 | 7 | /// A dynamic element type.
|
8 |
| - Dynamic = 1, |
| 8 | + Dynamic = openvino_sys::ov_element_type_e_DYNAMIC, |
9 | 9 | /// A boolean element type.
|
10 |
| - Boolean = 2, |
| 10 | + Boolean = openvino_sys::ov_element_type_e_OV_BOOLEAN, |
11 | 11 | /// A Bf16 element type.
|
12 |
| - Bf16 = 3, |
| 12 | + Bf16 = openvino_sys::ov_element_type_e_BF16, |
13 | 13 | /// A F16 element type.
|
14 |
| - F16 = 4, |
| 14 | + F16 = openvino_sys::ov_element_type_e_F16, |
15 | 15 | /// A F32 element type.
|
16 |
| - F32 = 5, |
| 16 | + F32 = openvino_sys::ov_element_type_e_F32, |
17 | 17 | /// A F64 element type.
|
18 |
| - F64 = 6, |
| 18 | + F64 = openvino_sys::ov_element_type_e_F64, |
19 | 19 | /// A 4-bit integer element type.
|
20 |
| - I4 = 7, |
| 20 | + I4 = openvino_sys::ov_element_type_e_I4, |
21 | 21 | /// An 8-bit integer element type.
|
22 |
| - I8 = 8, |
| 22 | + I8 = openvino_sys::ov_element_type_e_I8, |
23 | 23 | /// A 16-bit integer element type.
|
24 |
| - I16 = 9, |
| 24 | + I16 = openvino_sys::ov_element_type_e_I16, |
25 | 25 | /// A 32-bit integer element type.
|
26 |
| - I32 = 10, |
| 26 | + I32 = openvino_sys::ov_element_type_e_I32, |
27 | 27 | /// A 64-bit integer element type.
|
28 |
| - I64 = 11, |
| 28 | + I64 = openvino_sys::ov_element_type_e_I64, |
29 | 29 | /// An 1-bit unsigned integer element type.
|
30 |
| - U1 = 12, |
| 30 | + U1 = openvino_sys::ov_element_type_e_U1, |
31 | 31 | /// An 4-bit unsigned integer element type.
|
32 |
| - U4 = 13, |
| 32 | + U4 = openvino_sys::ov_element_type_e_U4, |
33 | 33 | /// An 8-bit unsigned integer element type.
|
34 |
| - U8 = 14, |
| 34 | + U8 = openvino_sys::ov_element_type_e_U8, |
35 | 35 | /// A 16-bit unsigned integer element type.
|
36 |
| - U16 = 15, |
| 36 | + U16 = openvino_sys::ov_element_type_e_U16, |
37 | 37 | /// A 32-bit unsigned integer element type.
|
38 |
| - U32 = 16, |
| 38 | + U32 = openvino_sys::ov_element_type_e_U32, |
39 | 39 | /// A 64-bit unsigned integer element type.
|
40 |
| - U64 = 17, |
| 40 | + U64 = openvino_sys::ov_element_type_e_U64, |
41 | 41 | /// NF4 element type.
|
42 |
| - NF4 = 18, |
| 42 | + NF4 = openvino_sys::ov_element_type_e_NF4, |
43 | 43 | /// F8E4M3 element type.
|
44 |
| - F8E4M3 = 19, |
| 44 | + F8E4M3 = openvino_sys::ov_element_type_e_F8E4M3, |
45 | 45 | /// F8E5M3 element type.
|
46 |
| - F8E5M3 = 20, |
47 |
| -} |
48 |
| - |
49 |
| -#[cfg(test)] |
50 |
| -mod tests { |
51 |
| - use super::*; |
52 |
| - use openvino_sys::*; |
53 |
| - |
54 |
| - #[test] |
55 |
| - fn check_discriminant_values() { |
56 |
| - assert_eq!(ov_element_type_e_UNDEFINED, ElementType::Undefined as u32); |
57 |
| - assert_eq!(ov_element_type_e_U1, ElementType::U1 as u32); |
58 |
| - assert_eq!(ov_element_type_e_U4, ElementType::U4 as u32); |
59 |
| - assert_eq!(ov_element_type_e_U8, ElementType::U8 as u32); |
60 |
| - assert_eq!(ov_element_type_e_U16, ElementType::U16 as u32); |
61 |
| - assert_eq!(ov_element_type_e_U32, ElementType::U32 as u32); |
62 |
| - assert_eq!(ov_element_type_e_U64, ElementType::U64 as u32); |
63 |
| - assert_eq!(ov_element_type_e_I4, ElementType::I4 as u32); |
64 |
| - assert_eq!(ov_element_type_e_I8, ElementType::I8 as u32); |
65 |
| - assert_eq!(ov_element_type_e_I16, ElementType::I16 as u32); |
66 |
| - assert_eq!(ov_element_type_e_I32, ElementType::I32 as u32); |
67 |
| - assert_eq!(ov_element_type_e_I64, ElementType::I64 as u32); |
68 |
| - assert_eq!(ov_element_type_e_F16, ElementType::F16 as u32); |
69 |
| - assert_eq!(ov_element_type_e_F32, ElementType::F32 as u32); |
70 |
| - assert_eq!(ov_element_type_e_F64, ElementType::F64 as u32); |
71 |
| - assert_eq!(ov_element_type_e_OV_BOOLEAN, ElementType::Boolean as u32); |
72 |
| - assert_eq!(ov_element_type_e_DYNAMIC, ElementType::Dynamic as u32); |
73 |
| - assert_eq!(ov_element_type_e_NF4, ElementType::NF4 as u32); |
74 |
| - assert_eq!(ov_element_type_e_F8E4M3, ElementType::F8E4M3 as u32); |
75 |
| - assert_eq!(ov_element_type_e_F8E5M3, ElementType::F8E5M3 as u32); |
76 |
| - } |
| 46 | + F8E5M3 = openvino_sys::ov_element_type_e_F8E5M3, |
77 | 47 | }
|
0 commit comments