ethercat_types/
value.rs

1/// EtherCAT SDO/PDO Value
2#[derive(Debug, Clone, PartialEq)]
3pub enum Value {
4    /// BIT
5    Bool(bool),
6
7    /// BYTE
8    Byte(u8),
9
10    /// SINT
11    I8(i8),
12    /// INT
13    I16(i16),
14    /// DINT
15    I32(i32),
16    /// LINT
17    I64(i64),
18
19    /// USINT
20    U8(u8),
21    /// UINT
22    U16(u16),
23    /// UDINT
24    U32(u32),
25    /// ULINT
26    U64(u64),
27
28    /// REAL
29    F32(f32),
30    /// LREAL
31    F64(f64),
32
33    /// STRING(n) a.k.a. visiable string
34    String(String),
35
36    /// ARRAY of BYTE a.k.a. Octet String
37    U8Array(Vec<u8>),
38
39    /// ARRAY of UINT a.k.a. Unicode String
40    U16Array(Vec<u16>),
41
42    // TODO:
43    //I24
44    //I40
45    //I48
46    //I56
47
48    // TODO:
49    //U24
50    //U40
51    //U48
52    //U56
53    /// BIT 1
54    Bit1(bool),
55    /// BIT 2
56    Bit2(bool),
57    /// BIT 3
58    Bit3(bool),
59    /// BIT 4
60    Bit4(bool),
61    /// BIT 5
62    Bit5(bool),
63    /// BIT 6
64    Bit6(bool),
65    /// BIT 7
66    Bit7(bool),
67    /// BIT 8
68    Bit8(bool),
69
70    // TODO:
71    // /// Time of Day
72    // TimeOfDay,
73    // /// Time Difference
74    // TimeDifference,
75
76    // TODO:
77    // /// Domain
78    // Domain,
79    Raw(Vec<u8>),
80}