-
oliver@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=120549 Reviewed by Filip Pizlo. Source/JavaScriptCore: We simply reuse the MapData type from JSMap making the it much simpler. * JavaScriptCore.xcodeproj/project.pbxproj: * runtime/CommonIdentifiers.h: * runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::reset): (JSC::JSGlobalObject::visitChildren): * runtime/JSGlobalObject.h: (JSC::JSGlobalObject::setStructure): * runtime/JSSet.cpp: Added. (JSC::JSSet::visitChildren): (JSC::JSSet::finishCreation): * runtime/JSSet.h: Added. (JSC::JSSet::createStructure): (JSC::JSSet::create): (JSC::JSSet::mapData): (JSC::JSSet::JSSet): * runtime/SetConstructor.cpp: Added. (JSC::SetConstructor::finishCreation): (JSC::callSet): (JSC::constructSet): (JSC::SetConstructor::getConstructData): (JSC::SetConstructor::getCallData): * runtime/SetConstructor.h: Added. (JSC::SetConstructor::create): (JSC::SetConstructor::createStructure): (JSC::SetConstructor::SetConstructor): * runtime/SetPrototype.cpp: Added. (JSC::SetPrototype::finishCreation): (JSC::getMapData): (JSC::setProtoFuncAdd): (JSC::setProtoFuncClear): (JSC::setProtoFuncDelete): (JSC::setProtoFuncForEach): (JSC::setProtoFuncHas): (JSC::setProtoFuncSize): * runtime/SetPrototype.h: Added. (JSC::SetPrototype::create): (JSC::SetPrototype::createStructure): (JSC::SetPrototype::SetPrototype): LayoutTests: Add tests * fast/js/basic-set-expected.txt: Added. * fast/js/basic-set.html: Added. * fast/js/script-tests/basic-set.js: Added. (set new): (otherString.string_appeared_here.set add): (try.set forEach): (set forEach): (set gc): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154916 268f45cc-cd09-0410-ab3c-d52691b4dbfc
b8d80ed3