NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
env_builder.hpp
浏览该文件的文档.
1#ifndef NEFORCE_CORE_FILE_ENV_ENV_BUILDER_HPP__
2#define NEFORCE_CORE_FILE_ENV_ENV_BUILDER_HPP__
3
12
14NEFORCE_BEGIN_NAMESPACE__
15
21
27
40class NEFORCE_API env_builder {
41private:
43 string current_key_;
44 env_variable::quote_type current_quote_type_ = env_variable::None;
45 bool current_exported_ = false;
46
47public:
54
55 env_builder(const env_builder&) = delete;
56 env_builder& operator=(const env_builder&) = delete;
57
62 env_builder(env_builder&& other) noexcept = default;
63
69 env_builder& operator=(env_builder&& other) noexcept = default;
70
76 env_builder& key(string key) noexcept;
77
82 env_builder& unquoted() noexcept;
83
89
95
101 env_builder& exported(bool exported = true) noexcept;
102
110
117 env_builder& value(const char* value) { return this->value(string(value)); }
118
125 env_builder& value(const string_view value) { return this->value(string(value)); }
126
134
142
150
158
166 env_builder& value(double value, int precision);
167
173 env_builder& comment(string text) noexcept;
174
180
187 env_builder& add(string key, string value);
188
195 env_builder& add(string key, const string_view value) { return add(move(key), string(value)); }
196
203 env_builder& add(string key, const char* value) { return add(move(key), string(value)); }
204
211 env_builder& add(string key, int value);
212
220
227 env_builder& add(string key, double value);
228
235 env_builder& add(string key, bool value);
236
245 env_builder& add_export(string key, string value);
246
255};
256 // EnvConfig
258 // ConfigFormat
260
261NEFORCE_END_NAMESPACE__
262#endif // NEFORCE_CORE_FILE_ENV_ENV_BUILDER_HPP__
env_builder & value(int value)
设置当前键的值(整数版本)
env_builder()
构造函数
env_builder & add(string key, string value)
直接添加键值对(字符串版本)
env_builder & add(string key, const char *value)
直接添加键值对(C字符串版本)
env_builder & operator=(env_builder &&other) noexcept=default
移动赋值运算符
env_builder & add(string key, bool value)
直接添加键值对(布尔值版本)
env_builder & add_export(string key, string value)
添加导出变量
env_builder & add(string key, int value)
直接添加键值对(整数版本)
env_builder & value(int64_t value)
设置当前键的值(64位整数版本)
env_builder & value(double value, int precision)
设置当前键的值(浮点数版本,指定精度)
env_builder & single_quoted() noexcept
设置为单引号模式
env_builder & value(double value)
设置当前键的值(浮点数版本)
env_builder & value(string value)
设置当前键的值(字符串版本)
env_builder & add(string key, double value)
直接添加键值对(浮点数版本)
env_builder & unquoted() noexcept
设置为无引号模式
env_builder & add(string key, const string_view value)
直接添加键值对(字符串视图版本)
env_builder & value(bool value)
设置当前键的值(布尔值版本)
env_builder & key(string key) noexcept
设置当前键名
env_builder & comment(string text) noexcept
添加注释
env_builder & value(const string_view value)
设置当前键的值(字符串视图版本)
unique_ptr< env_document > build() noexcept
构建文档
env_builder & exported(bool exported=true) noexcept
设置导出标记
env_builder & value(const char *value)
设置当前键的值(C字符串版本)
env_builder & blank_line()
添加空行
env_builder & add(string key, int64_t value)
直接添加键值对(64位整数版本)
env_builder(env_builder &&other) noexcept=default
移动构造函数
env_builder & double_quoted() noexcept
设置为双引号模式
quote_type
引号类型枚举
独占智能指针
env配置格式变量
long long int64_t
64位有符号整数类型
constexpr Iterator2 move(Iterator1 first, Iterator1 last, Iterator2 result) noexcept(noexcept(inner::__move_aux(first, last, result)))
移动范围元素
basic_string_view< char > string_view
字符字符串视图