1#ifndef NEFORCE_CORE_FILE_ENV_ENV_PARSER_HPP__
2#define NEFORCE_CORE_FILE_ENV_ENV_PARSER_HPP__
15NEFORCE_BEGIN_NAMESPACE__
56 void skip_whitespace()
noexcept;
63 void skip_line()
noexcept;
69 NEFORCE_NODISCARD
char current()
const noexcept;
76 NEFORCE_NODISCARD
char peek(
size_t offset = 1)
const noexcept;
82 NEFORCE_NODISCARD
bool eof()
const noexcept;
96 NEFORCE_NODISCARD
bool is_comment_line(
const string& line)
const;
103 NEFORCE_NODISCARD
bool is_blank_line(
const string& line)
const;
124 string parse_unquoted_value(
const string& line,
size_t& pos)
const;
134 string parse_single_quoted_value(
const string& line,
size_t& pos)
const;
144 string parse_double_quoted_value(
const string& line,
size_t& pos)
const;
152 void parse_line(
const string& line)
const;
162 text_(_NEFORCE
move(text)),
191NEFORCE_END_NAMESPACE__
optional< unique_ptr< env_document > > try_parse()
尝试执行解析
unique_ptr< env_document > parse()
执行解析
env_parser(string text)
构造函数
constexpr void advance(Iterator &i, Distance n)
将迭代器前进指定距离
constexpr Iterator2 move(Iterator1 first, Iterator1 last, Iterator2 result) noexcept(noexcept(inner::__move_aux(first, last, result)))
移动范围元素
bool name(char *buffer, size_t size)
获取当前线程名称
constexpr decltype(auto) size(const Container &cont) noexcept(noexcept(cont.size()))
获取容器的大小
constexpr unique_ptr< T > make_unique(Args &&... args)
创建unique_ptr