// file : xsde/cxx/parser/non-validating/string-stl.cxx // author : Boris Kolpackov // copyright : Copyright (c) 2005-2011 Code Synthesis Tools CC // license : GNU GPL v2 + exceptions; see accompanying LICENSE file #include #include namespace xsde { namespace cxx { namespace parser { namespace non_validating { void string_pimpl:: _pre () { str_.erase (); } void string_pimpl:: _characters (const ro_string& s) { if (_facets ().whitespace_ == 2 && str_.size () == 0) { ro_string tmp (s.data (), s.size ()); if (trim_left (tmp) != 0) str_ += tmp; } else str_ += s; } std::string string_pimpl:: post_string () { string_common::process_facets (str_, _facets ()); std::string r; r.swap (str_); return r; } } } } }