// // Automatically generated by ipdlc. // Edit at your own risk // #include "mozilla/dom/indexedDB/SerializationHelpers.h" #include "mozilla/dom/indexedDB/ActorsChild.h" #include "mozilla/dom/indexedDB/PBackgroundIDBTransactionParent.h" #include "mozilla/dom/indexedDB/PBackgroundIDBTransactionChild.h" #include "mozilla/dom/indexedDB/PBackgroundIDBVersionChangeTransactionParent.h" #include "mozilla/dom/indexedDB/PBackgroundIDBVersionChangeTransactionChild.h" #include "mozilla/dom/indexedDB/SerializationHelpers.h" #include "mozilla/dom/quota/SerializationHelpers.h" #include "mozilla/dom/indexedDB/PBackgroundIDBCursor.h" #include "mozilla/dom/indexedDB/PBackgroundIDBCursorParent.h" #include "mozilla/dom/indexedDB/PBackgroundIDBCursorChild.h" #include "ipc/IPCMessageUtils.h" #include "ipc/IPCMessageUtilsSpecializations.h" #include "nsIFile.h" #include "mozilla/ipc/Endpoint.h" #include "mozilla/ipc/ProtocolMessageUtils.h" #include "mozilla/ipc/ProtocolUtils.h" #include "mozilla/ipc/ShmemMessageUtils.h" #include "mozilla/ipc/TaintingIPCUtils.h" namespace mozilla { namespace dom { namespace indexedDB { namespace PBackgroundIDBCursor { nsresult CreateEndpoints( mozilla::ipc::EndpointProcInfo aParentDestInfo, mozilla::ipc::EndpointProcInfo aChildDestInfo, mozilla::ipc::Endpoint<::mozilla::dom::indexedDB::PBackgroundIDBCursorParent>* aParent, mozilla::ipc::Endpoint<::mozilla::dom::indexedDB::PBackgroundIDBCursorChild>* aChild) { return mozilla::ipc::CreateEndpoints( mozilla::ipc::PrivateIPDLInterface(), aParentDestInfo, aChildDestInfo, aParent, aChild); } mozilla::UniquePtr Msg_DeleteMe(IPC::Message::routeid_t routingId) { return IPC::Message::IPDLMessage(routingId, Msg_DeleteMe__ID, 0, IPC::Message::HeaderFlags(IPC::Message::NOT_NESTED, IPC::Message::NORMAL_PRIORITY, IPC::Message::COMPRESSION_NONE, IPC::Message::EAGER_SEND, IPC::Message::NOT_CONSTRUCTOR, IPC::Message::ASYNC, IPC::Message::NOT_REPLY)); } mozilla::UniquePtr Msg_Continue(IPC::Message::routeid_t routingId) { return IPC::Message::IPDLMessage(routingId, Msg_Continue__ID, 0, IPC::Message::HeaderFlags(IPC::Message::NOT_NESTED, IPC::Message::NORMAL_PRIORITY, IPC::Message::COMPRESSION_NONE, IPC::Message::EAGER_SEND, IPC::Message::NOT_CONSTRUCTOR, IPC::Message::ASYNC, IPC::Message::NOT_REPLY)); } mozilla::UniquePtr Msg___delete__(IPC::Message::routeid_t routingId) { return IPC::Message::IPDLMessage(routingId, Msg___delete____ID, 0, IPC::Message::HeaderFlags(IPC::Message::NOT_NESTED, IPC::Message::NORMAL_PRIORITY, IPC::Message::COMPRESSION_NONE, IPC::Message::EAGER_SEND, IPC::Message::NOT_CONSTRUCTOR, IPC::Message::ASYNC, IPC::Message::NOT_REPLY)); } mozilla::UniquePtr Reply___delete__(IPC::Message::routeid_t routingId) { return IPC::Message::IPDLMessage(routingId, Reply___delete____ID, 0, IPC::Message::HeaderFlags(IPC::Message::NOT_NESTED, IPC::Message::NORMAL_PRIORITY, IPC::Message::COMPRESSION_NONE, IPC::Message::EAGER_SEND, IPC::Message::NOT_CONSTRUCTOR, IPC::Message::ASYNC, IPC::Message::REPLY)); } mozilla::UniquePtr Msg_Response(IPC::Message::routeid_t routingId) { return IPC::Message::IPDLMessage(routingId, Msg_Response__ID, 0, IPC::Message::HeaderFlags(IPC::Message::NOT_NESTED, IPC::Message::NORMAL_PRIORITY, IPC::Message::COMPRESSION_NONE, IPC::Message::EAGER_SEND, IPC::Message::NOT_CONSTRUCTOR, IPC::Message::ASYNC, IPC::Message::NOT_REPLY)); } } // namespace PBackgroundIDBCursor } // namespace indexedDB } // namespace dom } // namespace mozilla //----------------------------------------------------------------------------- // Method definitions for the IPDL type |struct ContinueParams| // namespace mozilla { namespace dom { namespace indexedDB { } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::ContinueParams>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { IPC::WriteParam(aWriter, (aVar).key()); // Sentinel = 'key' (aWriter)->WriteSentinel(42402122); } auto ParamTraits<::mozilla::dom::indexedDB::ContinueParams>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { auto maybe___key = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___key) { aReader->FatalError("Error deserializing 'key' (Key) member of 'ContinueParams'"); return {}; } auto& _key = *maybe___key; // Sentinel = 'key' if ((!((aReader)->ReadSentinel(42402122)))) { mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ContinueParams'"); return {}; } IPC::ReadResult result__{ std::in_place, std::move(_key)}; return result__; } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |struct ContinuePrimaryKeyParams| // namespace mozilla { namespace dom { namespace indexedDB { } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::ContinuePrimaryKeyParams>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { IPC::WriteParam(aWriter, (aVar).key()); // Sentinel = 'key' (aWriter)->WriteSentinel(42402122); IPC::WriteParam(aWriter, (aVar).primaryKey()); // Sentinel = 'primaryKey' (aWriter)->WriteSentinel(389481518); } auto ParamTraits<::mozilla::dom::indexedDB::ContinuePrimaryKeyParams>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { auto maybe___key = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___key) { aReader->FatalError("Error deserializing 'key' (Key) member of 'ContinuePrimaryKeyParams'"); return {}; } auto& _key = *maybe___key; // Sentinel = 'key' if ((!((aReader)->ReadSentinel(42402122)))) { mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ContinuePrimaryKeyParams'"); return {}; } auto maybe___primaryKey = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___primaryKey) { aReader->FatalError("Error deserializing 'primaryKey' (Key) member of 'ContinuePrimaryKeyParams'"); return {}; } auto& _primaryKey = *maybe___primaryKey; // Sentinel = 'primaryKey' if ((!((aReader)->ReadSentinel(389481518)))) { mozilla::ipc::SentinelReadError("Error deserializing 'primaryKey' (Key) member of 'ContinuePrimaryKeyParams'"); return {}; } IPC::ReadResult result__{ std::in_place, std::move(_key), std::move(_primaryKey)}; return result__; } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |struct AdvanceParams| // namespace mozilla { namespace dom { namespace indexedDB { } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::AdvanceParams>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { (aWriter)->WriteBytes((&((aVar).count())), 4); // Sentinel = 'count' (aWriter)->WriteSentinel(106889770); } auto ParamTraits<::mozilla::dom::indexedDB::AdvanceParams>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { IPC::ReadResult result__{ std::in_place, ::uint32_t{0}}; if ((!((aReader)->ReadBytesInto((&((result__)->count())), 4)))) { aReader->FatalError("Error bulk reading fields from uint32_t"); return {}; } // Sentinel = 'count' if ((!((aReader)->ReadSentinel(106889770)))) { mozilla::ipc::SentinelReadError("Error bulk reading fields from uint32_t"); return {}; } return result__; } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |union CursorRequestParams| // namespace mozilla { namespace dom { namespace indexedDB { auto CursorRequestParams::MaybeDestroy() -> void { if ((mType) == (T__None)) { return; } switch (mType) { case TContinueParams: { (ptr_ContinueParams())->~ContinueParams__tdef(); break; } case TContinuePrimaryKeyParams: { (ptr_ContinuePrimaryKeyParams())->~ContinuePrimaryKeyParams__tdef(); break; } case TAdvanceParams: { (ptr_AdvanceParams())->~AdvanceParams__tdef(); break; } default: { mozilla::ipc::LogicError("not reached"); break; } } } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(const ContinueParams& aOther) { new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams(aOther); mType = TContinueParams; } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(ContinueParams&& aOther) { new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams(std::move(aOther)); mType = TContinueParams; } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(const ContinuePrimaryKeyParams& aOther) { new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams(aOther); mType = TContinuePrimaryKeyParams; } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(ContinuePrimaryKeyParams&& aOther) { new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams(std::move(aOther)); mType = TContinuePrimaryKeyParams; } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(const AdvanceParams& aOther) { new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams(aOther); mType = TAdvanceParams; } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(AdvanceParams&& aOther) { new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams(std::move(aOther)); mType = TAdvanceParams; } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(const CursorRequestParams& aOther) { (aOther).AssertSanity(); switch ((aOther).type()) { case TContinueParams: { new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams((aOther).get_ContinueParams()); break; } case TContinuePrimaryKeyParams: { new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams((aOther).get_ContinuePrimaryKeyParams()); break; } case TAdvanceParams: { new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams((aOther).get_AdvanceParams()); break; } case T__None: { break; } default: { mozilla::ipc::LogicError("unreached"); return; } } mType = (aOther).type(); } MOZ_IMPLICIT CursorRequestParams::CursorRequestParams(CursorRequestParams&& aOther) { (aOther).AssertSanity(); Type t = (aOther).type(); switch (t) { case TContinueParams: { new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams(std::move((aOther).get_ContinueParams())); (aOther).MaybeDestroy(); break; } case TContinuePrimaryKeyParams: { new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams(std::move((aOther).get_ContinuePrimaryKeyParams())); (aOther).MaybeDestroy(); break; } case TAdvanceParams: { new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams(std::move((aOther).get_AdvanceParams())); (aOther).MaybeDestroy(); break; } case T__None: { break; } default: { mozilla::ipc::LogicError("unreached"); return; } } (aOther).mType = T__None; mType = t; } CursorRequestParams::~CursorRequestParams() { MaybeDestroy(); } auto CursorRequestParams::operator=(const ContinueParams& aRhs) -> CursorRequestParams& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams(aRhs); mType = TContinueParams; return (*(this)); } auto CursorRequestParams::operator=(ContinueParams&& aRhs) -> CursorRequestParams& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams(std::move(aRhs)); mType = TContinueParams; return (*(this)); } auto CursorRequestParams::operator=(const ContinuePrimaryKeyParams& aRhs) -> CursorRequestParams& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams(aRhs); mType = TContinuePrimaryKeyParams; return (*(this)); } auto CursorRequestParams::operator=(ContinuePrimaryKeyParams&& aRhs) -> CursorRequestParams& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams(std::move(aRhs)); mType = TContinuePrimaryKeyParams; return (*(this)); } auto CursorRequestParams::operator=(const AdvanceParams& aRhs) -> CursorRequestParams& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams(aRhs); mType = TAdvanceParams; return (*(this)); } auto CursorRequestParams::operator=(AdvanceParams&& aRhs) -> CursorRequestParams& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams(std::move(aRhs)); mType = TAdvanceParams; return (*(this)); } auto CursorRequestParams::operator=(const CursorRequestParams& aRhs) -> CursorRequestParams& { (aRhs).AssertSanity(); Type t = (aRhs).type(); switch (t) { case TContinueParams: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams((aRhs).get_ContinueParams()); break; } case TContinuePrimaryKeyParams: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams((aRhs).get_ContinuePrimaryKeyParams()); break; } case TAdvanceParams: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams((aRhs).get_AdvanceParams()); break; } case T__None: { MaybeDestroy(); break; } default: { mozilla::ipc::LogicError("unreached"); break; } } mType = t; return (*(this)); } auto CursorRequestParams::operator=(CursorRequestParams&& aRhs) -> CursorRequestParams& { (aRhs).AssertSanity(); Type t = (aRhs).type(); switch (t) { case TContinueParams: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinueParams()) ContinueParams(std::move((aRhs).get_ContinueParams())); (aRhs).MaybeDestroy(); break; } case TContinuePrimaryKeyParams: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ContinuePrimaryKeyParams()) ContinuePrimaryKeyParams(std::move((aRhs).get_ContinuePrimaryKeyParams())); (aRhs).MaybeDestroy(); break; } case TAdvanceParams: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_AdvanceParams()) AdvanceParams(std::move((aRhs).get_AdvanceParams())); (aRhs).MaybeDestroy(); break; } case T__None: { MaybeDestroy(); break; } default: { mozilla::ipc::LogicError("unreached"); break; } } (aRhs).mType = T__None; mType = t; return (*(this)); } } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::CursorRequestParams>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { typedef ::mozilla::dom::indexedDB::CursorRequestParams union__; int type = (aVar).type(); IPC::WriteParam(aWriter, type); // Sentinel = 'CursorRequestParams' (aWriter)->WriteSentinel(1298532300); switch (type) { case union__::TContinueParams: { IPC::WriteParam(aWriter, (aVar).get_ContinueParams()); // Sentinel = 'TContinueParams' (aWriter)->WriteSentinel(785122814); return; } case union__::TContinuePrimaryKeyParams: { IPC::WriteParam(aWriter, (aVar).get_ContinuePrimaryKeyParams()); // Sentinel = 'TContinuePrimaryKeyParams' (aWriter)->WriteSentinel(2164984331); return; } case union__::TAdvanceParams: { IPC::WriteParam(aWriter, (aVar).get_AdvanceParams()); // Sentinel = 'TAdvanceParams' (aWriter)->WriteSentinel(657786219); return; } default: { aWriter->FatalError("unknown variant of union CursorRequestParams"); return; } } } auto ParamTraits<::mozilla::dom::indexedDB::CursorRequestParams>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { typedef ::mozilla::dom::indexedDB::CursorRequestParams union__; auto maybe__type = IPC::ReadParam(aReader); if (!maybe__type) { aReader->FatalError("Error deserializing type of union CursorRequestParams"); return {}; } auto& type = *maybe__type; // Sentinel = 'CursorRequestParams' if ((!((aReader)->ReadSentinel(1298532300)))) { mozilla::ipc::SentinelReadError("Error deserializing type of union CursorRequestParams"); return {}; } switch (type) { case union__::TContinueParams: { auto maybe__tmp = IPC::ReadParam<::mozilla::dom::indexedDB::ContinueParams>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant TContinueParams of union CursorRequestParams"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'TContinueParams' if ((!((aReader)->ReadSentinel(785122814)))) { mozilla::ipc::SentinelReadError("Error deserializing variant TContinueParams of union CursorRequestParams"); return {}; } return std::move(tmp); } case union__::TContinuePrimaryKeyParams: { auto maybe__tmp = IPC::ReadParam<::mozilla::dom::indexedDB::ContinuePrimaryKeyParams>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant TContinuePrimaryKeyParams of union CursorRequestParams"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'TContinuePrimaryKeyParams' if ((!((aReader)->ReadSentinel(2164984331)))) { mozilla::ipc::SentinelReadError("Error deserializing variant TContinuePrimaryKeyParams of union CursorRequestParams"); return {}; } return std::move(tmp); } case union__::TAdvanceParams: { auto maybe__tmp = IPC::ReadParam<::mozilla::dom::indexedDB::AdvanceParams>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant TAdvanceParams of union CursorRequestParams"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'TAdvanceParams' if ((!((aReader)->ReadSentinel(657786219)))) { mozilla::ipc::SentinelReadError("Error deserializing variant TAdvanceParams of union CursorRequestParams"); return {}; } return std::move(tmp); } default: { aReader->FatalError("unknown variant of union CursorRequestParams"); return {}; } } } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |struct ObjectStoreCursorResponse| // namespace mozilla { namespace dom { namespace indexedDB { } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::ObjectStoreCursorResponse>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { IPC::WriteParam(aWriter, (aVar).key()); // Sentinel = 'key' (aWriter)->WriteSentinel(42402122); IPC::WriteParam(aWriter, (aVar).cloneInfo()); // Sentinel = 'cloneInfo' (aWriter)->WriteSentinel(304284574); } auto ParamTraits<::mozilla::dom::indexedDB::ObjectStoreCursorResponse>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { auto maybe___key = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___key) { aReader->FatalError("Error deserializing 'key' (Key) member of 'ObjectStoreCursorResponse'"); return {}; } auto& _key = *maybe___key; // Sentinel = 'key' if ((!((aReader)->ReadSentinel(42402122)))) { mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ObjectStoreCursorResponse'"); return {}; } auto maybe___cloneInfo = IPC::ReadParam<::mozilla::dom::indexedDB::SerializedStructuredCloneReadInfo>(aReader); if (!maybe___cloneInfo) { aReader->FatalError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'ObjectStoreCursorResponse'"); return {}; } auto& _cloneInfo = *maybe___cloneInfo; // Sentinel = 'cloneInfo' if ((!((aReader)->ReadSentinel(304284574)))) { mozilla::ipc::SentinelReadError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'ObjectStoreCursorResponse'"); return {}; } IPC::ReadResult result__{ std::in_place, std::move(_key), std::move(_cloneInfo)}; return result__; } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |struct ObjectStoreKeyCursorResponse| // namespace mozilla { namespace dom { namespace indexedDB { } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::ObjectStoreKeyCursorResponse>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { IPC::WriteParam(aWriter, (aVar).key()); // Sentinel = 'key' (aWriter)->WriteSentinel(42402122); } auto ParamTraits<::mozilla::dom::indexedDB::ObjectStoreKeyCursorResponse>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { auto maybe___key = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___key) { aReader->FatalError("Error deserializing 'key' (Key) member of 'ObjectStoreKeyCursorResponse'"); return {}; } auto& _key = *maybe___key; // Sentinel = 'key' if ((!((aReader)->ReadSentinel(42402122)))) { mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ObjectStoreKeyCursorResponse'"); return {}; } IPC::ReadResult result__{ std::in_place, std::move(_key)}; return result__; } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |struct IndexCursorResponse| // namespace mozilla { namespace dom { namespace indexedDB { } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::IndexCursorResponse>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { IPC::WriteParam(aWriter, (aVar).key()); // Sentinel = 'key' (aWriter)->WriteSentinel(42402122); IPC::WriteParam(aWriter, (aVar).sortKey()); // Sentinel = 'sortKey' (aWriter)->WriteSentinel(200540914); IPC::WriteParam(aWriter, (aVar).objectKey()); // Sentinel = 'objectKey' (aWriter)->WriteSentinel(304546721); IPC::WriteParam(aWriter, (aVar).cloneInfo()); // Sentinel = 'cloneInfo' (aWriter)->WriteSentinel(304284574); } auto ParamTraits<::mozilla::dom::indexedDB::IndexCursorResponse>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { auto maybe___key = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___key) { aReader->FatalError("Error deserializing 'key' (Key) member of 'IndexCursorResponse'"); return {}; } auto& _key = *maybe___key; // Sentinel = 'key' if ((!((aReader)->ReadSentinel(42402122)))) { mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'IndexCursorResponse'"); return {}; } auto maybe___sortKey = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___sortKey) { aReader->FatalError("Error deserializing 'sortKey' (Key) member of 'IndexCursorResponse'"); return {}; } auto& _sortKey = *maybe___sortKey; // Sentinel = 'sortKey' if ((!((aReader)->ReadSentinel(200540914)))) { mozilla::ipc::SentinelReadError("Error deserializing 'sortKey' (Key) member of 'IndexCursorResponse'"); return {}; } auto maybe___objectKey = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___objectKey) { aReader->FatalError("Error deserializing 'objectKey' (Key) member of 'IndexCursorResponse'"); return {}; } auto& _objectKey = *maybe___objectKey; // Sentinel = 'objectKey' if ((!((aReader)->ReadSentinel(304546721)))) { mozilla::ipc::SentinelReadError("Error deserializing 'objectKey' (Key) member of 'IndexCursorResponse'"); return {}; } auto maybe___cloneInfo = IPC::ReadParam<::mozilla::dom::indexedDB::SerializedStructuredCloneReadInfo>(aReader); if (!maybe___cloneInfo) { aReader->FatalError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'IndexCursorResponse'"); return {}; } auto& _cloneInfo = *maybe___cloneInfo; // Sentinel = 'cloneInfo' if ((!((aReader)->ReadSentinel(304284574)))) { mozilla::ipc::SentinelReadError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'IndexCursorResponse'"); return {}; } IPC::ReadResult result__{ std::in_place, std::move(_key), std::move(_sortKey), std::move(_objectKey), std::move(_cloneInfo)}; return result__; } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |struct IndexKeyCursorResponse| // namespace mozilla { namespace dom { namespace indexedDB { } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::IndexKeyCursorResponse>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { IPC::WriteParam(aWriter, (aVar).key()); // Sentinel = 'key' (aWriter)->WriteSentinel(42402122); IPC::WriteParam(aWriter, (aVar).sortKey()); // Sentinel = 'sortKey' (aWriter)->WriteSentinel(200540914); IPC::WriteParam(aWriter, (aVar).objectKey()); // Sentinel = 'objectKey' (aWriter)->WriteSentinel(304546721); } auto ParamTraits<::mozilla::dom::indexedDB::IndexKeyCursorResponse>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { auto maybe___key = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___key) { aReader->FatalError("Error deserializing 'key' (Key) member of 'IndexKeyCursorResponse'"); return {}; } auto& _key = *maybe___key; // Sentinel = 'key' if ((!((aReader)->ReadSentinel(42402122)))) { mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'IndexKeyCursorResponse'"); return {}; } auto maybe___sortKey = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___sortKey) { aReader->FatalError("Error deserializing 'sortKey' (Key) member of 'IndexKeyCursorResponse'"); return {}; } auto& _sortKey = *maybe___sortKey; // Sentinel = 'sortKey' if ((!((aReader)->ReadSentinel(200540914)))) { mozilla::ipc::SentinelReadError("Error deserializing 'sortKey' (Key) member of 'IndexKeyCursorResponse'"); return {}; } auto maybe___objectKey = IPC::ReadParam<::mozilla::dom::indexedDB::Key>(aReader); if (!maybe___objectKey) { aReader->FatalError("Error deserializing 'objectKey' (Key) member of 'IndexKeyCursorResponse'"); return {}; } auto& _objectKey = *maybe___objectKey; // Sentinel = 'objectKey' if ((!((aReader)->ReadSentinel(304546721)))) { mozilla::ipc::SentinelReadError("Error deserializing 'objectKey' (Key) member of 'IndexKeyCursorResponse'"); return {}; } IPC::ReadResult result__{ std::in_place, std::move(_key), std::move(_sortKey), std::move(_objectKey)}; return result__; } } // namespace IPC //----------------------------------------------------------------------------- // Method definitions for the IPDL type |union CursorResponse| // namespace mozilla { namespace dom { namespace indexedDB { auto CursorResponse::MaybeDestroy() -> void { if ((mType) == (T__None)) { return; } switch (mType) { case Tvoid_t: { (ptr_void_t())->~void_t__tdef(); break; } case Tnsresult: { (ptr_nsresult())->~nsresult__tdef(); break; } case TArrayOfObjectStoreCursorResponse: { (ptr_ArrayOfObjectStoreCursorResponse())->~ArrayOfObjectStoreCursorResponse__tdef(); break; } case TArrayOfObjectStoreKeyCursorResponse: { (ptr_ArrayOfObjectStoreKeyCursorResponse())->~ArrayOfObjectStoreKeyCursorResponse__tdef(); break; } case TArrayOfIndexCursorResponse: { (ptr_ArrayOfIndexCursorResponse())->~ArrayOfIndexCursorResponse__tdef(); break; } case TArrayOfIndexKeyCursorResponse: { (ptr_ArrayOfIndexKeyCursorResponse())->~ArrayOfIndexKeyCursorResponse__tdef(); break; } default: { mozilla::ipc::LogicError("not reached"); break; } } } MOZ_IMPLICIT CursorResponse::CursorResponse(const void_t& aOther) { new (mozilla::KnownNotNull, ptr_void_t()) void_t(aOther); mType = Tvoid_t; } MOZ_IMPLICIT CursorResponse::CursorResponse(void_t&& aOther) { new (mozilla::KnownNotNull, ptr_void_t()) void_t(std::move(aOther)); mType = Tvoid_t; } MOZ_IMPLICIT CursorResponse::CursorResponse(const nsresult& aOther) { new (mozilla::KnownNotNull, ptr_nsresult()) nsresult(aOther); mType = Tnsresult; } MOZ_IMPLICIT CursorResponse::CursorResponse(nsresult&& aOther) { new (mozilla::KnownNotNull, ptr_nsresult()) nsresult(std::move(aOther)); mType = Tnsresult; } MOZ_IMPLICIT CursorResponse::CursorResponse(nsTArray&& aOther) { new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreCursorResponse()) nsTArray(std::move(aOther)); mType = TArrayOfObjectStoreCursorResponse; } MOZ_IMPLICIT CursorResponse::CursorResponse(const nsTArray& aOther) { new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreKeyCursorResponse()) nsTArray((aOther).Clone()); mType = TArrayOfObjectStoreKeyCursorResponse; } MOZ_IMPLICIT CursorResponse::CursorResponse(nsTArray&& aOther) { new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreKeyCursorResponse()) nsTArray(std::move(aOther)); mType = TArrayOfObjectStoreKeyCursorResponse; } MOZ_IMPLICIT CursorResponse::CursorResponse(nsTArray&& aOther) { new (mozilla::KnownNotNull, ptr_ArrayOfIndexCursorResponse()) nsTArray(std::move(aOther)); mType = TArrayOfIndexCursorResponse; } MOZ_IMPLICIT CursorResponse::CursorResponse(const nsTArray& aOther) { new (mozilla::KnownNotNull, ptr_ArrayOfIndexKeyCursorResponse()) nsTArray((aOther).Clone()); mType = TArrayOfIndexKeyCursorResponse; } MOZ_IMPLICIT CursorResponse::CursorResponse(nsTArray&& aOther) { new (mozilla::KnownNotNull, ptr_ArrayOfIndexKeyCursorResponse()) nsTArray(std::move(aOther)); mType = TArrayOfIndexKeyCursorResponse; } MOZ_IMPLICIT CursorResponse::CursorResponse(CursorResponse&& aOther) { (aOther).AssertSanity(); Type t = (aOther).type(); switch (t) { case Tvoid_t: { new (mozilla::KnownNotNull, ptr_void_t()) void_t(std::move((aOther).get_void_t())); (aOther).MaybeDestroy(); break; } case Tnsresult: { new (mozilla::KnownNotNull, ptr_nsresult()) nsresult(std::move((aOther).get_nsresult())); (aOther).MaybeDestroy(); break; } case TArrayOfObjectStoreCursorResponse: { new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreCursorResponse()) nsTArray(std::move((aOther).get_ArrayOfObjectStoreCursorResponse())); (aOther).MaybeDestroy(); break; } case TArrayOfObjectStoreKeyCursorResponse: { new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreKeyCursorResponse()) nsTArray(std::move((aOther).get_ArrayOfObjectStoreKeyCursorResponse())); (aOther).MaybeDestroy(); break; } case TArrayOfIndexCursorResponse: { new (mozilla::KnownNotNull, ptr_ArrayOfIndexCursorResponse()) nsTArray(std::move((aOther).get_ArrayOfIndexCursorResponse())); (aOther).MaybeDestroy(); break; } case TArrayOfIndexKeyCursorResponse: { new (mozilla::KnownNotNull, ptr_ArrayOfIndexKeyCursorResponse()) nsTArray(std::move((aOther).get_ArrayOfIndexKeyCursorResponse())); (aOther).MaybeDestroy(); break; } case T__None: { break; } default: { mozilla::ipc::LogicError("unreached"); return; } } (aOther).mType = T__None; mType = t; } CursorResponse::~CursorResponse() { MaybeDestroy(); } auto CursorResponse::operator=(const void_t& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_void_t()) void_t(aRhs); mType = Tvoid_t; return (*(this)); } auto CursorResponse::operator=(void_t&& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_void_t()) void_t(std::move(aRhs)); mType = Tvoid_t; return (*(this)); } auto CursorResponse::operator=(const nsresult& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_nsresult()) nsresult(aRhs); mType = Tnsresult; return (*(this)); } auto CursorResponse::operator=(nsresult&& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_nsresult()) nsresult(std::move(aRhs)); mType = Tnsresult; return (*(this)); } auto CursorResponse::operator=(nsTArray&& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreCursorResponse()) nsTArray(std::move(aRhs)); mType = TArrayOfObjectStoreCursorResponse; return (*(this)); } auto CursorResponse::operator=(const nsTArray& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreKeyCursorResponse()) nsTArray((aRhs).Clone()); mType = TArrayOfObjectStoreKeyCursorResponse; return (*(this)); } auto CursorResponse::operator=(nsTArray&& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreKeyCursorResponse()) nsTArray(std::move(aRhs)); mType = TArrayOfObjectStoreKeyCursorResponse; return (*(this)); } auto CursorResponse::operator=(nsTArray&& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfIndexCursorResponse()) nsTArray(std::move(aRhs)); mType = TArrayOfIndexCursorResponse; return (*(this)); } auto CursorResponse::operator=(const nsTArray& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfIndexKeyCursorResponse()) nsTArray((aRhs).Clone()); mType = TArrayOfIndexKeyCursorResponse; return (*(this)); } auto CursorResponse::operator=(nsTArray&& aRhs) -> CursorResponse& { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfIndexKeyCursorResponse()) nsTArray(std::move(aRhs)); mType = TArrayOfIndexKeyCursorResponse; return (*(this)); } auto CursorResponse::operator=(CursorResponse&& aRhs) -> CursorResponse& { (aRhs).AssertSanity(); Type t = (aRhs).type(); switch (t) { case Tvoid_t: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_void_t()) void_t(std::move((aRhs).get_void_t())); (aRhs).MaybeDestroy(); break; } case Tnsresult: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_nsresult()) nsresult(std::move((aRhs).get_nsresult())); (aRhs).MaybeDestroy(); break; } case TArrayOfObjectStoreCursorResponse: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreCursorResponse()) nsTArray(std::move((aRhs).get_ArrayOfObjectStoreCursorResponse())); (aRhs).MaybeDestroy(); break; } case TArrayOfObjectStoreKeyCursorResponse: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfObjectStoreKeyCursorResponse()) nsTArray(std::move((aRhs).get_ArrayOfObjectStoreKeyCursorResponse())); (aRhs).MaybeDestroy(); break; } case TArrayOfIndexCursorResponse: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfIndexCursorResponse()) nsTArray(std::move((aRhs).get_ArrayOfIndexCursorResponse())); (aRhs).MaybeDestroy(); break; } case TArrayOfIndexKeyCursorResponse: { MaybeDestroy(); new (mozilla::KnownNotNull, ptr_ArrayOfIndexKeyCursorResponse()) nsTArray(std::move((aRhs).get_ArrayOfIndexKeyCursorResponse())); (aRhs).MaybeDestroy(); break; } case T__None: { MaybeDestroy(); break; } default: { mozilla::ipc::LogicError("unreached"); break; } } (aRhs).mType = T__None; mType = t; return (*(this)); } } // namespace indexedDB } // namespace dom } // namespace mozilla namespace IPC { auto ParamTraits<::mozilla::dom::indexedDB::CursorResponse>::Write( IPC::MessageWriter* aWriter, const paramType& aVar) -> void { typedef ::mozilla::dom::indexedDB::CursorResponse union__; int type = (aVar).type(); IPC::WriteParam(aWriter, type); // Sentinel = 'CursorResponse' (aWriter)->WriteSentinel(718276046); switch (type) { case union__::Tvoid_t: { IPC::WriteParam(aWriter, (aVar).get_void_t()); // Sentinel = 'Tvoid_t' (aWriter)->WriteSentinel(189006554); return; } case union__::Tnsresult: { IPC::WriteParam(aWriter, (aVar).get_nsresult()); // Sentinel = 'Tnsresult' (aWriter)->WriteSentinel(313394133); return; } case union__::TArrayOfObjectStoreCursorResponse: { IPC::WriteParam(aWriter, (aVar).get_ArrayOfObjectStoreCursorResponse()); // Sentinel = 'TArrayOfObjectStoreCursorResponse' (aWriter)->WriteSentinel(3673165114); return; } case union__::TArrayOfObjectStoreKeyCursorResponse: { IPC::WriteParam(aWriter, (aVar).get_ArrayOfObjectStoreKeyCursorResponse()); // Sentinel = 'TArrayOfObjectStoreKeyCursorResponse' (aWriter)->WriteSentinel(61345379); return; } case union__::TArrayOfIndexCursorResponse: { IPC::WriteParam(aWriter, (aVar).get_ArrayOfIndexCursorResponse()); // Sentinel = 'TArrayOfIndexCursorResponse' (aWriter)->WriteSentinel(2463632078); return; } case union__::TArrayOfIndexKeyCursorResponse: { IPC::WriteParam(aWriter, (aVar).get_ArrayOfIndexKeyCursorResponse()); // Sentinel = 'TArrayOfIndexKeyCursorResponse' (aWriter)->WriteSentinel(3023899639); return; } default: { aWriter->FatalError("unknown variant of union CursorResponse"); return; } } } auto ParamTraits<::mozilla::dom::indexedDB::CursorResponse>::Read(IPC::MessageReader* aReader) -> IPC::ReadResult { typedef ::mozilla::dom::indexedDB::CursorResponse union__; auto maybe__type = IPC::ReadParam(aReader); if (!maybe__type) { aReader->FatalError("Error deserializing type of union CursorResponse"); return {}; } auto& type = *maybe__type; // Sentinel = 'CursorResponse' if ((!((aReader)->ReadSentinel(718276046)))) { mozilla::ipc::SentinelReadError("Error deserializing type of union CursorResponse"); return {}; } switch (type) { case union__::Tvoid_t: { auto maybe__tmp = IPC::ReadParam<::mozilla::void_t>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant Tvoid_t of union CursorResponse"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'Tvoid_t' if ((!((aReader)->ReadSentinel(189006554)))) { mozilla::ipc::SentinelReadError("Error deserializing variant Tvoid_t of union CursorResponse"); return {}; } return std::move(tmp); } case union__::Tnsresult: { auto maybe__tmp = IPC::ReadParam<::nsresult>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant Tnsresult of union CursorResponse"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'Tnsresult' if ((!((aReader)->ReadSentinel(313394133)))) { mozilla::ipc::SentinelReadError("Error deserializing variant Tnsresult of union CursorResponse"); return {}; } return std::move(tmp); } case union__::TArrayOfObjectStoreCursorResponse: { auto maybe__tmp = IPC::ReadParam>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant TArrayOfObjectStoreCursorResponse of union CursorResponse"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'TArrayOfObjectStoreCursorResponse' if ((!((aReader)->ReadSentinel(3673165114)))) { mozilla::ipc::SentinelReadError("Error deserializing variant TArrayOfObjectStoreCursorResponse of union CursorResponse"); return {}; } return std::move(tmp); } case union__::TArrayOfObjectStoreKeyCursorResponse: { auto maybe__tmp = IPC::ReadParam>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant TArrayOfObjectStoreKeyCursorResponse of union CursorResponse"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'TArrayOfObjectStoreKeyCursorResponse' if ((!((aReader)->ReadSentinel(61345379)))) { mozilla::ipc::SentinelReadError("Error deserializing variant TArrayOfObjectStoreKeyCursorResponse of union CursorResponse"); return {}; } return std::move(tmp); } case union__::TArrayOfIndexCursorResponse: { auto maybe__tmp = IPC::ReadParam>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant TArrayOfIndexCursorResponse of union CursorResponse"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'TArrayOfIndexCursorResponse' if ((!((aReader)->ReadSentinel(2463632078)))) { mozilla::ipc::SentinelReadError("Error deserializing variant TArrayOfIndexCursorResponse of union CursorResponse"); return {}; } return std::move(tmp); } case union__::TArrayOfIndexKeyCursorResponse: { auto maybe__tmp = IPC::ReadParam>(aReader); if (!maybe__tmp) { aReader->FatalError("Error deserializing variant TArrayOfIndexKeyCursorResponse of union CursorResponse"); return {}; } auto& tmp = *maybe__tmp; // Sentinel = 'TArrayOfIndexKeyCursorResponse' if ((!((aReader)->ReadSentinel(3023899639)))) { mozilla::ipc::SentinelReadError("Error deserializing variant TArrayOfIndexKeyCursorResponse of union CursorResponse"); return {}; } return std::move(tmp); } default: { aReader->FatalError("unknown variant of union CursorResponse"); return {}; } } } } // namespace IPC