Index: chrome/common/string_ordinal.h |
diff --git a/chrome/common/string_ordinal.h b/chrome/common/string_ordinal.h |
deleted file mode 100644 |
index ca4818b98eb9c228ca1d3a86dd4395e3e5d1e6c7..0000000000000000000000000000000000000000 |
--- a/chrome/common/string_ordinal.h |
+++ /dev/null |
@@ -1,92 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef CHROME_COMMON_STRING_ORDINAL_H_ |
-#define CHROME_COMMON_STRING_ORDINAL_H_ |
- |
-#include <string> |
- |
-// A StringOrdinal represents a specially-formatted string that can be used |
-// for ordering. The StringOrdinal class has an unbounded dense strict total |
-// order, which mean for any StringOrdinals a, b and c: |
-// |
-// - a < b and b < c implies a < c (transitivity); |
-// - exactly one of a < b, b < a and a = b holds (trichotomy); |
-// - if a < b, there is a StringOrdinal x such that a < x < b (density); |
-// - there are StringOrdinals x and y such that x < a < y (unboundedness). |
-// |
-// This means that when StringOrdinal is used for sorting a list, if |
-// any item changes its position in the list, only its StringOrdinal value |
-// has to change to represent the new order, and all the other older values |
-// can stay the same. |
-class StringOrdinal { |
- public: |
- // Creates a StringOrdinal from the given string. It may be valid or invalid. |
- explicit StringOrdinal(const std::string& string_ordinal); |
- |
- // Creates an invalid StringOrdinal. |
- StringOrdinal(); |
- |
- // Creates a valid initial StringOrdinal, this is called to create the first |
- // element of StringOrdinal list (i.e. before we have any other values we can |
- // generate from). |
- static StringOrdinal CreateInitialOrdinal(); |
- |
- bool IsValid() const; |
- |
- // All remaining functions can only be called if IsValid() holds. |
- // It is an error to call them if IsValid() is false. |
- |
- // Order-related Functions |
- |
- // Returns true iff |*this| < |other|. |
- bool LessThan(const StringOrdinal& other) const; |
- |
- // Returns true iff |*this| > |other|. |
- bool GreaterThan(const StringOrdinal& other) const; |
- |
- // Returns true iff |*this| == |other| (i.e. |*this| < |other| and |
- // |other| < |*this| are both false). |
- bool Equal(const StringOrdinal& other) const; |
- |
- // Returns true iff |*this| == |other| or |*this| and |other| |
- // are both invalid. |
- bool EqualOrBothInvalid(const StringOrdinal& other) const; |
- |
- // Given |*this| != |other|, returns a StringOrdinal x such that |
- // min(|*this|, |other|) < x < max(|*this|, |other|). It is an error |
- // to call this function when |*this| == |other|. |
- StringOrdinal CreateBetween(const StringOrdinal& other) const; |
- |
- // Returns a StringOrdinal |x| such that |x| < |*this|. |
- StringOrdinal CreateBefore() const; |
- |
- // Returns a StringOrdinal |x| such that |*this| < |x|. |
- StringOrdinal CreateAfter() const; |
- |
- // It is guaranteed that a StringOrdinal constructed from the returned |
- // string will be valid. |
- std::string ToString() const; |
- |
- // Do this so we can use std::find on a std::vector of StringOrdinals. |
- bool operator==(const StringOrdinal& rhs) const; |
- |
- // Use of copy constructor and default assignment for this class is allowed. |
- |
- private: |
- // The string representation of the StringOrdinal. |
- std::string string_ordinal_; |
- |
- // The validity of the StringOrdinal (i.e., is it of the format [a-z]*[b-z]), |
- // created to cache validity to prevent frequent recalculations. |
- bool is_valid_; |
-}; |
- |
-// A helper class that can be used by STL containers that require sorting. |
-class StringOrdinalLessThan { |
- public: |
- bool operator() (const StringOrdinal& lhs, const StringOrdinal& rhs) const; |
-}; |
- |
-#endif // CHROME_COMMON_STRING_ORDINAL_H_ |