surrealcs_kernel/messages/server/
kv_operations.rs1use revision::revisioned;
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
10#[revisioned(revision = 1)]
11pub struct MessageExists {
12 pub key: Vec<u8>,
13 pub version: Option<u64>,
14}
15
16#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
21#[revisioned(revision = 1)]
22pub struct MessageGet {
23 pub key: Vec<u8>,
24 pub version: Option<u64>,
25}
26
27#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
33#[revisioned(revision = 1)]
34pub struct MessageSet {
35 pub key: Vec<u8>,
36 pub value: Vec<u8>,
37 pub version: Option<u64>,
38}
39
40#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
46#[revisioned(revision = 1)]
47pub struct MessagePut {
48 pub key: Vec<u8>,
49 pub value: Vec<u8>,
50 pub version: Option<u64>,
51}
52
53#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
60#[revisioned(revision = 1)]
61pub struct MessagePutc {
62 pub key: Vec<u8>,
63 pub value: Vec<u8>,
64 pub expected_value: Option<Vec<u8>>,
65}
66
67#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
72#[revisioned(revision = 1)]
73pub struct MessageDel {
74 pub key: Vec<u8>,
75}
76
77#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
83#[revisioned(revision = 1)]
84pub struct MessageDelc {
85 pub key: Vec<u8>,
86 pub expected_value: Option<Vec<u8>>,
87}
88
89#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
94#[revisioned(revision = 1)]
95pub struct MessageDelr {
96 pub begin: Vec<u8>,
97 pub finish: Vec<u8>,
98}
99
100#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
107#[revisioned(revision = 1)]
108pub struct MessageKeys {
109 pub begin: Vec<u8>,
110 pub finish: Vec<u8>,
111 pub limit: u32,
112 pub version: Option<u64>,
113}
114
115#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
122#[revisioned(revision = 1)]
123pub struct MessageScan {
124 pub begin: Vec<u8>,
125 pub finish: Vec<u8>,
126 pub limit: u32,
127 pub version: Option<u64>,
128}
129
130#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
135#[revisioned(revision = 1)]
136pub struct ResponseGet {
137 pub value: Option<Vec<u8>>,
138}
139
140#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
145#[revisioned(revision = 1)]
146pub struct ResponseKeys {
147 pub keys: Vec<Vec<u8>>,
148}
149
150#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
155#[revisioned(revision = 1)]
156pub struct ResponseScan {
157 pub values: Vec<(Vec<u8>, Vec<u8>)>,
158}