ros2_interfaces_humble/test_interface_files/srv/
arrays.rs

1use serde::{Deserialize, Serialize};
2
3
4#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
5pub struct ArraysRequest {
6    pub bool_values: [bool; 3],
7    pub byte_values: [u8; 3],
8    pub char_values: [i8; 3],
9    pub float32_values: [f32; 3],
10    pub float64_values: [f64; 3],
11    pub int8_values: [i8; 3],
12    pub uint8_values: [u8; 3],
13    pub int16_values: [i16; 3],
14    pub uint16_values: [u16; 3],
15    pub int32_values: [i32; 3],
16    pub uint32_values: [u32; 3],
17    pub int64_values: [i64; 3],
18    pub uint64_values: [u64; 3],
19    pub string_values: [::std::string::String; 3],
20    pub basic_types_values: [crate::test_interface_files::msg::BasicTypes; 3],
21    pub constants_values: [crate::test_interface_files::msg::Constants; 3],
22    pub defaults_values: [crate::test_interface_files::msg::Defaults; 3],
23    pub bool_values_default: [bool; 3], // default: [false, true, false]
24    pub byte_values_default: [u8; 3], // default: [0, 1, 255]
25    pub char_values_default: [i8; 3], // default: [0, 1, 127]
26    pub float32_values_default: [f32; 3], // default: [1.125, 0.0, -1.125]
27    pub float64_values_default: [f64; 3], // default: [3.1415, 0.0, -3.1415]
28    pub int8_values_default: [i8; 3], // default: [0, 127, -128]
29    pub uint8_values_default: [u8; 3], // default: [0, 1, 255]
30    pub int16_values_default: [i16; 3], // default: [0, 32767, -32768]
31    pub uint16_values_default: [u16; 3], // default: [0, 1, 65535]
32    pub int32_values_default: [i32; 3], // default: [0, 2147483647, -2147483648]
33    pub uint32_values_default: [u32; 3], // default: [0, 1, 4294967295]
34    pub int64_values_default: [i64; 3], // default: [0, 9223372036854775807, -9223372036854775808]
35    pub uint64_values_default: [u64; 3], // default: [0, 1, 18446744073709551615]
36    pub string_values_default: [::std::string::String; 3], // default: ["", "max value", "min value"]
37}
38
39impl Default for ArraysRequest {
40    fn default() -> Self {
41        ArraysRequest {
42            bool_values: [false; 3],
43            byte_values: [0; 3],
44            char_values: [0; 3],
45            float32_values: [0.0; 3],
46            float64_values: [0.0; 3],
47            int8_values: [0; 3],
48            uint8_values: [0; 3],
49            int16_values: [0; 3],
50            uint16_values: [0; 3],
51            int32_values: [0; 3],
52            uint32_values: [0; 3],
53            int64_values: [0; 3],
54            uint64_values: [0; 3],
55            string_values: core::array::from_fn(|_| ::std::string::String::default()),
56            basic_types_values: core::array::from_fn(|_| crate::test_interface_files::msg::BasicTypes::default()),
57            constants_values: core::array::from_fn(|_| crate::test_interface_files::msg::Constants::default()),
58            defaults_values: core::array::from_fn(|_| crate::test_interface_files::msg::Defaults::default()),
59            bool_values_default: [false, true, false],
60            byte_values_default: [0, 1, 255],
61            char_values_default: [0, 1, 127],
62            float32_values_default: [1.125, 0.0, -1.125],
63            float64_values_default: [3.1415, 0.0, -3.1415],
64            int8_values_default: [0, 127, -128],
65            uint8_values_default: [0, 1, 255],
66            int16_values_default: [0, 32767, -32768],
67            uint16_values_default: [0, 1, 65535],
68            int32_values_default: [0, 2147483647, -2147483648],
69            uint32_values_default: [0, 1, 4294967295],
70            int64_values_default: [0, 9223372036854775807, -9223372036854775808],
71            uint64_values_default: [0, 1, 18446744073709551615],
72            string_values_default: [::std::string::String::from(""), ::std::string::String::from("max value"), ::std::string::String::from("min value")],
73        }
74    }
75}
76
77impl ros2_client::Message for ArraysRequest {}
78
79
80
81#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
82pub struct ArraysResponse {
83    pub bool_values: [bool; 3],
84    pub byte_values: [u8; 3],
85    pub char_values: [i8; 3],
86    pub float32_values: [f32; 3],
87    pub float64_values: [f64; 3],
88    pub int8_values: [i8; 3],
89    pub uint8_values: [u8; 3],
90    pub int16_values: [i16; 3],
91    pub uint16_values: [u16; 3],
92    pub int32_values: [i32; 3],
93    pub uint32_values: [u32; 3],
94    pub int64_values: [i64; 3],
95    pub uint64_values: [u64; 3],
96    pub string_values: [::std::string::String; 3],
97    pub basic_types_values: [crate::test_interface_files::msg::BasicTypes; 3],
98    pub constants_values: [crate::test_interface_files::msg::Constants; 3],
99    pub defaults_values: [crate::test_interface_files::msg::Defaults; 3],
100    pub bool_values_default: [bool; 3], // default: [false, true, false]
101    pub byte_values_default: [u8; 3], // default: [0, 1, 255]
102    pub char_values_default: [i8; 3], // default: [0, 1, 127]
103    pub float32_values_default: [f32; 3], // default: [1.125, 0.0, -1.125]
104    pub float64_values_default: [f64; 3], // default: [3.1415, 0.0, -3.1415]
105    pub int8_values_default: [i8; 3], // default: [0, 127, -128]
106    pub uint8_values_default: [u8; 3], // default: [0, 1, 255]
107    pub int16_values_default: [i16; 3], // default: [0, 32767, -32768]
108    pub uint16_values_default: [u16; 3], // default: [0, 1, 65535]
109    pub int32_values_default: [i32; 3], // default: [0, 2147483647, -2147483648]
110    pub uint32_values_default: [u32; 3], // default: [0, 1, 4294967295]
111    pub int64_values_default: [i64; 3], // default: [0, 9223372036854775807, -9223372036854775808]
112    pub uint64_values_default: [u64; 3], // default: [0, 1, 18446744073709551615]
113    pub string_values_default: [::std::string::String; 3], // default: ["", "max value", "min value"]
114}
115
116impl Default for ArraysResponse {
117    fn default() -> Self {
118        ArraysResponse {
119            bool_values: [false; 3],
120            byte_values: [0; 3],
121            char_values: [0; 3],
122            float32_values: [0.0; 3],
123            float64_values: [0.0; 3],
124            int8_values: [0; 3],
125            uint8_values: [0; 3],
126            int16_values: [0; 3],
127            uint16_values: [0; 3],
128            int32_values: [0; 3],
129            uint32_values: [0; 3],
130            int64_values: [0; 3],
131            uint64_values: [0; 3],
132            string_values: core::array::from_fn(|_| ::std::string::String::default()),
133            basic_types_values: core::array::from_fn(|_| crate::test_interface_files::msg::BasicTypes::default()),
134            constants_values: core::array::from_fn(|_| crate::test_interface_files::msg::Constants::default()),
135            defaults_values: core::array::from_fn(|_| crate::test_interface_files::msg::Defaults::default()),
136            bool_values_default: [false, true, false],
137            byte_values_default: [0, 1, 255],
138            char_values_default: [0, 1, 127],
139            float32_values_default: [1.125, 0.0, -1.125],
140            float64_values_default: [3.1415, 0.0, -3.1415],
141            int8_values_default: [0, 127, -128],
142            uint8_values_default: [0, 1, 255],
143            int16_values_default: [0, 32767, -32768],
144            uint16_values_default: [0, 1, 65535],
145            int32_values_default: [0, 2147483647, -2147483648],
146            uint32_values_default: [0, 1, 4294967295],
147            int64_values_default: [0, 9223372036854775807, -9223372036854775808],
148            uint64_values_default: [0, 1, 18446744073709551615],
149            string_values_default: [::std::string::String::from(""), ::std::string::String::from("max value"), ::std::string::String::from("min value")],
150        }
151    }
152}
153
154impl ros2_client::Message for ArraysResponse {}
155
156
157pub struct Arrays;
158impl ros2_client::Service for Arrays {
159    type Request = ArraysRequest;
160    type Response = ArraysResponse;
161
162    fn request_type_name(&self) -> &str { "ArraysRequest" }
163    fn response_type_name(&self) -> &str { "ArraysResponse" }
164}