Changeset 37381 in webkit for trunk/JavaScriptCore/kjs/PropertyMap.h
- Timestamp:
- Oct 7, 2008, 11:17:37 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/PropertyMap.h
r37370 r37381 43 43 struct PropertyMapEntry { 44 44 UString::Rep* key; 45 unsigned offset;46 45 unsigned attributes; 47 46 unsigned index; … … 49 48 PropertyMapEntry(UString::Rep* k, int a) 50 49 : key(k) 51 , offset(0)52 50 , attributes(a) 53 51 , index(0) … … 97 95 bool isEmpty() { return !m_table; } 98 96 99 size_t get(const Identifier& propertyName); 100 size_t get(const Identifier& propertyName, unsigned& attributes); 101 size_t put(const Identifier& propertyName, unsigned attributes); 102 size_t remove(const Identifier& propertyName); 97 size_t put(const Identifier& propertyName, JSValue*, unsigned attributes, bool checkReadOnly, JSObject* slotBase, PutPropertySlot&, PropertyStorage&); 98 void remove(const Identifier& propertyName, PropertyStorage&); 99 100 size_t getOffset(const Identifier& propertyName); 101 size_t getOffset(const Identifier& propertyName, unsigned& attributes); 103 102 104 103 void getEnumerablePropertyNames(PropertyNameArray&) const; … … 116 115 typedef PropertyMapHashTable Table; 117 116 118 void expand( );119 void rehash( );120 void rehash(unsigned newTableSize );121 void createTable( );117 void expand(PropertyStorage&); 118 void rehash(PropertyStorage&); 119 void rehash(unsigned newTableSize, PropertyStorage&); 120 void createTable(PropertyStorage&); 122 121 123 void insert(const Entry& );122 void insert(const Entry&, JSValue*, PropertyStorage&); 124 123 125 void checkConsistency( );124 void checkConsistency(PropertyStorage&); 126 125 127 126 Table* m_table; 128 Vector<unsigned> m_deletedOffsets;129 127 bool m_getterSetterFlag : 1; 130 128 }; … … 136 134 } 137 135 138 inline size_t PropertyMap::get (const Identifier& propertyName)136 inline size_t PropertyMap::getOffset(const Identifier& propertyName) 139 137 { 140 138 ASSERT(!propertyName.isNull()); … … 156 154 157 155 if (rep == m_table->entries()[entryIndex - 1].key) 158 return m_table->entries()[entryIndex - 1].offset;156 return entryIndex - 2; 159 157 160 158 #if DUMP_PROPERTYMAP_STATS … … 176 174 177 175 if (rep == m_table->entries()[entryIndex - 1].key) 178 return m_table->entries()[entryIndex - 1].offset;176 return entryIndex - 2; 179 177 } 180 178 }
Note:
See TracChangeset
for help on using the changeset viewer.