IndexedDB: Implement custom bindings for parsing options
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 19 Dec 2012 00:10:20 +0000 (00:10 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 19 Dec 2012 00:10:20 +0000 (00:10 +0000)
commit325c068f0853e31e4862458f23ded0796399a331
tree1fba28c95e6ae6a8cd07c0a9da1867a87d4705bf
parentdab24dbe10ee8f4c6b454594d794e86340cde0cb
IndexedDB: Implement custom bindings for parsing options
https://bugs.webkit.org/show_bug.cgi?id=96614

Patch by Michael Pruett <michael@68k.org> on 2012-12-18
Reviewed by Darin Adler.

Parsing the options dictionary in IDBDatabase.createObjectStore()
and IDBObjectStore.createIndex() requires custom bindings in JSC.

Tests: storage/indexeddb/*

* GNUmakefile.list.am:
* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::createObjectStore):
(WebCore):
* Modules/indexeddb/IDBDatabase.h:
(IDBDatabase):
* Modules/indexeddb/IDBDatabase.idl:
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::createIndex):
(WebCore):
* Modules/indexeddb/IDBObjectStore.h:
(IDBObjectStore):
* Modules/indexeddb/IDBObjectStore.idl:
* UseJSC.cmake:
* bindings/js/IDBBindingUtilities.cpp:
(WebCore::idbKeyPathFromValue): Added utility function for converting a JSValue to an IDBKeyPath.
(WebCore):
* bindings/js/IDBBindingUtilities.h:
(WebCore):
* bindings/js/JSIDBDatabaseCustom.cpp: Added.
(WebCore):
(WebCore::JSIDBDatabase::createObjectStore):
* bindings/js/JSIDBObjectStoreCustom.cpp: Added.
(WebCore):
(WebCore::JSIDBObjectStore::createIndex):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@138081 268f45cc-cd09-0410-ab3c-d52691b4dbfc
13 files changed:
Source/WebCore/ChangeLog
Source/WebCore/GNUmakefile.list.am
Source/WebCore/Modules/indexeddb/IDBDatabase.cpp
Source/WebCore/Modules/indexeddb/IDBDatabase.h
Source/WebCore/Modules/indexeddb/IDBDatabase.idl
Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp
Source/WebCore/Modules/indexeddb/IDBObjectStore.h
Source/WebCore/Modules/indexeddb/IDBObjectStore.idl
Source/WebCore/UseJSC.cmake
Source/WebCore/bindings/js/IDBBindingUtilities.cpp
Source/WebCore/bindings/js/IDBBindingUtilities.h
Source/WebCore/bindings/js/JSIDBDatabaseCustom.cpp [new file with mode: 0644]
Source/WebCore/bindings/js/JSIDBObjectStoreCustom.cpp [new file with mode: 0644]