diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2010-10-08 15:35:23 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2010-10-08 15:35:23 +0200 |
commit | 7db026e8056914d113ac0bbfd9bdc4908a9e7874 (patch) | |
tree | 0ab15cb8b0ee160a10cca21edaf0aca1e97e8921 /libxsde/xsde/cxx/parser/non-validating/token-stl.cxx | |
parent | 4f38adc11ab1a3a1ab2dd3f958c917182be7d71f (diff) |
Add support for the whiteSpace facet
Use the same mechanism to handle whitespace processing for build-in types
and enumerations.
Diffstat (limited to 'libxsde/xsde/cxx/parser/non-validating/token-stl.cxx')
-rw-r--r-- | libxsde/xsde/cxx/parser/non-validating/token-stl.cxx | 28 |
1 files changed, 2 insertions, 26 deletions
diff --git a/libxsde/xsde/cxx/parser/non-validating/token-stl.cxx b/libxsde/xsde/cxx/parser/non-validating/token-stl.cxx index 8977b0f..e2a604d 100644 --- a/libxsde/xsde/cxx/parser/non-validating/token-stl.cxx +++ b/libxsde/xsde/cxx/parser/non-validating/token-stl.cxx @@ -4,6 +4,7 @@ // license : GNU GPL v2 + exceptions; see accompanying LICENSE file #include <xsde/cxx/parser/non-validating/token-stl.hxx> +#include <xsde/cxx/parser/non-validating/string-common.hxx> namespace xsde { @@ -36,32 +37,7 @@ namespace xsde std::string token_pimpl:: post_token () { - std::string::size_type size = str_.size (); - std::string::size_type j = 0; - - bool subs = false; - - for (std::string::size_type i = 0; i < size; ++i) - { - char c = str_[i]; - - if (c == 0x20 || c == 0x0A || c == 0x0D || c == 0x09) - { - subs = true; - } - else - { - if (subs) - { - subs = false; - str_[j++] = 0x20; - } - - str_[j++] = c; - } - } - - str_.resize (j); + string_common::process_facets (str_, _facets ()); std::string r; r.swap (str_); |