1pub const OP_ADD: &str = "Add";
6pub const OP_GET: &str = "Get";
7pub const OP_SET: &str = "Set";
8pub const OP_DEL: &str = "Del";
9pub const OP_CLEAR: &str = "Clear";
10pub const OP_RANGE: &str = "Range";
11pub const OP_PUSH: &str = "Push";
12pub const OP_LIST_DEL: &str = "ListItemDelete";
13pub const OP_KEYVEC_INSERT: &str = "KeyVecInsert";
14pub const OP_KEYVEC_TAILOFF: &str = "KeyVecTailOff";
15pub const OP_KEYVEC_GET: &str = "KeyVecGet";
16pub const OP_SET_ADD: &str = "SetAdd";
17pub const OP_SET_REMOVE: &str = "SetRemove";
18pub const OP_SET_UNION: &str = "SetUnion";
19pub const OP_SET_INTERSECT: &str = "SetIntersection";
20pub const OP_SET_QUERY: &str = "SetQuery";
21pub const OP_KEY_EXISTS: &str = "KeyExists";
22
23#[derive(Debug, PartialEq, Deserialize, Serialize)]
25#[serde(rename_all = "camelCase")]
26pub struct GetRequest {
27 pub key: String,
28}
29
30#[derive(Debug, PartialEq, Deserialize, Serialize)]
32#[serde(rename_all = "camelCase")]
33pub struct GetResponse {
34 pub value: Vec<u8>,
36 pub exists: bool,
38}
39
40#[derive(Debug, PartialEq, Deserialize, Serialize)]
42#[serde(rename_all = "camelCase")]
43pub struct SetRequest{
44 pub key: String,
46 pub value: Vec<u8>,
48 #[serde(rename = "expires")]
50 pub expires_s: i32,
51}
52
53#[derive(Debug, PartialEq, Deserialize, Serialize)]
55#[serde(rename_all = "camelCase")]
56pub struct DelRequest {
57 pub key: String,
58}
59
60#[derive(Debug, PartialEq, Deserialize, Serialize)]
61#[serde(rename_all = "camelCase")]
62pub struct DelResponse {
63 pub key: String,
64}
65
66#[derive(Debug, PartialEq, Deserialize, Serialize)]
68#[serde(rename_all = "camelCase")]
69pub struct SetResponse {
70 pub value: Vec<u8>,
71}
72
73#[derive(Debug, PartialEq, Deserialize, Serialize)]
75#[serde(rename_all = "camelCase")]
76pub struct AddRequest {
77 pub key: String,
78 pub value: i32,
79}
80
81#[derive(Debug, PartialEq, Deserialize, Serialize)]
83#[serde(rename_all = "camelCase")]
84pub struct AddResponse {
85 pub value: i32,
86}
87
88#[derive(Debug, PartialEq, Deserialize, Serialize)]
90#[serde(rename_all = "camelCase")]
91pub struct ListPushRequest {
92 pub key: String,
93 pub value: Vec<u8>,
94}
95
96#[derive(Debug, PartialEq, Deserialize, Serialize)]
98#[serde(rename_all = "camelCase")]
99pub struct ListDelItemRequest {
100 pub key: String,
101 pub value: Vec<u8>,
102}
103
104#[derive(Debug, PartialEq, Deserialize, Serialize)]
106#[serde(rename_all = "camelCase")]
107pub struct ListClearRequest {
108 pub key: String,
109}
110
111#[derive(Debug, PartialEq, Deserialize, Serialize)]
113#[serde(rename_all = "camelCase")]
114pub struct ListRangeRequest {
115 pub key: String,
116 pub start: i32,
117 pub stop: i32,
118}
119
120#[derive(Debug, PartialEq, Deserialize, Serialize)]
122#[serde(rename_all = "camelCase")]
123pub struct ListRangeResponse {
124 #[serde(default)]
125 pub values: Vec<Vec<u8>>,
126}
127
128#[derive(Debug, PartialEq, Deserialize, Serialize)]
130#[serde(rename_all = "camelCase")]
131pub struct ListResponse {
132 pub new_count: i32,
133}
134
135#[derive(Debug, PartialEq, Deserialize, Serialize)]
137#[serde(rename_all = "camelCase")]
138pub struct SetAddRequest {
139 pub key: String,
140 pub value: Vec<u8>,
141}
142
143#[derive(Debug, PartialEq, Deserialize, Serialize)]
145#[serde(rename_all = "camelCase")]
146pub struct SetRemoveRequest {
147 pub key: String,
148 pub value: Vec<u8>,
149}
150
151#[derive(Debug, PartialEq, Deserialize, Serialize)]
153#[serde(rename_all = "camelCase")]
154pub struct SetQueryRequest {
155 pub key: String,
156}
157
158#[derive(Debug, PartialEq, Deserialize, Serialize)]
160#[serde(rename_all = "camelCase")]
161pub struct SetQueryResponse {
162 #[serde(default)]
163 pub values: Vec<Vec<u8>>,
164}
165
166#[derive(Debug, PartialEq, Deserialize, Serialize)]
168#[serde(rename_all = "camelCase")]
169pub struct SetIntersectionRequest {
170 #[serde(default)]
171 pub keys: Vec<String>,
172}
173
174#[derive(Debug, PartialEq, Deserialize, Serialize)]
176#[serde(rename_all = "camelCase")]
177pub struct SetUnionRequest {
178 #[serde(default)]
179 pub keys: Vec<String>,
180}
181
182#[derive(Debug, PartialEq, Deserialize, Serialize)]
184#[serde(rename_all = "camelCase")]
185pub struct SetOperationResponse {
186 pub new_count: i32,
187}
188
189#[derive(Debug, PartialEq, Deserialize, Serialize)]
191#[serde(rename_all = "camelCase")]
192pub struct KeyExistsQuery {
193 pub key: String,
194}
195
196#[derive(Debug, PartialEq, Deserialize, Serialize)]
199#[serde(rename_all = "camelCase")]
200pub struct KeyVecInsertQuery {
201 pub key: String,
202 pub value:(i32, Vec<u8>),
203 pub overwrite: bool,
204}
205#[derive(Debug, PartialEq, Deserialize, Serialize)]
207#[serde(rename_all = "camelCase")]
208pub struct KeyVecInsertResponse {
209 pub success: bool,
210}
211#[derive(Debug, PartialEq, Deserialize, Serialize)]
214#[serde(rename_all = "camelCase")]
215pub struct KeyVecTailOffQuery {
216 pub key: String,
217 pub remain: usize,
218}
219#[derive(Debug, PartialEq, Deserialize, Serialize)]
221#[serde(rename_all = "camelCase")]
222pub struct KeyVecTailOffResponse {
223 pub len: usize,
224}
225#[derive(Debug, PartialEq, Deserialize, Serialize)]
227#[serde(rename_all = "camelCase")]
228pub struct KeyVecGetQuery {
229 pub key: String,
230}
231#[derive(Debug, PartialEq, Deserialize, Serialize)]
233#[serde(rename_all = "camelCase")]
234pub struct KeyVecGetResponse {
235 #[serde(default)]
236 pub values: Vec<(i32, Vec<u8>)>,
237}