Lines Matching refs:key

44                                                                const JSHandle<JSTaggedValue> &key,
47 ASSERT(IsKey(key.GetTaggedValue()));
48 int hash = LinkedHash::Hash(thread, key.GetTaggedValue());
49 int entry = table->FindElement(thread, key.GetTaggedValue());
60 newTable->SetKey(thread, entry, key.GetTaggedValue());
69 const JSHandle<Derived> &table, const JSHandle<JSTaggedValue> &key, const JSHandle<JSTaggedValue> &value)
72 ASSERT(IsKey(key.GetTaggedValue()));
73 int hash = LinkedHash::Hash(thread, key.GetTaggedValue());
74 int entry = table->FindElement(thread, key.GetTaggedValue());
85 JSTaggedValue weakKey(key->CreateAndGetWeakRef());
87 // The ENTRY_VALUE_INDEX of LinkedHashSet is 0. SetValue will cause the overwitten key.
112 const JSHandle<JSTaggedValue> &key)
114 int entry = table->FindElement(thread, key.GetTaggedValue());
146 const JSHandle<JSTaggedValue> &key)
148 return LinkedHashTable<LinkedHashMap, LinkedHashMapObject>::Remove(thread, obj, key);
152 const JSHandle<JSTaggedValue> &key, const JSHandle<JSTaggedValue> &value)
154 return LinkedHashTable<LinkedHashMap, LinkedHashMapObject>::Insert(thread, obj, key, value);
158 const JSHandle<JSTaggedValue> &key, const JSHandle<JSTaggedValue> &value)
160 return LinkedHashTable<LinkedHashMap, LinkedHashMapObject>::InsertWeakRef(thread, obj, key, value);
163 JSTaggedValue LinkedHashMap::Get(const JSThread *thread, JSTaggedValue key) const
165 int entry = FindElement(thread, key);
172 bool LinkedHashMap::Has(const JSThread *thread, JSTaggedValue key) const
174 int entry = FindElement(thread, key);
209 const JSHandle<JSTaggedValue> &key)
211 return LinkedHashTable<LinkedHashSet, LinkedHashSetObject>::Remove(thread, obj, key);
215 const JSHandle<JSTaggedValue> &key)
217 return LinkedHashTable<LinkedHashSet, LinkedHashSetObject>::Insert(thread, obj, key, key);
221 const JSHandle<JSTaggedValue> &key)
223 return LinkedHashTable<LinkedHashSet, LinkedHashSetObject>::InsertWeakRef(thread, obj, key, key);
226 bool LinkedHashSet::Has(const JSThread *thread, JSTaggedValue key) const
228 int entry = FindElement(thread, key);
256 int LinkedHash::Hash(const JSThread *thread, JSTaggedValue key)
258 if (key.IsInt()) {
259 return key.GetInt();
261 if (key.IsSymbol()) {
262 auto symbolString = JSSymbol::Cast(key.GetTaggedObject());
265 if (key.IsString()) {
266 auto keyString = reinterpret_cast<EcmaString *>(key.GetTaggedObject());
269 if (key.IsECMAObject()) {
270 int32_t hash = ECMAObject::Cast(key.GetTaggedObject())->GetHash();
273 JSHandle<ECMAObject> ecmaObj(thread, key);
278 if (key.IsBigInt()) {
279 uint32_t keyValue = BigInt::Cast(key.GetTaggedObject())->GetDigit(0);
283 if (key.IsDouble()) {
284 key = JSTaggedValue::TryCastDoubleToInt32(key.GetDouble());
285 if (key.IsInt()) {
286 return key.GetInt();
289 uint64_t keyValue = key.GetRawData();