JavaScriptCore:
Reviewed by Eric.
- fixed <rdar://problem/
4260481> Remove Reference type from JavaScriptCore
Also fixed some bugs with for..in enumeration while I was at it. object
properties now come before prototype properties and duplicates
between object and prototype are listed only once.
* JavaScriptCore.xcodeproj/project.pbxproj:
* kjs/IdentifierSequencedSet.cpp: Added.
(KJS::IdentifierSequencedSet::IdentifierSequencedSet):
(KJS::IdentifierSequencedSet::deallocateVector):
(KJS::IdentifierSequencedSet::~IdentifierSequencedSet):
(KJS::IdentifierSequencedSet::insert):
* kjs/IdentifierSequencedSet.h: Added.
(KJS::IdentifierSequencedSetIterator::IdentifierSequencedSetIterator):
(KJS::IdentifierSequencedSetIterator::operator*):
(KJS::IdentifierSequencedSetIterator::operator->):
(KJS::IdentifierSequencedSetIterator::operator++):
(KJS::IdentifierSequencedSetIterator::operator==):
(KJS::IdentifierSequencedSetIterator::operator!=):
(KJS::IdentifierSequencedSet::begin):
(KJS::IdentifierSequencedSet::end):
(KJS::IdentifierSequencedSet::size):
* kjs/array_instance.h:
* kjs/array_object.cpp:
(ArrayInstanceImp::getPropertyNames):
(ArrayInstanceImp::setLength):
(ArrayInstanceImp::pushUndefinedObjectsToEnd):
* kjs/nodes.cpp:
(ForInNode::execute):
* kjs/nodes.h:
* kjs/object.cpp:
(KJS::ObjectImp::getPropertyNames):
* kjs/object.h:
* kjs/property_map.cpp:
(KJS::PropertyMap::getEnumerablePropertyNames):
(KJS::PropertyMap::getSparseArrayPropertyNames):
* kjs/property_map.h:
* kjs/protect.h:
* kjs/protected_reference.h: Removed.
* kjs/reference.cpp: Removed.
* kjs/reference.h: Removed.
* kjs/reference_list.cpp: Removed.
* kjs/reference_list.h: Removed.
* kjs/ustring.h:
(KJS::UString::impl):
* kxmlcore/HashSet.h:
LayoutTests:
Reviewed by Eric.
- test case for some fixes I made to for..in enumeration. object
properties now come before prototype properties and duplicates
between object and prototype are listed only once.
* fast/js/for-in-expected.txt: Added.
* fast/js/for-in.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@10744
268f45cc-cd09-0410-ab3c-
d52691b4dbfc