gecko-dev/dom/indexedDB/ipc/PIndexedDBRequest.ipdl
David Zbarsky 532b86a81a Bug 889734 - Clean up indexedDB ipdl files r=bent
--HG--
rename : dom/indexedDB/ipc/PIndexedDBIndex.ipdl => dom/indexedDB/ipc/IndexedDBParams.ipdlh
2013-08-06 08:44:01 -04:00

114 lines
1.7 KiB
Plaintext

/* 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/. */
include protocol PBlob;
include protocol PIndexedDBCursor;
include protocol PIndexedDBIndex;
include protocol PIndexedDBObjectStore;
include "mozilla/dom/indexedDB/SerializationHelpers.h";
using mozilla::dom::indexedDB::Key;
using mozilla::dom::indexedDB::SerializedStructuredCloneReadInfo;
using mozilla::void_t;
namespace mozilla {
namespace dom {
namespace indexedDB {
namespace ipc {
struct GetResponse
{
SerializedStructuredCloneReadInfo cloneInfo;
PBlob[] blobs;
};
struct GetKeyResponse
{
Key key;
};
struct BlobArray
{
PBlob[] blobs;
};
struct GetAllResponse
{
SerializedStructuredCloneReadInfo[] cloneInfos;
BlobArray[] blobs;
};
struct GetAllKeysResponse
{
Key[] keys;
};
struct AddResponse
{
Key key;
};
struct PutResponse
{
Key key;
};
struct DeleteResponse
{ };
struct ClearResponse
{ };
struct CountResponse
{
uint64_t count;
};
union OpenCursorResponse
{
PIndexedDBCursor;
void_t;
};
struct ContinueResponse
{
Key key;
Key objectKey;
SerializedStructuredCloneReadInfo cloneInfo;
PBlob[] blobs;
};
union ResponseValue
{
nsresult;
GetResponse;
GetKeyResponse;
GetAllResponse;
GetAllKeysResponse;
AddResponse;
PutResponse;
DeleteResponse;
ClearResponse;
CountResponse;
OpenCursorResponse;
ContinueResponse;
};
} // namespace ipc
protocol PIndexedDBRequest
{
manager PIndexedDBObjectStore or PIndexedDBIndex or PIndexedDBCursor;
child:
__delete__(ResponseValue response);
};
} // namespace indexedDB
} // namespace dom
} // namespace mozilla