Fixed incorrect use of boost::algorithm::is_iless.

This commit is contained in:
Gunnar Beutner 2012-10-31 12:06:21 +01:00
parent a5f361b7b6
commit 482742f00e
2 changed files with 13 additions and 4 deletions

View File

@ -74,11 +74,11 @@ public:
typedef function<DynamicObject::Ptr (const Dictionary::Ptr&)> Factory;
typedef map<String, Factory, boost::algorithm::is_iless> ClassMap;
typedef map<String, DynamicObject::Ptr, boost::algorithm::is_iless> NameMap;
typedef map<String, NameMap, boost::algorithm::is_iless> TypeMap;
typedef map<String, Factory, string_iless> ClassMap;
typedef map<String, DynamicObject::Ptr, string_iless> NameMap;
typedef map<String, NameMap, string_iless> TypeMap;
typedef map<String, DynamicAttribute, boost::algorithm::is_iless> AttributeMap;
typedef map<String, DynamicAttribute, string_iless> AttributeMap;
typedef AttributeMap::iterator AttributeIterator;
typedef AttributeMap::const_iterator AttributeConstIterator;

View File

@ -118,6 +118,15 @@ I2_BASE_API String::ConstIterator range_begin(const String& x);
I2_BASE_API String::Iterator range_end(String& x);
I2_BASE_API String::ConstIterator range_end(const String& x);
struct string_iless : std::binary_function<String, String, bool>
{
bool operator()(const String& s1, const String& s2) const
{
return lexicographical_compare(s1.Begin(), s1.End(),
s2.Begin(), s2.End(), boost::algorithm::is_iless());
}
};
}
namespace boost