chromium/third_party/libphonenumber/dist/cpp/src/phonenumbers/base/strings/string_piece.h

// Copyright (c) 2011 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.
// Copied from strings/stringpiece.h with modifications
//
// A string-like object that points to a sized piece of memory.
//
// Functions or methods may use const StringPiece& parameters to accept either
// a "const char*" or a "string" value that will be implicitly converted to
// a StringPiece.  The implicit conversion means that it is often appropriate
// to include this .h file in other files rather than forward-declaring
// StringPiece as would be appropriate for most other Google classes.
//
// Systematic usage of StringPiece is encouraged as it will reduce unnecessary
// conversions from "const char*" to "string" and back again.
//

#ifndef I18N_PHONENUMBERS_BASE_STRINGS_STRING_PIECE_H_
#define I18N_PHONENUMBERS_BASE_STRINGS_STRING_PIECE_H_
#pragma once

#include <string>

#include "phonenumbers/base/basictypes.h"

namespace i18n {
namespace phonenumbers {

class StringPiece {};

bool operator==(const StringPiece& x, const StringPiece& y);

inline bool operator!=(const StringPiece& x, const StringPiece& y) {}

inline bool operator<(const StringPiece& x, const StringPiece& y) {}

inline bool operator>(const StringPiece& x, const StringPiece& y) {}

inline bool operator<=(const StringPiece& x, const StringPiece& y) {}

inline bool operator>=(const StringPiece& x, const StringPiece& y) {}

}  // namespace phonenumbers
}  // namespace i18n

#endif  // I18N_PHONENUMBERS_BASE_STRINGS_STRING_PIECE_H_