diff options
Diffstat (limited to 'dom/webidl/IDBIndex.webidl')
-rw-r--r-- | dom/webidl/IDBIndex.webidl | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/dom/webidl/IDBIndex.webidl b/dom/webidl/IDBIndex.webidl new file mode 100644 index 000000000..0e436650a --- /dev/null +++ b/dom/webidl/IDBIndex.webidl @@ -0,0 +1,71 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. + * + * The origin of this IDL file is + * https://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#idl-def-IDBIndexParameters + */ + +dictionary IDBIndexParameters { + boolean unique = false; + boolean multiEntry = false; + // <null>: Not locale-aware, uses normal JS sorting. + // <string>: Always sorted based on the rules of the specified + // locale (e.g. "en-US", etc.). + // "auto": Sorted by the platform default, may change based on + // user agent options. + DOMString? locale = null; +}; + +[Exposed=(Window,Worker,System)] +interface IDBIndex { + [SetterThrows] + attribute DOMString name; + + readonly attribute IDBObjectStore objectStore; + + [Throws] + readonly attribute any keyPath; + + readonly attribute boolean multiEntry; + readonly attribute boolean unique; + + // <null>: Not locale-aware, uses normal JS sorting. + // <string>: Sorted based on the rules of the specified locale. + // Note: never returns "auto", only the current locale. + [Func="mozilla::dom::IndexedDatabaseManager::ExperimentalFeaturesEnabled"] + readonly attribute DOMString? locale; + + [Func="mozilla::dom::IndexedDatabaseManager::ExperimentalFeaturesEnabled"] + readonly attribute boolean isAutoLocale; + + [Throws] + IDBRequest openCursor (optional any range, optional IDBCursorDirection direction = "next"); + + [Throws] + IDBRequest openKeyCursor (optional any range, optional IDBCursorDirection direction = "next"); + + [Throws] + IDBRequest get (any key); + + [Throws] + IDBRequest getKey (any key); + + [Throws] + IDBRequest count (optional any key); +}; + +partial interface IDBIndex { + [Throws] + IDBRequest mozGetAll (optional any key, [EnforceRange] optional unsigned long limit); + + [Throws] + IDBRequest mozGetAllKeys (optional any key, [EnforceRange] optional unsigned long limit); + + [Throws] + IDBRequest getAll (optional any key, [EnforceRange] optional unsigned long limit); + + [Throws] + IDBRequest getAllKeys (optional any key, [EnforceRange] optional unsigned long limit); +}; |