Home | History | Annotate | Download | only in i18n
      1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "base/i18n/string_compare.h"
      6 
      7 #include "base/logging.h"
      8 #include "base/strings/utf_string_conversions.h"
      9 
     10 namespace base {
     11 namespace i18n {
     12 
     13 // Compares the character data stored in two different string16 strings by
     14 // specified Collator instance.
     15 UCollationResult CompareString16WithCollator(const icu::Collator* collator,
     16                                              const string16& lhs,
     17                                              const string16& rhs) {
     18   DCHECK(collator);
     19   UErrorCode error = U_ZERO_ERROR;
     20   UCollationResult result = collator->compare(
     21       static_cast<const UChar*>(lhs.c_str()), static_cast<int>(lhs.length()),
     22       static_cast<const UChar*>(rhs.c_str()), static_cast<int>(rhs.length()),
     23       error);
     24   DCHECK(U_SUCCESS(error));
     25   return result;
     26 }
     27 
     28 }  // namespace i18n
     29 }  // namespace base
     30