#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_WTF_TEXT_STRING_VIEW_H_
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_WTF_TEXT_STRING_VIEW_H_
#include <cstring>
#include <type_traits>
#include "base/containers/span.h"
#include "base/dcheck_is_on.h"
#include "base/numerics/safe_conversions.h"
#include "third_party/abseil-cpp/absl/base/attributes.h"
#include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
#include "third_party/blink/renderer/platform/wtf/get_ptr.h"
#include "third_party/blink/renderer/platform/wtf/text/string_impl.h"
#if DCHECK_IS_ON()
#include "base/memory/scoped_refptr.h"
#endif
namespace WTF {
class AtomicString;
class CodePointIterator;
class String;
enum UTF8ConversionMode { … };
class WTF_EXPORT StringView { … };
inline StringView::StringView(const StringView& view,
unsigned offset,
unsigned length)
: … { … }
inline StringView::StringView(const StringImpl* impl) { … }
inline StringView::StringView(const StringImpl* impl, unsigned offset) { … }
inline StringView::StringView(const StringImpl* impl,
unsigned offset,
unsigned length) { … }
inline StringView::StringView(StringImpl& impl, unsigned offset) { … }
inline StringView::StringView(StringImpl& impl,
unsigned offset,
unsigned length) { … }
inline void StringView::Clear() { … }
inline void StringView::Set(const StringImpl& impl,
unsigned offset,
unsigned length) { … }
WTF_EXPORT bool DeprecatedEqualIgnoringCase(const StringView&,
const StringView&);
WTF_EXPORT bool DeprecatedEqualIgnoringCaseAndNullity(const StringView&,
const StringView&);
WTF_EXPORT bool EqualIgnoringASCIICase(const StringView&, const StringView&);
template <size_t N>
inline bool EqualIgnoringASCIICase(const StringView& a,
const char (&literal)[N]) { … }
WTF_EXPORT bool EqualStringView(const StringView&, const StringView&);
inline bool operator==(const StringView& a, const StringView& b) { … }
inline bool operator!=(const StringView& a, const StringView& b) { … }
inline wtf_size_t StringView::Find(CharacterMatchFunctionPtr match_function,
wtf_size_t start) const { … }
template <bool isSpecialCharacter(UChar), typename CharacterType>
inline bool IsAllSpecialCharacters(const CharacterType* characters,
size_t length) { … }
template <bool isSpecialCharacter(UChar)>
inline bool StringView::IsAllSpecialCharacters() const { … }
WTF_EXPORT std::ostream& operator<<(std::ostream&, const StringView&);
}
StringView;
EqualIgnoringASCIICase;
DeprecatedEqualIgnoringCase;
IsAllSpecialCharacters;
#endif