| /* | |
| * Copyright 2021 Google LLC. | |
| * | |
| * Use of this source code is governed by a BSD-style license that can be | |
| * found in the LICENSE file. | |
| */ | |
| #include "include/core/SkStringView.h" | |
| #include <algorithm> | |
| namespace skstd { | |
| bool operator==(string_view left, string_view right) { | |
| if (left.length() != right.length()) { | |
| return false; | |
| } | |
| return !string_view::traits_type::compare(left.data(), right.data(), left.length()); | |
| } | |
| bool operator!=(string_view left, string_view right) { | |
| return !(left == right); | |
| } | |
| bool operator<(string_view left, string_view right) { | |
| int result = string_view::traits_type::compare(left.data(), right.data(), | |
| std::min(left.length(), right.length())); | |
| if (!result) { | |
| result = left.length() - right.length(); | |
| } | |
| return result < 0; | |
| } | |
| bool operator<=(string_view left, string_view right) { | |
| return !(left > right); | |
| } | |
| bool operator>(string_view left, string_view right) { | |
| return right < left; | |
| } | |
| bool operator>=(string_view left, string_view right) { | |
| return !(left < right); | |
| } | |
| } // namespace skstd |