#endif
#include <boost/cstdint.hpp>
-#include <boost/foreach.hpp>
#include <boost/regex/pending/unicode_iterator.hpp>
#include <boost/type_traits/make_unsigned.hpp>
+#include <iterator>
#include <string>
namespace boost { namespace spirit
insert_iter out_iter(result);
utf8_output_iterator<insert_iter> utf8_iter(out_iter);
typedef typename make_unsigned<Char>::type UChar;
- BOOST_FOREACH(Char ch, str)
+ for (Char const* ptr = str.data(),
+ * end = ptr + str.size(); ptr < end; ++ptr)
{
- *utf8_iter++ = (UChar)ch;
+ *utf8_iter++ = (UChar)*ptr;
}
return result;
}