// file : libstudxml/value-traits.txx // copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC // license : MIT; see accompanying LICENSE file #include #include #include namespace xml { template T default_value_traits:: parse (std::string s, const parser& p) { T r; std::istringstream is (s); if (!(is >> r && is.eof ()) ) throw parsing (p, "invalid value '" + s + "'"); return r; } template std::string default_value_traits:: serialize (const T& v, const serializer& s) { std::ostringstream os; if (!(os << v)) throw serialization (s, "invalid value"); return os.str (); } }