#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_WTF_TEXT_STRING_OPERATORS_H_
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_WTF_TEXT_STRING_OPERATORS_H_
#include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
#include "third_party/blink/renderer/platform/wtf/text/string_concatenate.h"
namespace WTF {
template <typename StringType1, typename StringType2>
class StringAppend final { … };
template <typename StringType1, typename StringType2>
StringAppend<StringType1, StringType2>::StringAppend(StringType1 string1,
StringType2 string2)
: … { … }
operator String()
operator AtomicString()
template <typename StringType1, typename StringType2>
bool StringAppend<StringType1, StringType2>::Is8Bit() const { … }
template <typename StringType1, typename StringType2>
void StringAppend<StringType1, StringType2>::WriteTo(LChar* destination) const { … }
template <typename StringType1, typename StringType2>
void StringAppend<StringType1, StringType2>::WriteTo(UChar* destination) const { … }
template <typename StringType1, typename StringType2>
unsigned StringAppend<StringType1, StringType2>::length() const { … }
StringTypeAdapter<StringAppend<StringType1, StringType2>>;
inline StringAppend<const char*, String> operator+(const char* string1,
const String& string2) { … }
inline StringAppend<const char*, AtomicString> operator+(
const char* string1,
const AtomicString& string2) { … }
inline StringAppend<const char*, StringView> operator+(
const char* string1,
const StringView& string2) { … }
template <typename U, typename V>
inline StringAppend<const char*, StringAppend<U, V>> operator+(
const char* string1,
const StringAppend<U, V>& string2) { … }
inline StringAppend<const UChar*, String> operator+(const UChar* string1,
const String& string2) { … }
inline StringAppend<const UChar*, AtomicString> operator+(
const UChar* string1,
const AtomicString& string2) { … }
inline StringAppend<const UChar*, StringView> operator+(
const UChar* string1,
const StringView& string2) { … }
template <typename U, typename V>
inline StringAppend<const UChar*, StringAppend<U, V>> operator+(
const UChar* string1,
const StringAppend<U, V>& string2) { … }
template <typename T>
StringAppend<String, T> operator+(const String& string1, T string2) { … }
template <typename T>
StringAppend<AtomicString, T> operator+(const AtomicString& string1,
T string2) { … }
template <typename T>
StringAppend<StringView, T> operator+(const StringView& string1, T string2) { … }
template <typename U, typename V, typename W>
StringAppend<StringAppend<U, V>, W> operator+(const StringAppend<U, V>& string1,
W string2) { … }
}
#endif