Lines Matching refs:Shape
2663 // The hash table class is parameterized with a Shape and a Key.
2664 // Shape must be a class with the following interface:
2701 template<typename Shape, typename Key>
2706 if (Shape::UsesSeed) {
2707 return Shape::SeededHash(key,
2710 return Shape::Hash(key);
2715 if (Shape::UsesSeed) {
2716 return Shape::SeededHashForObject(key,
2719 return Shape::HashForObject(key, object);
2788 kPrefixStartIndex + Shape::kPrefixSize;
2789 static const int kEntrySize = Shape::kEntrySize;
2978 template <typename Shape, typename Key>
2979 class Dictionary: public HashTable<Shape, Key> {
2981 static inline Dictionary<Shape, Key>* cast(Object* obj) {
2982 return reinterpret_cast<Dictionary<Shape, Key>*>(obj);
2987 return this->get(HashTable<Shape, Key>::EntryToIndex(entry) + 1);
2992 this->set(HashTable<Shape, Key>::EntryToIndex(entry) + 1, value);
2999 Smi::cast(this->get(HashTable<Shape, Key>::EntryToIndex(entry) + 2)));
3004 this->set(HashTable<Shape, Key>::EntryToIndex(entry) + 2, value.AsSmi());
3081 HashTable<Shape, Key>::kPrefixStartIndex;
6717 // the shape of the string is given its own class so that it can be retrieved
6720 // string can potentially alter its shape. Also be aware that a GC caused by
6721 // something else can alter the shape of a string due to ConsString