ClickHouse
53 строки · 1.0 Кб
1#include <Core/BaseSettings.h>
2#include <IO/ReadHelpers.h>
3#include <IO/WriteHelpers.h>
4#include <Common/logger_useful.h>
5
6
7namespace DB
8{
9namespace ErrorCodes
10{
11extern const int UNKNOWN_SETTING;
12}
13
14void BaseSettingsHelpers::writeString(std::string_view str, WriteBuffer & out)
15{
16writeStringBinary(str, out);
17}
18
19
20String BaseSettingsHelpers::readString(ReadBuffer & in)
21{
22String str;
23readStringBinary(str, in);
24return str;
25}
26
27
28void BaseSettingsHelpers::writeFlags(Flags flags, WriteBuffer & out)
29{
30writeVarUInt(flags, out);
31}
32
33
34BaseSettingsHelpers::Flags BaseSettingsHelpers::readFlags(ReadBuffer & in)
35{
36UInt64 res;
37readVarUInt(res, in);
38return static_cast<Flags>(res);
39}
40
41
42void BaseSettingsHelpers::throwSettingNotFound(std::string_view name)
43{
44throw Exception(ErrorCodes::UNKNOWN_SETTING, "Unknown setting '{}'", String{name});
45}
46
47
48void BaseSettingsHelpers::warningSettingNotFound(std::string_view name)
49{
50LOG_WARNING(getLogger("Settings"), "Unknown setting '{}', skipping", name);
51}
52
53}
54