Files
Rediska/rediska/common/MessageArguments.hpp
Nikita Astafyev 35a6349071
Some checks failed
Code Analysis / analysis (push) Failing after 2m59s
chore: initial commit
2025-12-30 22:34:58 +07:00

47 lines
1.0 KiB
C++

#pragma once
#include <variant>
#include "rediska/common/types.hpp"
struct PrimitiveSetArgs {
CacheValue value;
TTL ttl_seconds;
};
struct ListCreateArgs {
CacheValueId element_kind;
TTL ttl_seconds;
};
struct ListIndexArgs {
int64_t index;
};
struct ListSetArgs {
int64_t index;
CacheValue value;
};
struct ListInsertArgs {
int64_t index;
CacheValue value;
};
struct ListPushBackArgs {
CacheValue value;
};
struct ListPushManyArgs {
std::vector<CacheValue> values;
bool replace_entire_list = false; // true => overwrite entire list, false => append
};
using MessageArguments = std::variant<std::monostate,
PrimitiveSetArgs,
ListCreateArgs,
ListIndexArgs,
ListSetArgs,
ListInsertArgs,
ListPushBackArgs,
ListPushManyArgs>;