NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
iobject.hpp
浏览该文件的文档.
1#ifndef NEFORCE_CORE_INTERFACE_IOBJECT_HPP__
2#define NEFORCE_CORE_INTERFACE_IOBJECT_HPP__
3
10
12NEFORCE_BEGIN_NAMESPACE__
13
19
30template <typename T>
31struct iobject : istringify<T> {
32public:
40 NEFORCE_NODISCARD static constexpr T parse(const string_view str) { return T::parse(str); }
41
50 NEFORCE_CONSTEXPR20 bool try_parse(const string_view str) noexcept {
51 T tmp;
52 try {
53 tmp = T::parse(str);
54 } catch (...) {
55 return false;
56 }
57 *this = _NEFORCE move(tmp);
58 return true;
59 }
60};
61 // CRTPInterfaces
63
64NEFORCE_END_NAMESPACE__
65#endif // NEFORCE_CORE_INTERFACE_IOBJECT_HPP__
constexpr Iterator2 move(Iterator1 first, Iterator1 last, Iterator2 result) noexcept(noexcept(inner::__move_aux(first, last, result)))
移动范围元素
basic_string_view< char > string_view
字符字符串视图
可字符串化接口
可解析对象接口
NEFORCE_CONSTEXPR20 bool try_parse(const string_view str) noexcept
尝试从字符串解析对象
static NEFORCE_NODISCARD constexpr T parse(const string_view str)
从字符串解析对象
可字符串化接口