#pragma once #ifndef CONVERSION_H_62B23520_7C8E_11DE_8A39_0800200C9A66 #define CONVERSION_H_62B23520_7C8E_11DE_8A39_0800200C9A66 #include "null.h" #include #include namespace YAML { inline bool Convert(const std::string& input, std::string& output) { output = input; return true; } bool Convert(const std::string& input, bool& output); bool Convert(const std::string& input, _Null& output); template struct is_numeric { enum { value = false }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template <> struct is_numeric { enum { value = true }; }; template struct enable_if; template struct enable_if { typedef R type; }; template inline bool Convert(const std::string& input, T& output, typename enable_if, T>::type * = 0) { std::stringstream stream(input); stream.unsetf(std::ios::dec); return stream >> output; } } #endif // CONVERSION_H_62B23520_7C8E_11DE_8A39_0800200C9A66