#include "third_party/blink/renderer/modules/indexeddb/idb_key_path.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_union_string_stringsequence.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/bindings/v8_binding.h"
#include "third_party/blink/renderer/platform/wtf/dtoa.h"
#include "third_party/blink/renderer/platform/wtf/text/ascii_ctype.h"
#include "third_party/blink/renderer/platform/wtf/text/character_names.h"
#include "third_party/blink/renderer/platform/wtf/text/unicode.h"
namespace blink {
namespace {
const uint32_t kUnicodeLetter = …;
const uint32_t kUnicodeCombiningMark = …;
const uint32_t kUnicodeDigit = …;
const uint32_t kUnicodeConnectorPunctuation = …;
static inline bool IsIdentifierStartCharacter(UChar c) { … }
static inline bool IsIdentifierCharacter(UChar c) { … }
bool IsIdentifier(const String& s) { … }
}
bool IDBIsValidKeyPath(const String& key_path) { … }
void IDBParseKeyPath(const String& key_path,
Vector<String>& elements,
IDBKeyPathParseError& error) { … }
IDBKeyPath::IDBKeyPath(const class String& string)
: … { … }
IDBKeyPath::IDBKeyPath(const Vector<class String>& array)
: … { … }
IDBKeyPath::IDBKeyPath(const V8UnionStringOrStringSequence* key_path) { … }
bool IDBKeyPath::IsValid() const { … }
v8::Local<v8::Value> IDBKeyPath::ToV8(ScriptState* script_state) const { … }
bool IDBKeyPath::operator==(const IDBKeyPath& other) const { … }
}