LCOV - code coverage report
Current view: top level - obj-x86_64-pc-linux-gnu/ipc/ipdl - PBackgroundIDBCursorParent.cpp (source / functions) Hit Total Coverage
Test: output.info Lines: 0 1429 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 101 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : //
       2             : // Automatically generated by ipdlc.
       3             : // Edit at your own risk
       4             : //
       5             : 
       6             : 
       7             : #include "mozilla/dom/indexedDB/PBackgroundIDBCursorParent.h"
       8             : #include "ipc/IPCMessageUtils.h"
       9             : #include "mozilla/dom/indexedDB/Key.h"
      10             : 
      11             : #include "mozilla/dom/indexedDB/PBackgroundIDBTransactionParent.h"
      12             : #include "mozilla/dom/indexedDB/PBackgroundIDBVersionChangeTransactionParent.h"
      13             : #include "mozilla/dom/PBackgroundMutableFileParent.h"
      14             : #include "mozilla/ipc/PChildToParentStreamParent.h"
      15             : #include "mozilla/ipc/PFileDescriptorSetParent.h"
      16             : #include "mozilla/ipc/PIPCBlobInputStreamParent.h"
      17             : #include "mozilla/ipc/PParentToChildStreamParent.h"
      18             : 
      19             : #include "nsIFile.h"
      20             : #include "GeckoProfiler.h"
      21             : 
      22             : namespace mozilla {
      23             : namespace dom {
      24             : namespace indexedDB {
      25             : 
      26             : 
      27             : 
      28           0 : MOZ_IMPLICIT PBackgroundIDBCursorParent::PBackgroundIDBCursorParent() :
      29             :     mozilla::ipc::IProtocol(mozilla::ipc::ParentSide),
      30           0 :     mState(PBackgroundIDBCursor::__Dead)
      31             : {
      32           0 :     MOZ_COUNT_CTOR(PBackgroundIDBCursorParent);
      33           0 : }
      34             : 
      35           0 : PBackgroundIDBCursorParent::~PBackgroundIDBCursorParent()
      36             : {
      37           0 :     MOZ_COUNT_DTOR(PBackgroundIDBCursorParent);
      38           0 : }
      39             : 
      40           0 : auto PBackgroundIDBCursorParent::Send__delete__(PBackgroundIDBCursorParent* actor) -> bool
      41             : {
      42           0 :     if ((!(actor))) {
      43           0 :         return false;
      44             :     }
      45             : 
      46           0 :     IPC::Message* msg__ = PBackgroundIDBCursor::Msg___delete__((actor)->Id());
      47             : 
      48           0 :     (actor)->Write(actor, msg__, false);
      49             :     // Sentinel = 'actor'
      50           0 :     (msg__)->WriteSentinel(875202478);
      51             : 
      52             : 
      53             : 
      54           0 :     if (mozilla::ipc::LoggingEnabledFor("PBackgroundIDBCursorParent")) {
      55           0 :         mozilla::ipc::LogMessageForProtocol("PBackgroundIDBCursorParent", (actor)->OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
      56             :     }
      57           0 :     AUTO_PROFILER_LABEL("PBackgroundIDBCursor::Msg___delete__", OTHER);
      58           0 :     PBackgroundIDBCursor::Transition(PBackgroundIDBCursor::Msg___delete____ID, (&((actor)->mState)));
      59             : 
      60           0 :     bool sendok__ = ((actor)->GetIPCChannel())->Send(msg__);
      61             : 
      62           0 :     IProtocol* mgr = (actor)->Manager();
      63           0 :     (actor)->DestroySubtree(Deletion);
      64           0 :     (actor)->DeallocSubtree();
      65           0 :     (mgr)->RemoveManagee(PBackgroundIDBCursorMsgStart, actor);
      66           0 :     return sendok__;
      67             : }
      68             : 
      69           0 : auto PBackgroundIDBCursorParent::SendResponse(const CursorResponse& response) -> bool
      70             : {
      71           0 :     IPC::Message* msg__ = PBackgroundIDBCursor::Msg_Response(Id());
      72             : 
      73           0 :     Write(response, msg__);
      74             :     // Sentinel = 'response'
      75           0 :     (msg__)->WriteSentinel(2396115421);
      76             : 
      77             : 
      78             : 
      79             : 
      80           0 :     if (mozilla::ipc::LoggingEnabledFor("PBackgroundIDBCursorParent")) {
      81           0 :         mozilla::ipc::LogMessageForProtocol("PBackgroundIDBCursorParent", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
      82             :     }
      83           0 :     AUTO_PROFILER_LABEL("PBackgroundIDBCursor::Msg_Response", OTHER);
      84           0 :     PBackgroundIDBCursor::Transition(PBackgroundIDBCursor::Msg_Response__ID, (&(mState)));
      85             : 
      86           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
      87           0 :     return sendok__;
      88             : }
      89             : 
      90           0 : auto PBackgroundIDBCursorParent::RemoveManagee(
      91             :         int32_t aProtocolId,
      92             :         ProtocolBase* aListener) -> void
      93             : {
      94           0 :     FatalError("unreached");
      95           0 :     return;
      96             : }
      97             : 
      98           0 : auto PBackgroundIDBCursorParent::OnMessageReceived(const Message& msg__) -> PBackgroundIDBCursorParent::Result
      99             : {
     100           0 :     switch ((msg__).type()) {
     101             :     case PBackgroundIDBCursor::Msg_DeleteMe__ID:
     102             :         {
     103           0 :             if (mozilla::ipc::LoggingEnabledFor("PBackgroundIDBCursorParent")) {
     104           0 :                 mozilla::ipc::LogMessageForProtocol("PBackgroundIDBCursorParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     105             :             }
     106           0 :             AUTO_PROFILER_LABEL("PBackgroundIDBCursor::Msg_DeleteMe", OTHER);
     107             : 
     108           0 :             PBackgroundIDBCursor::Transition(PBackgroundIDBCursor::Msg_DeleteMe__ID, (&(mState)));
     109           0 :             if ((!(RecvDeleteMe()))) {
     110           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
     111             :                 // Error handled in mozilla::ipc::IPCResult
     112           0 :                 return MsgProcessingError;
     113             :             }
     114             : 
     115           0 :             return MsgProcessed;
     116             :         }
     117             :     case PBackgroundIDBCursor::Msg_Continue__ID:
     118             :         {
     119           0 :             if (mozilla::ipc::LoggingEnabledFor("PBackgroundIDBCursorParent")) {
     120           0 :                 mozilla::ipc::LogMessageForProtocol("PBackgroundIDBCursorParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     121             :             }
     122           0 :             AUTO_PROFILER_LABEL("PBackgroundIDBCursor::Msg_Continue", OTHER);
     123             : 
     124           0 :             PickleIterator iter__(msg__);
     125           0 :             CursorRequestParams params;
     126             : 
     127           0 :             if ((!(Read((&(params)), (&(msg__)), (&(iter__)))))) {
     128           0 :                 FatalError("Error deserializing 'CursorRequestParams'");
     129           0 :                 return MsgValueError;
     130             :             }
     131             :             // Sentinel = 'params'
     132           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1677790004)))) {
     133           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'CursorRequestParams'");
     134           0 :                 return MsgValueError;
     135             :             }
     136           0 :             (msg__).EndRead(iter__, (msg__).type());
     137           0 :             PBackgroundIDBCursor::Transition(PBackgroundIDBCursor::Msg_Continue__ID, (&(mState)));
     138           0 :             if ((!(RecvContinue(mozilla::Move(params))))) {
     139           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
     140             :                 // Error handled in mozilla::ipc::IPCResult
     141           0 :                 return MsgProcessingError;
     142             :             }
     143             : 
     144           0 :             return MsgProcessed;
     145             :         }
     146             :     case PBackgroundIDBCursor::Reply___delete____ID:
     147             :         {
     148           0 :             return MsgProcessed;
     149             :         }
     150             :     default:
     151             :         {
     152           0 :             return MsgNotKnown;
     153             :         }
     154             :     }
     155             : }
     156             : 
     157           0 : auto PBackgroundIDBCursorParent::OnMessageReceived(
     158             :         const Message& msg__,
     159             :         Message*& reply__) -> PBackgroundIDBCursorParent::Result
     160             : {
     161           0 :     return MsgNotKnown;
     162             : }
     163             : 
     164           0 : auto PBackgroundIDBCursorParent::OnCallReceived(
     165             :         const Message& msg__,
     166             :         Message*& reply__) -> PBackgroundIDBCursorParent::Result
     167             : {
     168           0 :     MOZ_ASSERT_UNREACHABLE("message protocol not supported");
     169             :     return MsgNotKnown;
     170             : }
     171             : 
     172           0 : auto PBackgroundIDBCursorParent::GetProtocolTypeId() -> int32_t
     173             : {
     174           0 :     return PBackgroundIDBCursorMsgStart;
     175             : }
     176             : 
     177           0 : auto PBackgroundIDBCursorParent::ProtocolName() const -> const char*
     178             : {
     179           0 :     return "PBackgroundIDBCursorParent";
     180             : }
     181             : 
     182           0 : auto PBackgroundIDBCursorParent::DestroySubtree(ActorDestroyReason why) -> void
     183             : {
     184             :     // Unregister from our manager.
     185           0 :     Unregister(Id());
     186             : 
     187             :     // Reject owning pending promises.
     188           0 :     (GetIPCChannel())->RejectPendingPromisesForActor(this);
     189             : 
     190             :     // Finally, destroy "us".
     191           0 :     ActorDestroy(why);
     192           0 : }
     193             : 
     194           0 : auto PBackgroundIDBCursorParent::DeallocSubtree() -> void
     195             : {
     196           0 : }
     197             : 
     198           0 : auto PBackgroundIDBCursorParent::Write(
     199             :         const nsTArray<InputStreamParams>& v__,
     200             :         Message* msg__) -> void
     201             : {
     202           0 :     uint32_t length = (v__).Length();
     203           0 :     Write(length, msg__);
     204             :     // Sentinel = ('length', 'InputStreamParams[]')
     205           0 :     (msg__)->WriteSentinel(348334258);
     206             : 
     207           0 :     for (auto& elem : v__) {
     208           0 :         Write(elem, msg__);
     209             :         // Sentinel = 'InputStreamParams[]'
     210           0 :         (msg__)->WriteSentinel(2927715197);
     211             :     }
     212           0 : }
     213             : 
     214           0 : auto PBackgroundIDBCursorParent::Read(
     215             :         nsTArray<InputStreamParams>* v__,
     216             :         const Message* msg__,
     217             :         PickleIterator* iter__) -> bool
     218             : {
     219           0 :     nsTArray<InputStreamParams> fa;
     220             :     uint32_t length;
     221           0 :     if ((!(Read((&(length)), msg__, iter__)))) {
     222           0 :         mozilla::ipc::ArrayLengthReadError("InputStreamParams[]");
     223           0 :         return false;
     224             :     }
     225             :     // Sentinel = ('length', 'InputStreamParams[]')
     226           0 :     if ((!((msg__)->ReadSentinel(iter__, 348334258)))) {
     227           0 :         mozilla::ipc::SentinelReadError("InputStreamParams[]");
     228           0 :         return false;
     229             :     }
     230             : 
     231           0 :     InputStreamParams* elems = (fa).AppendElements(length);
     232           0 :     for (uint32_t i = 0; (i) < (length); (++(i))) {
     233           0 :         if ((!(Read((&(elems[i])), msg__, iter__)))) {
     234           0 :             FatalError("Error deserializing 'InputStreamParams[i]'");
     235           0 :             return false;
     236             :         }
     237             :         // Sentinel = 'InputStreamParams[]'
     238           0 :         if ((!((msg__)->ReadSentinel(iter__, 2927715197)))) {
     239           0 :             mozilla::ipc::SentinelReadError("Error deserializing 'InputStreamParams[i]'");
     240           0 :             return false;
     241             :         }
     242             :     }
     243           0 :     (v__)->SwapElements(fa);
     244           0 :     return true;
     245             : }
     246             : 
     247           0 : auto PBackgroundIDBCursorParent::Write(
     248             :         const ObjectStoreCursorResponse& v__,
     249             :         Message* msg__) -> void
     250             : {
     251           0 :     Write((v__).key(), msg__);
     252             :     // Sentinel = 'key'
     253           0 :     (msg__)->WriteSentinel(35142870);
     254           0 :     Write((v__).cloneInfo(), msg__);
     255             :     // Sentinel = 'cloneInfo'
     256           0 :     (msg__)->WriteSentinel(517148166);
     257           0 : }
     258             : 
     259           0 : auto PBackgroundIDBCursorParent::Read(
     260             :         ObjectStoreCursorResponse* v__,
     261             :         const Message* msg__,
     262             :         PickleIterator* iter__) -> bool
     263             : {
     264           0 :     if ((!(Read((&((v__)->key())), msg__, iter__)))) {
     265           0 :         FatalError("Error deserializing 'key' (Key) member of 'ObjectStoreCursorResponse'");
     266           0 :         return false;
     267             :     }
     268             :     // Sentinel = 'key'
     269           0 :     if ((!((msg__)->ReadSentinel(iter__, 35142870)))) {
     270           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ObjectStoreCursorResponse'");
     271           0 :         return false;
     272             :     }
     273           0 :     if ((!(Read((&((v__)->cloneInfo())), msg__, iter__)))) {
     274           0 :         FatalError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'ObjectStoreCursorResponse'");
     275           0 :         return false;
     276             :     }
     277             :     // Sentinel = 'cloneInfo'
     278           0 :     if ((!((msg__)->ReadSentinel(iter__, 517148166)))) {
     279           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'ObjectStoreCursorResponse'");
     280           0 :         return false;
     281             :     }
     282           0 :     return true;
     283             : }
     284             : 
     285           0 : auto PBackgroundIDBCursorParent::Write(
     286             :         const nsTArray<SerializedStructuredCloneFile>& v__,
     287             :         Message* msg__) -> void
     288             : {
     289           0 :     uint32_t length = (v__).Length();
     290           0 :     Write(length, msg__);
     291             :     // Sentinel = ('length', 'SerializedStructuredCloneFile[]')
     292           0 :     (msg__)->WriteSentinel(673109556);
     293             : 
     294           0 :     for (auto& elem : v__) {
     295           0 :         Write(elem, msg__);
     296             :         // Sentinel = 'SerializedStructuredCloneFile[]'
     297           0 :         (msg__)->WriteSentinel(776860243);
     298             :     }
     299           0 : }
     300             : 
     301           0 : auto PBackgroundIDBCursorParent::Read(
     302             :         nsTArray<SerializedStructuredCloneFile>* v__,
     303             :         const Message* msg__,
     304             :         PickleIterator* iter__) -> bool
     305             : {
     306           0 :     nsTArray<SerializedStructuredCloneFile> fa;
     307             :     uint32_t length;
     308           0 :     if ((!(Read((&(length)), msg__, iter__)))) {
     309           0 :         mozilla::ipc::ArrayLengthReadError("SerializedStructuredCloneFile[]");
     310           0 :         return false;
     311             :     }
     312             :     // Sentinel = ('length', 'SerializedStructuredCloneFile[]')
     313           0 :     if ((!((msg__)->ReadSentinel(iter__, 673109556)))) {
     314           0 :         mozilla::ipc::SentinelReadError("SerializedStructuredCloneFile[]");
     315           0 :         return false;
     316             :     }
     317             : 
     318           0 :     SerializedStructuredCloneFile* elems = (fa).AppendElements(length);
     319           0 :     for (uint32_t i = 0; (i) < (length); (++(i))) {
     320           0 :         if ((!(Read((&(elems[i])), msg__, iter__)))) {
     321           0 :             FatalError("Error deserializing 'SerializedStructuredCloneFile[i]'");
     322           0 :             return false;
     323             :         }
     324             :         // Sentinel = 'SerializedStructuredCloneFile[]'
     325           0 :         if ((!((msg__)->ReadSentinel(iter__, 776860243)))) {
     326           0 :             mozilla::ipc::SentinelReadError("Error deserializing 'SerializedStructuredCloneFile[i]'");
     327           0 :             return false;
     328             :         }
     329             :     }
     330           0 :     (v__)->SwapElements(fa);
     331           0 :     return true;
     332             : }
     333             : 
     334           0 : auto PBackgroundIDBCursorParent::Write(
     335             :         const MIMEInputStreamParams& v__,
     336             :         Message* msg__) -> void
     337             : {
     338           0 :     Write((v__).optionalStream(), msg__);
     339             :     // Sentinel = 'optionalStream'
     340           0 :     (msg__)->WriteSentinel(1003718562);
     341           0 :     Write((v__).headers(), msg__);
     342             :     // Sentinel = 'headers'
     343           0 :     (msg__)->WriteSentinel(4284175217);
     344           0 :     Write((v__).startedReading(), msg__);
     345             :     // Sentinel = 'startedReading'
     346           0 :     (msg__)->WriteSentinel(1906875903);
     347           0 : }
     348             : 
     349           0 : auto PBackgroundIDBCursorParent::Read(
     350             :         MIMEInputStreamParams* v__,
     351             :         const Message* msg__,
     352             :         PickleIterator* iter__) -> bool
     353             : {
     354           0 :     if ((!(Read((&((v__)->optionalStream())), msg__, iter__)))) {
     355           0 :         FatalError("Error deserializing 'optionalStream' (OptionalInputStreamParams) member of 'MIMEInputStreamParams'");
     356           0 :         return false;
     357             :     }
     358             :     // Sentinel = 'optionalStream'
     359           0 :     if ((!((msg__)->ReadSentinel(iter__, 1003718562)))) {
     360           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'optionalStream' (OptionalInputStreamParams) member of 'MIMEInputStreamParams'");
     361           0 :         return false;
     362             :     }
     363           0 :     if ((!(Read((&((v__)->headers())), msg__, iter__)))) {
     364           0 :         FatalError("Error deserializing 'headers' (HeaderEntry[]) member of 'MIMEInputStreamParams'");
     365           0 :         return false;
     366             :     }
     367             :     // Sentinel = 'headers'
     368           0 :     if ((!((msg__)->ReadSentinel(iter__, 4284175217)))) {
     369           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'headers' (HeaderEntry[]) member of 'MIMEInputStreamParams'");
     370           0 :         return false;
     371             :     }
     372           0 :     if ((!(Read((&((v__)->startedReading())), msg__, iter__)))) {
     373           0 :         FatalError("Error deserializing 'startedReading' (bool) member of 'MIMEInputStreamParams'");
     374           0 :         return false;
     375             :     }
     376             :     // Sentinel = 'startedReading'
     377           0 :     if ((!((msg__)->ReadSentinel(iter__, 1906875903)))) {
     378           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'startedReading' (bool) member of 'MIMEInputStreamParams'");
     379           0 :         return false;
     380             :     }
     381           0 :     return true;
     382             : }
     383             : 
     384           0 : auto PBackgroundIDBCursorParent::Write(
     385             :         const OptionalInputStreamParams& v__,
     386             :         Message* msg__) -> void
     387             : {
     388             :     typedef OptionalInputStreamParams type__;
     389           0 :     Write(int((v__).type()), msg__);
     390             :     // Sentinel = 'OptionalInputStreamParams'
     391           0 :     (msg__)->WriteSentinel(1355174443);
     392             : 
     393           0 :     switch ((v__).type()) {
     394             :     case type__::Tvoid_t:
     395             :         {
     396           0 :             Write((v__).get_void_t(), msg__);
     397             :             // Sentinel = 'Tvoid_t'
     398           0 :             (msg__)->WriteSentinel(3041273328);
     399           0 :             return;
     400             :         }
     401             :     case type__::TInputStreamParams:
     402             :         {
     403           0 :             Write((v__).get_InputStreamParams(), msg__);
     404             :             // Sentinel = 'TInputStreamParams'
     405           0 :             (msg__)->WriteSentinel(55652096);
     406           0 :             return;
     407             :         }
     408             :     default:
     409             :         {
     410           0 :             FatalError("unknown union type");
     411           0 :             return;
     412             :         }
     413             :     }
     414             : }
     415             : 
     416           0 : auto PBackgroundIDBCursorParent::Read(
     417             :         OptionalInputStreamParams* v__,
     418             :         const Message* msg__,
     419             :         PickleIterator* iter__) -> bool
     420             : {
     421             :     typedef OptionalInputStreamParams type__;
     422             :     int type;
     423           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
     424           0 :         mozilla::ipc::UnionTypeReadError("OptionalInputStreamParams");
     425           0 :         return false;
     426             :     }
     427             :     // Sentinel = 'OptionalInputStreamParams'
     428           0 :     if ((!((msg__)->ReadSentinel(iter__, 1355174443)))) {
     429           0 :         mozilla::ipc::SentinelReadError("OptionalInputStreamParams");
     430           0 :         return false;
     431             :     }
     432             : 
     433           0 :     switch (type) {
     434             :     case type__::Tvoid_t:
     435             :         {
     436             :             void_t tmp = void_t();
     437           0 :             (*(v__)) = tmp;
     438           0 :             if ((!(Read((&((v__)->get_void_t())), msg__, iter__)))) {
     439           0 :                 FatalError("Error deserializing Union type");
     440           0 :                 return false;
     441             :             }
     442             :             // Sentinel = 'Tvoid_t'
     443           0 :             if ((!((msg__)->ReadSentinel(iter__, 3041273328)))) {
     444           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     445           0 :                 return false;
     446             :             }
     447           0 :             return true;
     448             :         }
     449             :     case type__::TInputStreamParams:
     450             :         {
     451           0 :             InputStreamParams tmp = InputStreamParams();
     452           0 :             (*(v__)) = tmp;
     453           0 :             if ((!(Read((&((v__)->get_InputStreamParams())), msg__, iter__)))) {
     454           0 :                 FatalError("Error deserializing Union type");
     455           0 :                 return false;
     456             :             }
     457             :             // Sentinel = 'TInputStreamParams'
     458           0 :             if ((!((msg__)->ReadSentinel(iter__, 55652096)))) {
     459           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     460           0 :                 return false;
     461             :             }
     462           0 :             return true;
     463             :         }
     464             :     default:
     465             :         {
     466           0 :             FatalError("unknown union type");
     467           0 :             return false;
     468             :         }
     469             :     }
     470             : }
     471             : 
     472           0 : auto PBackgroundIDBCursorParent::Write(
     473             :         const IPCRemoteStream& v__,
     474             :         Message* msg__) -> void
     475             : {
     476           0 :     Write((v__).delayedStart(), msg__);
     477             :     // Sentinel = 'delayedStart'
     478           0 :     (msg__)->WriteSentinel(1491822294);
     479           0 :     Write((v__).stream(), msg__);
     480             :     // Sentinel = 'stream'
     481           0 :     (msg__)->WriteSentinel(4152748422);
     482           0 : }
     483             : 
     484           0 : auto PBackgroundIDBCursorParent::Read(
     485             :         IPCRemoteStream* v__,
     486             :         const Message* msg__,
     487             :         PickleIterator* iter__) -> bool
     488             : {
     489           0 :     if ((!(Read((&((v__)->delayedStart())), msg__, iter__)))) {
     490           0 :         FatalError("Error deserializing 'delayedStart' (bool) member of 'IPCRemoteStream'");
     491           0 :         return false;
     492             :     }
     493             :     // Sentinel = 'delayedStart'
     494           0 :     if ((!((msg__)->ReadSentinel(iter__, 1491822294)))) {
     495           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'delayedStart' (bool) member of 'IPCRemoteStream'");
     496           0 :         return false;
     497             :     }
     498           0 :     if ((!(Read((&((v__)->stream())), msg__, iter__)))) {
     499           0 :         FatalError("Error deserializing 'stream' (IPCRemoteStreamType) member of 'IPCRemoteStream'");
     500           0 :         return false;
     501             :     }
     502             :     // Sentinel = 'stream'
     503           0 :     if ((!((msg__)->ReadSentinel(iter__, 4152748422)))) {
     504           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'stream' (IPCRemoteStreamType) member of 'IPCRemoteStream'");
     505           0 :         return false;
     506             :     }
     507           0 :     return true;
     508             : }
     509             : 
     510           0 : auto PBackgroundIDBCursorParent::Write(
     511             :         const PBackgroundMutableFileParent* v__,
     512             :         Message* msg__,
     513             :         bool nullable__) -> void
     514             : {
     515             :     int32_t id;
     516           0 :     if ((!(v__))) {
     517           0 :         if ((!(nullable__))) {
     518           0 :             FatalError("NULL actor value passed to non-nullable param");
     519             :         }
     520           0 :         id = 0;
     521             :     }
     522             :     else {
     523           0 :         id = (v__)->Id();
     524           0 :         if ((1) == (id)) {
     525           0 :             FatalError("actor has been |delete|d");
     526             :         }
     527             :     }
     528             : 
     529           0 :     Write(id, msg__);
     530           0 : }
     531             : 
     532           0 : auto PBackgroundIDBCursorParent::Read(
     533             :         PBackgroundMutableFileParent** v__,
     534             :         const Message* msg__,
     535             :         PickleIterator* iter__,
     536             :         bool nullable__) -> bool
     537             : {
     538           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PBackgroundMutableFile", PBackgroundMutableFileMsgStart);
     539           0 :     if ((actor).isNothing()) {
     540           0 :         return false;
     541             :     }
     542             : 
     543           0 :     (*(v__)) = static_cast<PBackgroundMutableFileParent*>((actor).value());
     544           0 :     return true;
     545             : }
     546             : 
     547           0 : auto PBackgroundIDBCursorParent::Write(
     548             :         const CursorResponse& v__,
     549             :         Message* msg__) -> void
     550             : {
     551             :     typedef CursorResponse type__;
     552           0 :     Write(int((v__).type()), msg__);
     553             :     // Sentinel = 'CursorResponse'
     554           0 :     (msg__)->WriteSentinel(122304521);
     555             : 
     556           0 :     switch ((v__).type()) {
     557             :     case type__::Tvoid_t:
     558             :         {
     559           0 :             Write((v__).get_void_t(), msg__);
     560             :             // Sentinel = 'Tvoid_t'
     561           0 :             (msg__)->WriteSentinel(3041273328);
     562           0 :             return;
     563             :         }
     564             :     case type__::Tnsresult:
     565             :         {
     566           0 :             Write((v__).get_nsresult(), msg__);
     567             :             // Sentinel = 'Tnsresult'
     568           0 :             (msg__)->WriteSentinel(2293764539);
     569           0 :             return;
     570             :         }
     571             :     case type__::TArrayOfObjectStoreCursorResponse:
     572             :         {
     573           0 :             Write((v__).get_ArrayOfObjectStoreCursorResponse(), msg__);
     574             :             // Sentinel = 'TArrayOfObjectStoreCursorResponse'
     575           0 :             (msg__)->WriteSentinel(3759559706);
     576           0 :             return;
     577             :         }
     578             :     case type__::TObjectStoreKeyCursorResponse:
     579             :         {
     580           0 :             Write((v__).get_ObjectStoreKeyCursorResponse(), msg__);
     581             :             // Sentinel = 'TObjectStoreKeyCursorResponse'
     582           0 :             (msg__)->WriteSentinel(2408348419);
     583           0 :             return;
     584             :         }
     585             :     case type__::TIndexCursorResponse:
     586             :         {
     587           0 :             Write((v__).get_IndexCursorResponse(), msg__);
     588             :             // Sentinel = 'TIndexCursorResponse'
     589           0 :             (msg__)->WriteSentinel(2478545403);
     590           0 :             return;
     591             :         }
     592             :     case type__::TIndexKeyCursorResponse:
     593             :         {
     594           0 :             Write((v__).get_IndexKeyCursorResponse(), msg__);
     595             :             // Sentinel = 'TIndexKeyCursorResponse'
     596           0 :             (msg__)->WriteSentinel(3192304605);
     597           0 :             return;
     598             :         }
     599             :     default:
     600             :         {
     601           0 :             FatalError("unknown union type");
     602           0 :             return;
     603             :         }
     604             :     }
     605             : }
     606             : 
     607           0 : auto PBackgroundIDBCursorParent::Read(
     608             :         CursorResponse* v__,
     609             :         const Message* msg__,
     610             :         PickleIterator* iter__) -> bool
     611             : {
     612             :     typedef CursorResponse type__;
     613             :     int type;
     614           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
     615           0 :         mozilla::ipc::UnionTypeReadError("CursorResponse");
     616           0 :         return false;
     617             :     }
     618             :     // Sentinel = 'CursorResponse'
     619           0 :     if ((!((msg__)->ReadSentinel(iter__, 122304521)))) {
     620           0 :         mozilla::ipc::SentinelReadError("CursorResponse");
     621           0 :         return false;
     622             :     }
     623             : 
     624           0 :     switch (type) {
     625             :     case type__::Tvoid_t:
     626             :         {
     627             :             void_t tmp = void_t();
     628           0 :             (*(v__)) = tmp;
     629           0 :             if ((!(Read((&((v__)->get_void_t())), msg__, iter__)))) {
     630           0 :                 FatalError("Error deserializing Union type");
     631           0 :                 return false;
     632             :             }
     633             :             // Sentinel = 'Tvoid_t'
     634           0 :             if ((!((msg__)->ReadSentinel(iter__, 3041273328)))) {
     635           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     636           0 :                 return false;
     637             :             }
     638           0 :             return true;
     639             :         }
     640             :     case type__::Tnsresult:
     641             :         {
     642           0 :             nsresult tmp = nsresult();
     643           0 :             (*(v__)) = tmp;
     644           0 :             if ((!(Read((&((v__)->get_nsresult())), msg__, iter__)))) {
     645           0 :                 FatalError("Error deserializing Union type");
     646           0 :                 return false;
     647             :             }
     648             :             // Sentinel = 'Tnsresult'
     649           0 :             if ((!((msg__)->ReadSentinel(iter__, 2293764539)))) {
     650           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     651           0 :                 return false;
     652             :             }
     653           0 :             return true;
     654             :         }
     655             :     case type__::TArrayOfObjectStoreCursorResponse:
     656             :         {
     657           0 :             nsTArray<ObjectStoreCursorResponse> tmp;
     658           0 :             (*(v__)) = tmp;
     659           0 :             if ((!(Read((&((v__)->get_ArrayOfObjectStoreCursorResponse())), msg__, iter__)))) {
     660           0 :                 FatalError("Error deserializing Union type");
     661           0 :                 return false;
     662             :             }
     663             :             // Sentinel = 'TArrayOfObjectStoreCursorResponse'
     664           0 :             if ((!((msg__)->ReadSentinel(iter__, 3759559706)))) {
     665           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     666           0 :                 return false;
     667             :             }
     668           0 :             return true;
     669             :         }
     670             :     case type__::TObjectStoreKeyCursorResponse:
     671             :         {
     672           0 :             ObjectStoreKeyCursorResponse tmp = ObjectStoreKeyCursorResponse();
     673           0 :             (*(v__)) = tmp;
     674           0 :             if ((!(Read((&((v__)->get_ObjectStoreKeyCursorResponse())), msg__, iter__)))) {
     675           0 :                 FatalError("Error deserializing Union type");
     676           0 :                 return false;
     677             :             }
     678             :             // Sentinel = 'TObjectStoreKeyCursorResponse'
     679           0 :             if ((!((msg__)->ReadSentinel(iter__, 2408348419)))) {
     680           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     681           0 :                 return false;
     682             :             }
     683           0 :             return true;
     684             :         }
     685             :     case type__::TIndexCursorResponse:
     686             :         {
     687           0 :             IndexCursorResponse tmp = IndexCursorResponse();
     688           0 :             (*(v__)) = tmp;
     689           0 :             if ((!(Read((&((v__)->get_IndexCursorResponse())), msg__, iter__)))) {
     690           0 :                 FatalError("Error deserializing Union type");
     691           0 :                 return false;
     692             :             }
     693             :             // Sentinel = 'TIndexCursorResponse'
     694           0 :             if ((!((msg__)->ReadSentinel(iter__, 2478545403)))) {
     695           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     696           0 :                 return false;
     697             :             }
     698           0 :             return true;
     699             :         }
     700             :     case type__::TIndexKeyCursorResponse:
     701             :         {
     702           0 :             IndexKeyCursorResponse tmp = IndexKeyCursorResponse();
     703           0 :             (*(v__)) = tmp;
     704           0 :             if ((!(Read((&((v__)->get_IndexKeyCursorResponse())), msg__, iter__)))) {
     705           0 :                 FatalError("Error deserializing Union type");
     706           0 :                 return false;
     707             :             }
     708             :             // Sentinel = 'TIndexKeyCursorResponse'
     709           0 :             if ((!((msg__)->ReadSentinel(iter__, 3192304605)))) {
     710           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
     711           0 :                 return false;
     712             :             }
     713           0 :             return true;
     714             :         }
     715             :     default:
     716             :         {
     717           0 :             FatalError("unknown union type");
     718           0 :             return false;
     719             :         }
     720             :     }
     721             : }
     722             : 
     723           0 : auto PBackgroundIDBCursorParent::Write(
     724             :         const ContinueParams& v__,
     725             :         Message* msg__) -> void
     726             : {
     727           0 :     Write((v__).key(), msg__);
     728             :     // Sentinel = 'key'
     729           0 :     (msg__)->WriteSentinel(35142870);
     730           0 : }
     731             : 
     732           0 : auto PBackgroundIDBCursorParent::Read(
     733             :         ContinueParams* v__,
     734             :         const Message* msg__,
     735             :         PickleIterator* iter__) -> bool
     736             : {
     737           0 :     if ((!(Read((&((v__)->key())), msg__, iter__)))) {
     738           0 :         FatalError("Error deserializing 'key' (Key) member of 'ContinueParams'");
     739           0 :         return false;
     740             :     }
     741             :     // Sentinel = 'key'
     742           0 :     if ((!((msg__)->ReadSentinel(iter__, 35142870)))) {
     743           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ContinueParams'");
     744           0 :         return false;
     745             :     }
     746           0 :     return true;
     747             : }
     748             : 
     749           0 : auto PBackgroundIDBCursorParent::Write(
     750             :         const FileInputStreamParams& v__,
     751             :         Message* msg__) -> void
     752             : {
     753           0 :     Write((v__).fileDescriptorIndex(), msg__);
     754             :     // Sentinel = 'fileDescriptorIndex'
     755           0 :     (msg__)->WriteSentinel(587329112);
     756           0 :     Write((v__).behaviorFlags(), msg__);
     757             :     // Sentinel = 'behaviorFlags'
     758           0 :     (msg__)->WriteSentinel(2404401962);
     759           0 :     Write((v__).ioFlags(), msg__);
     760             :     // Sentinel = 'ioFlags'
     761           0 :     (msg__)->WriteSentinel(1483009730);
     762           0 : }
     763             : 
     764           0 : auto PBackgroundIDBCursorParent::Read(
     765             :         FileInputStreamParams* v__,
     766             :         const Message* msg__,
     767             :         PickleIterator* iter__) -> bool
     768             : {
     769           0 :     if ((!(Read((&((v__)->fileDescriptorIndex())), msg__, iter__)))) {
     770           0 :         FatalError("Error deserializing 'fileDescriptorIndex' (uint32_t) member of 'FileInputStreamParams'");
     771           0 :         return false;
     772             :     }
     773             :     // Sentinel = 'fileDescriptorIndex'
     774           0 :     if ((!((msg__)->ReadSentinel(iter__, 587329112)))) {
     775           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'fileDescriptorIndex' (uint32_t) member of 'FileInputStreamParams'");
     776           0 :         return false;
     777             :     }
     778           0 :     if ((!(Read((&((v__)->behaviorFlags())), msg__, iter__)))) {
     779           0 :         FatalError("Error deserializing 'behaviorFlags' (int32_t) member of 'FileInputStreamParams'");
     780           0 :         return false;
     781             :     }
     782             :     // Sentinel = 'behaviorFlags'
     783           0 :     if ((!((msg__)->ReadSentinel(iter__, 2404401962)))) {
     784           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'behaviorFlags' (int32_t) member of 'FileInputStreamParams'");
     785           0 :         return false;
     786             :     }
     787           0 :     if ((!(Read((&((v__)->ioFlags())), msg__, iter__)))) {
     788           0 :         FatalError("Error deserializing 'ioFlags' (int32_t) member of 'FileInputStreamParams'");
     789           0 :         return false;
     790             :     }
     791             :     // Sentinel = 'ioFlags'
     792           0 :     if ((!((msg__)->ReadSentinel(iter__, 1483009730)))) {
     793           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'ioFlags' (int32_t) member of 'FileInputStreamParams'");
     794           0 :         return false;
     795             :     }
     796           0 :     return true;
     797             : }
     798             : 
     799           0 : auto PBackgroundIDBCursorParent::Write(
     800             :         const ObjectStoreKeyCursorResponse& v__,
     801             :         Message* msg__) -> void
     802             : {
     803           0 :     Write((v__).key(), msg__);
     804             :     // Sentinel = 'key'
     805           0 :     (msg__)->WriteSentinel(35142870);
     806           0 : }
     807             : 
     808           0 : auto PBackgroundIDBCursorParent::Read(
     809             :         ObjectStoreKeyCursorResponse* v__,
     810             :         const Message* msg__,
     811             :         PickleIterator* iter__) -> bool
     812             : {
     813           0 :     if ((!(Read((&((v__)->key())), msg__, iter__)))) {
     814           0 :         FatalError("Error deserializing 'key' (Key) member of 'ObjectStoreKeyCursorResponse'");
     815           0 :         return false;
     816             :     }
     817             :     // Sentinel = 'key'
     818           0 :     if ((!((msg__)->ReadSentinel(iter__, 35142870)))) {
     819           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ObjectStoreKeyCursorResponse'");
     820           0 :         return false;
     821             :     }
     822           0 :     return true;
     823             : }
     824             : 
     825           0 : auto PBackgroundIDBCursorParent::Write(
     826             :         const PBackgroundIDBCursorParent* v__,
     827             :         Message* msg__,
     828             :         bool nullable__) -> void
     829             : {
     830             :     int32_t id;
     831           0 :     if ((!(v__))) {
     832           0 :         if ((!(nullable__))) {
     833           0 :             FatalError("NULL actor value passed to non-nullable param");
     834             :         }
     835           0 :         id = 0;
     836             :     }
     837             :     else {
     838           0 :         id = (v__)->Id();
     839           0 :         if ((1) == (id)) {
     840           0 :             FatalError("actor has been |delete|d");
     841             :         }
     842             :     }
     843             : 
     844           0 :     Write(id, msg__);
     845           0 : }
     846             : 
     847           0 : auto PBackgroundIDBCursorParent::Read(
     848             :         PBackgroundIDBCursorParent** v__,
     849             :         const Message* msg__,
     850             :         PickleIterator* iter__,
     851             :         bool nullable__) -> bool
     852             : {
     853           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PBackgroundIDBCursor", PBackgroundIDBCursorMsgStart);
     854           0 :     if ((actor).isNothing()) {
     855           0 :         return false;
     856             :     }
     857             : 
     858           0 :     (*(v__)) = static_cast<PBackgroundIDBCursorParent*>((actor).value());
     859           0 :     return true;
     860             : }
     861             : 
     862           0 : auto PBackgroundIDBCursorParent::Write(
     863             :         const IPCBlobInputStreamParams& v__,
     864             :         Message* msg__) -> void
     865             : {
     866           0 :     Write((v__).id(), msg__);
     867             :     // Sentinel = 'id'
     868           0 :     (msg__)->WriteSentinel(2794505629);
     869           0 : }
     870             : 
     871           0 : auto PBackgroundIDBCursorParent::Read(
     872             :         IPCBlobInputStreamParams* v__,
     873             :         const Message* msg__,
     874             :         PickleIterator* iter__) -> bool
     875             : {
     876           0 :     if ((!(Read((&((v__)->id())), msg__, iter__)))) {
     877           0 :         FatalError("Error deserializing 'id' (nsID) member of 'IPCBlobInputStreamParams'");
     878           0 :         return false;
     879             :     }
     880             :     // Sentinel = 'id'
     881           0 :     if ((!((msg__)->ReadSentinel(iter__, 2794505629)))) {
     882           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'id' (nsID) member of 'IPCBlobInputStreamParams'");
     883           0 :         return false;
     884             :     }
     885           0 :     return true;
     886             : }
     887             : 
     888           0 : auto PBackgroundIDBCursorParent::Write(
     889             :         const IPCFile& v__,
     890             :         Message* msg__) -> void
     891             : {
     892           0 :     Write((v__).name(), msg__);
     893             :     // Sentinel = 'name'
     894           0 :     (msg__)->WriteSentinel(15034981);
     895           0 :     Write((v__).lastModified(), msg__);
     896             :     // Sentinel = 'lastModified'
     897           0 :     (msg__)->WriteSentinel(3456113257);
     898           0 :     Write((v__).DOMPath(), msg__);
     899             :     // Sentinel = 'DOMPath'
     900           0 :     (msg__)->WriteSentinel(1724352494);
     901           0 :     Write((v__).fullPath(), msg__);
     902             :     // Sentinel = 'fullPath'
     903           0 :     (msg__)->WriteSentinel(385652698);
     904           0 :     Write((v__).isDirectory(), msg__);
     905             :     // Sentinel = 'isDirectory'
     906           0 :     (msg__)->WriteSentinel(2309743506);
     907           0 : }
     908             : 
     909           0 : auto PBackgroundIDBCursorParent::Read(
     910             :         IPCFile* v__,
     911             :         const Message* msg__,
     912             :         PickleIterator* iter__) -> bool
     913             : {
     914           0 :     if ((!(Read((&((v__)->name())), msg__, iter__)))) {
     915           0 :         FatalError("Error deserializing 'name' (nsString) member of 'IPCFile'");
     916           0 :         return false;
     917             :     }
     918             :     // Sentinel = 'name'
     919           0 :     if ((!((msg__)->ReadSentinel(iter__, 15034981)))) {
     920           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'name' (nsString) member of 'IPCFile'");
     921           0 :         return false;
     922             :     }
     923           0 :     if ((!(Read((&((v__)->lastModified())), msg__, iter__)))) {
     924           0 :         FatalError("Error deserializing 'lastModified' (int64_t) member of 'IPCFile'");
     925           0 :         return false;
     926             :     }
     927             :     // Sentinel = 'lastModified'
     928           0 :     if ((!((msg__)->ReadSentinel(iter__, 3456113257)))) {
     929           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'lastModified' (int64_t) member of 'IPCFile'");
     930           0 :         return false;
     931             :     }
     932           0 :     if ((!(Read((&((v__)->DOMPath())), msg__, iter__)))) {
     933           0 :         FatalError("Error deserializing 'DOMPath' (nsString) member of 'IPCFile'");
     934           0 :         return false;
     935             :     }
     936             :     // Sentinel = 'DOMPath'
     937           0 :     if ((!((msg__)->ReadSentinel(iter__, 1724352494)))) {
     938           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'DOMPath' (nsString) member of 'IPCFile'");
     939           0 :         return false;
     940             :     }
     941           0 :     if ((!(Read((&((v__)->fullPath())), msg__, iter__)))) {
     942           0 :         FatalError("Error deserializing 'fullPath' (nsString) member of 'IPCFile'");
     943           0 :         return false;
     944             :     }
     945             :     // Sentinel = 'fullPath'
     946           0 :     if ((!((msg__)->ReadSentinel(iter__, 385652698)))) {
     947           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'fullPath' (nsString) member of 'IPCFile'");
     948           0 :         return false;
     949             :     }
     950           0 :     if ((!(Read((&((v__)->isDirectory())), msg__, iter__)))) {
     951           0 :         FatalError("Error deserializing 'isDirectory' (bool) member of 'IPCFile'");
     952           0 :         return false;
     953             :     }
     954             :     // Sentinel = 'isDirectory'
     955           0 :     if ((!((msg__)->ReadSentinel(iter__, 2309743506)))) {
     956           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'isDirectory' (bool) member of 'IPCFile'");
     957           0 :         return false;
     958             :     }
     959           0 :     return true;
     960             : }
     961             : 
     962           0 : auto PBackgroundIDBCursorParent::Write(
     963             :         const IPCFileUnion& v__,
     964             :         Message* msg__) -> void
     965             : {
     966             :     typedef IPCFileUnion type__;
     967           0 :     Write(int((v__).type()), msg__);
     968             :     // Sentinel = 'IPCFileUnion'
     969           0 :     (msg__)->WriteSentinel(1913022529);
     970             : 
     971           0 :     switch ((v__).type()) {
     972             :     case type__::Tvoid_t:
     973             :         {
     974           0 :             Write((v__).get_void_t(), msg__);
     975             :             // Sentinel = 'Tvoid_t'
     976           0 :             (msg__)->WriteSentinel(3041273328);
     977           0 :             return;
     978             :         }
     979             :     case type__::TIPCFile:
     980             :         {
     981           0 :             Write((v__).get_IPCFile(), msg__);
     982             :             // Sentinel = 'TIPCFile'
     983           0 :             (msg__)->WriteSentinel(3562676876);
     984           0 :             return;
     985             :         }
     986             :     default:
     987             :         {
     988           0 :             FatalError("unknown union type");
     989           0 :             return;
     990             :         }
     991             :     }
     992             : }
     993             : 
     994           0 : auto PBackgroundIDBCursorParent::Read(
     995             :         IPCFileUnion* v__,
     996             :         const Message* msg__,
     997             :         PickleIterator* iter__) -> bool
     998             : {
     999             :     typedef IPCFileUnion type__;
    1000             :     int type;
    1001           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    1002           0 :         mozilla::ipc::UnionTypeReadError("IPCFileUnion");
    1003           0 :         return false;
    1004             :     }
    1005             :     // Sentinel = 'IPCFileUnion'
    1006           0 :     if ((!((msg__)->ReadSentinel(iter__, 1913022529)))) {
    1007           0 :         mozilla::ipc::SentinelReadError("IPCFileUnion");
    1008           0 :         return false;
    1009             :     }
    1010             : 
    1011           0 :     switch (type) {
    1012             :     case type__::Tvoid_t:
    1013             :         {
    1014             :             void_t tmp = void_t();
    1015           0 :             (*(v__)) = tmp;
    1016           0 :             if ((!(Read((&((v__)->get_void_t())), msg__, iter__)))) {
    1017           0 :                 FatalError("Error deserializing Union type");
    1018           0 :                 return false;
    1019             :             }
    1020             :             // Sentinel = 'Tvoid_t'
    1021           0 :             if ((!((msg__)->ReadSentinel(iter__, 3041273328)))) {
    1022           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1023           0 :                 return false;
    1024             :             }
    1025           0 :             return true;
    1026             :         }
    1027             :     case type__::TIPCFile:
    1028             :         {
    1029           0 :             IPCFile tmp = IPCFile();
    1030           0 :             (*(v__)) = tmp;
    1031           0 :             if ((!(Read((&((v__)->get_IPCFile())), msg__, iter__)))) {
    1032           0 :                 FatalError("Error deserializing Union type");
    1033           0 :                 return false;
    1034             :             }
    1035             :             // Sentinel = 'TIPCFile'
    1036           0 :             if ((!((msg__)->ReadSentinel(iter__, 3562676876)))) {
    1037           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1038           0 :                 return false;
    1039             :             }
    1040           0 :             return true;
    1041             :         }
    1042             :     default:
    1043             :         {
    1044           0 :             FatalError("unknown union type");
    1045           0 :             return false;
    1046             :         }
    1047             :     }
    1048             : }
    1049             : 
    1050           0 : auto PBackgroundIDBCursorParent::Write(
    1051             :         const ContinuePrimaryKeyParams& v__,
    1052             :         Message* msg__) -> void
    1053             : {
    1054           0 :     Write((v__).key(), msg__);
    1055             :     // Sentinel = 'key'
    1056           0 :     (msg__)->WriteSentinel(35142870);
    1057           0 :     Write((v__).primaryKey(), msg__);
    1058             :     // Sentinel = 'primaryKey'
    1059           0 :     (msg__)->WriteSentinel(1482950525);
    1060           0 : }
    1061             : 
    1062           0 : auto PBackgroundIDBCursorParent::Read(
    1063             :         ContinuePrimaryKeyParams* v__,
    1064             :         const Message* msg__,
    1065             :         PickleIterator* iter__) -> bool
    1066             : {
    1067           0 :     if ((!(Read((&((v__)->key())), msg__, iter__)))) {
    1068           0 :         FatalError("Error deserializing 'key' (Key) member of 'ContinuePrimaryKeyParams'");
    1069           0 :         return false;
    1070             :     }
    1071             :     // Sentinel = 'key'
    1072           0 :     if ((!((msg__)->ReadSentinel(iter__, 35142870)))) {
    1073           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'ContinuePrimaryKeyParams'");
    1074           0 :         return false;
    1075             :     }
    1076           0 :     if ((!(Read((&((v__)->primaryKey())), msg__, iter__)))) {
    1077           0 :         FatalError("Error deserializing 'primaryKey' (Key) member of 'ContinuePrimaryKeyParams'");
    1078           0 :         return false;
    1079             :     }
    1080             :     // Sentinel = 'primaryKey'
    1081           0 :     if ((!((msg__)->ReadSentinel(iter__, 1482950525)))) {
    1082           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'primaryKey' (Key) member of 'ContinuePrimaryKeyParams'");
    1083           0 :         return false;
    1084             :     }
    1085           0 :     return true;
    1086             : }
    1087             : 
    1088           0 : auto PBackgroundIDBCursorParent::Write(
    1089             :         const BlobOrMutableFile& v__,
    1090             :         Message* msg__) -> void
    1091             : {
    1092             :     typedef BlobOrMutableFile type__;
    1093           0 :     Write(int((v__).type()), msg__);
    1094             :     // Sentinel = 'BlobOrMutableFile'
    1095           0 :     (msg__)->WriteSentinel(4107367311);
    1096             : 
    1097           0 :     switch ((v__).type()) {
    1098             :     case type__::Tnull_t:
    1099             :         {
    1100           0 :             Write((v__).get_null_t(), msg__);
    1101             :             // Sentinel = 'Tnull_t'
    1102           0 :             (msg__)->WriteSentinel(3731137201);
    1103           0 :             return;
    1104             :         }
    1105             :     case type__::TIPCBlob:
    1106             :         {
    1107           0 :             Write((v__).get_IPCBlob(), msg__);
    1108             :             // Sentinel = 'TIPCBlob'
    1109           0 :             (msg__)->WriteSentinel(3270420211);
    1110           0 :             return;
    1111             :         }
    1112             :     case type__::TPBackgroundMutableFileParent:
    1113             :         {
    1114           0 :             Write((v__).get_PBackgroundMutableFileParent(), msg__, false);
    1115             :             // Sentinel = 'TPBackgroundMutableFileParent'
    1116           0 :             (msg__)->WriteSentinel(2187321649);
    1117           0 :             return;
    1118             :         }
    1119             :     case type__::TPBackgroundMutableFileChild:
    1120             :         {
    1121           0 :             FatalError("wrong side!");
    1122           0 :             return;
    1123             :         }
    1124             :     default:
    1125             :         {
    1126           0 :             FatalError("unknown union type");
    1127           0 :             return;
    1128             :         }
    1129             :     }
    1130             : }
    1131             : 
    1132           0 : auto PBackgroundIDBCursorParent::Read(
    1133             :         BlobOrMutableFile* v__,
    1134             :         const Message* msg__,
    1135             :         PickleIterator* iter__) -> bool
    1136             : {
    1137             :     typedef BlobOrMutableFile type__;
    1138             :     int type;
    1139           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    1140           0 :         mozilla::ipc::UnionTypeReadError("BlobOrMutableFile");
    1141           0 :         return false;
    1142             :     }
    1143             :     // Sentinel = 'BlobOrMutableFile'
    1144           0 :     if ((!((msg__)->ReadSentinel(iter__, 4107367311)))) {
    1145           0 :         mozilla::ipc::SentinelReadError("BlobOrMutableFile");
    1146           0 :         return false;
    1147             :     }
    1148             : 
    1149           0 :     switch (type) {
    1150             :     case type__::Tnull_t:
    1151             :         {
    1152             :             null_t tmp = null_t();
    1153           0 :             (*(v__)) = tmp;
    1154           0 :             if ((!(Read((&((v__)->get_null_t())), msg__, iter__)))) {
    1155           0 :                 FatalError("Error deserializing Union type");
    1156           0 :                 return false;
    1157             :             }
    1158             :             // Sentinel = 'Tnull_t'
    1159           0 :             if ((!((msg__)->ReadSentinel(iter__, 3731137201)))) {
    1160           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1161           0 :                 return false;
    1162             :             }
    1163           0 :             return true;
    1164             :         }
    1165             :     case type__::TIPCBlob:
    1166             :         {
    1167           0 :             IPCBlob tmp = IPCBlob();
    1168           0 :             (*(v__)) = tmp;
    1169           0 :             if ((!(Read((&((v__)->get_IPCBlob())), msg__, iter__)))) {
    1170           0 :                 FatalError("Error deserializing Union type");
    1171           0 :                 return false;
    1172             :             }
    1173             :             // Sentinel = 'TIPCBlob'
    1174           0 :             if ((!((msg__)->ReadSentinel(iter__, 3270420211)))) {
    1175           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1176           0 :                 return false;
    1177             :             }
    1178           0 :             return true;
    1179             :         }
    1180             :     case type__::TPBackgroundMutableFileParent:
    1181             :         {
    1182           0 :             return false;
    1183             :         }
    1184             :     case type__::TPBackgroundMutableFileChild:
    1185             :         {
    1186           0 :             PBackgroundMutableFileParent* tmp = nullptr;
    1187           0 :             (*(v__)) = tmp;
    1188           0 :             if ((!(Read((&((v__)->get_PBackgroundMutableFileParent())), msg__, iter__, false)))) {
    1189           0 :                 FatalError("Error deserializing Union type");
    1190           0 :                 return false;
    1191             :             }
    1192             :             // Sentinel = 'TPBackgroundMutableFileChild'
    1193           0 :             if ((!((msg__)->ReadSentinel(iter__, 3897825762)))) {
    1194           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1195           0 :                 return false;
    1196             :             }
    1197           0 :             return true;
    1198             :         }
    1199             :     default:
    1200             :         {
    1201           0 :             FatalError("unknown union type");
    1202           0 :             return false;
    1203             :         }
    1204             :     }
    1205             : }
    1206             : 
    1207           0 : auto PBackgroundIDBCursorParent::Write(
    1208             :         const IPCBlobStream& v__,
    1209             :         Message* msg__) -> void
    1210             : {
    1211             :     typedef IPCBlobStream type__;
    1212           0 :     Write(int((v__).type()), msg__);
    1213             :     // Sentinel = 'IPCBlobStream'
    1214           0 :     (msg__)->WriteSentinel(2926762354);
    1215             : 
    1216           0 :     switch ((v__).type()) {
    1217             :     case type__::TPIPCBlobInputStreamParent:
    1218             :         {
    1219           0 :             Write((v__).get_PIPCBlobInputStreamParent(), msg__, false);
    1220             :             // Sentinel = 'TPIPCBlobInputStreamParent'
    1221           0 :             (msg__)->WriteSentinel(2944059743);
    1222           0 :             return;
    1223             :         }
    1224             :     case type__::TPIPCBlobInputStreamChild:
    1225             :         {
    1226           0 :             FatalError("wrong side!");
    1227           0 :             return;
    1228             :         }
    1229             :     case type__::TIPCStream:
    1230             :         {
    1231           0 :             Write((v__).get_IPCStream(), msg__);
    1232             :             // Sentinel = 'TIPCStream'
    1233           0 :             (msg__)->WriteSentinel(40701900);
    1234           0 :             return;
    1235             :         }
    1236             :     default:
    1237             :         {
    1238           0 :             FatalError("unknown union type");
    1239           0 :             return;
    1240             :         }
    1241             :     }
    1242             : }
    1243             : 
    1244           0 : auto PBackgroundIDBCursorParent::Read(
    1245             :         IPCBlobStream* v__,
    1246             :         const Message* msg__,
    1247             :         PickleIterator* iter__) -> bool
    1248             : {
    1249             :     typedef IPCBlobStream type__;
    1250             :     int type;
    1251           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    1252           0 :         mozilla::ipc::UnionTypeReadError("IPCBlobStream");
    1253           0 :         return false;
    1254             :     }
    1255             :     // Sentinel = 'IPCBlobStream'
    1256           0 :     if ((!((msg__)->ReadSentinel(iter__, 2926762354)))) {
    1257           0 :         mozilla::ipc::SentinelReadError("IPCBlobStream");
    1258           0 :         return false;
    1259             :     }
    1260             : 
    1261           0 :     switch (type) {
    1262             :     case type__::TPIPCBlobInputStreamParent:
    1263             :         {
    1264           0 :             return false;
    1265             :         }
    1266             :     case type__::TPIPCBlobInputStreamChild:
    1267             :         {
    1268           0 :             PIPCBlobInputStreamParent* tmp = nullptr;
    1269           0 :             (*(v__)) = tmp;
    1270           0 :             if ((!(Read((&((v__)->get_PIPCBlobInputStreamParent())), msg__, iter__, false)))) {
    1271           0 :                 FatalError("Error deserializing Union type");
    1272           0 :                 return false;
    1273             :             }
    1274             :             // Sentinel = 'TPIPCBlobInputStreamChild'
    1275           0 :             if ((!((msg__)->ReadSentinel(iter__, 3349556844)))) {
    1276           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1277           0 :                 return false;
    1278             :             }
    1279           0 :             return true;
    1280             :         }
    1281             :     case type__::TIPCStream:
    1282             :         {
    1283           0 :             IPCStream tmp = IPCStream();
    1284           0 :             (*(v__)) = tmp;
    1285           0 :             if ((!(Read((&((v__)->get_IPCStream())), msg__, iter__)))) {
    1286           0 :                 FatalError("Error deserializing Union type");
    1287           0 :                 return false;
    1288             :             }
    1289             :             // Sentinel = 'TIPCStream'
    1290           0 :             if ((!((msg__)->ReadSentinel(iter__, 40701900)))) {
    1291           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1292           0 :                 return false;
    1293             :             }
    1294           0 :             return true;
    1295             :         }
    1296             :     default:
    1297             :         {
    1298           0 :             FatalError("unknown union type");
    1299           0 :             return false;
    1300             :         }
    1301             :     }
    1302             : }
    1303             : 
    1304           0 : auto PBackgroundIDBCursorParent::Write(
    1305             :         const nsTArray<FileDescriptor>& v__,
    1306             :         Message* msg__) -> void
    1307             : {
    1308           0 :     uint32_t length = (v__).Length();
    1309           0 :     Write(length, msg__);
    1310             :     // Sentinel = ('length', 'FileDescriptor[]')
    1311           0 :     (msg__)->WriteSentinel(1697726450);
    1312             : 
    1313           0 :     for (auto& elem : v__) {
    1314           0 :         Write(elem, msg__);
    1315             :         // Sentinel = 'FileDescriptor[]'
    1316           0 :         (msg__)->WriteSentinel(1630221245);
    1317             :     }
    1318           0 : }
    1319             : 
    1320           0 : auto PBackgroundIDBCursorParent::Read(
    1321             :         nsTArray<FileDescriptor>* v__,
    1322             :         const Message* msg__,
    1323             :         PickleIterator* iter__) -> bool
    1324             : {
    1325           0 :     nsTArray<FileDescriptor> fa;
    1326             :     uint32_t length;
    1327           0 :     if ((!(Read((&(length)), msg__, iter__)))) {
    1328           0 :         mozilla::ipc::ArrayLengthReadError("FileDescriptor[]");
    1329           0 :         return false;
    1330             :     }
    1331             :     // Sentinel = ('length', 'FileDescriptor[]')
    1332           0 :     if ((!((msg__)->ReadSentinel(iter__, 1697726450)))) {
    1333           0 :         mozilla::ipc::SentinelReadError("FileDescriptor[]");
    1334           0 :         return false;
    1335             :     }
    1336             : 
    1337           0 :     FileDescriptor* elems = (fa).AppendElements(length);
    1338           0 :     for (uint32_t i = 0; (i) < (length); (++(i))) {
    1339           0 :         if ((!(Read((&(elems[i])), msg__, iter__)))) {
    1340           0 :             FatalError("Error deserializing 'FileDescriptor[i]'");
    1341           0 :             return false;
    1342             :         }
    1343             :         // Sentinel = 'FileDescriptor[]'
    1344           0 :         if ((!((msg__)->ReadSentinel(iter__, 1630221245)))) {
    1345           0 :             mozilla::ipc::SentinelReadError("Error deserializing 'FileDescriptor[i]'");
    1346           0 :             return false;
    1347             :         }
    1348             :     }
    1349           0 :     (v__)->SwapElements(fa);
    1350           0 :     return true;
    1351             : }
    1352             : 
    1353           0 : auto PBackgroundIDBCursorParent::Write(
    1354             :         const nsTArray<HeaderEntry>& v__,
    1355             :         Message* msg__) -> void
    1356             : {
    1357           0 :     uint32_t length = (v__).Length();
    1358           0 :     Write(length, msg__);
    1359             :     // Sentinel = ('length', 'HeaderEntry[]')
    1360           0 :     (msg__)->WriteSentinel(2689457705);
    1361             : 
    1362           0 :     for (auto& elem : v__) {
    1363           0 :         Write(elem, msg__);
    1364             :         // Sentinel = 'HeaderEntry[]'
    1365           0 :         (msg__)->WriteSentinel(454836120);
    1366             :     }
    1367           0 : }
    1368             : 
    1369           0 : auto PBackgroundIDBCursorParent::Read(
    1370             :         nsTArray<HeaderEntry>* v__,
    1371             :         const Message* msg__,
    1372             :         PickleIterator* iter__) -> bool
    1373             : {
    1374           0 :     nsTArray<HeaderEntry> fa;
    1375             :     uint32_t length;
    1376           0 :     if ((!(Read((&(length)), msg__, iter__)))) {
    1377           0 :         mozilla::ipc::ArrayLengthReadError("HeaderEntry[]");
    1378           0 :         return false;
    1379             :     }
    1380             :     // Sentinel = ('length', 'HeaderEntry[]')
    1381           0 :     if ((!((msg__)->ReadSentinel(iter__, 2689457705)))) {
    1382           0 :         mozilla::ipc::SentinelReadError("HeaderEntry[]");
    1383           0 :         return false;
    1384             :     }
    1385             : 
    1386           0 :     HeaderEntry* elems = (fa).AppendElements(length);
    1387           0 :     for (uint32_t i = 0; (i) < (length); (++(i))) {
    1388           0 :         if ((!(Read((&(elems[i])), msg__, iter__)))) {
    1389           0 :             FatalError("Error deserializing 'HeaderEntry[i]'");
    1390           0 :             return false;
    1391             :         }
    1392             :         // Sentinel = 'HeaderEntry[]'
    1393           0 :         if ((!((msg__)->ReadSentinel(iter__, 454836120)))) {
    1394           0 :             mozilla::ipc::SentinelReadError("Error deserializing 'HeaderEntry[i]'");
    1395           0 :             return false;
    1396             :         }
    1397             :     }
    1398           0 :     (v__)->SwapElements(fa);
    1399           0 :     return true;
    1400             : }
    1401             : 
    1402           0 : auto PBackgroundIDBCursorParent::Write(
    1403             :         const SlicedInputStreamParams& v__,
    1404             :         Message* msg__) -> void
    1405             : {
    1406           0 :     Write((v__).stream(), msg__);
    1407             :     // Sentinel = 'stream'
    1408           0 :     (msg__)->WriteSentinel(4152748422);
    1409           0 :     Write((v__).start(), msg__);
    1410             :     // Sentinel = 'start'
    1411           0 :     (msg__)->WriteSentinel(2088644401);
    1412           0 :     Write((v__).length(), msg__);
    1413             :     // Sentinel = 'length'
    1414           0 :     (msg__)->WriteSentinel(1726618354);
    1415           0 :     Write((v__).curPos(), msg__);
    1416             :     // Sentinel = 'curPos'
    1417           0 :     (msg__)->WriteSentinel(4042140974);
    1418           0 :     Write((v__).closed(), msg__);
    1419             :     // Sentinel = 'closed'
    1420           0 :     (msg__)->WriteSentinel(561249462);
    1421           0 : }
    1422             : 
    1423           0 : auto PBackgroundIDBCursorParent::Read(
    1424             :         SlicedInputStreamParams* v__,
    1425             :         const Message* msg__,
    1426             :         PickleIterator* iter__) -> bool
    1427             : {
    1428           0 :     if ((!(Read((&((v__)->stream())), msg__, iter__)))) {
    1429           0 :         FatalError("Error deserializing 'stream' (InputStreamParams) member of 'SlicedInputStreamParams'");
    1430           0 :         return false;
    1431             :     }
    1432             :     // Sentinel = 'stream'
    1433           0 :     if ((!((msg__)->ReadSentinel(iter__, 4152748422)))) {
    1434           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'stream' (InputStreamParams) member of 'SlicedInputStreamParams'");
    1435           0 :         return false;
    1436             :     }
    1437           0 :     if ((!(Read((&((v__)->start())), msg__, iter__)))) {
    1438           0 :         FatalError("Error deserializing 'start' (uint64_t) member of 'SlicedInputStreamParams'");
    1439           0 :         return false;
    1440             :     }
    1441             :     // Sentinel = 'start'
    1442           0 :     if ((!((msg__)->ReadSentinel(iter__, 2088644401)))) {
    1443           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'start' (uint64_t) member of 'SlicedInputStreamParams'");
    1444           0 :         return false;
    1445             :     }
    1446           0 :     if ((!(Read((&((v__)->length())), msg__, iter__)))) {
    1447           0 :         FatalError("Error deserializing 'length' (uint64_t) member of 'SlicedInputStreamParams'");
    1448           0 :         return false;
    1449             :     }
    1450             :     // Sentinel = 'length'
    1451           0 :     if ((!((msg__)->ReadSentinel(iter__, 1726618354)))) {
    1452           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'length' (uint64_t) member of 'SlicedInputStreamParams'");
    1453           0 :         return false;
    1454             :     }
    1455           0 :     if ((!(Read((&((v__)->curPos())), msg__, iter__)))) {
    1456           0 :         FatalError("Error deserializing 'curPos' (uint64_t) member of 'SlicedInputStreamParams'");
    1457           0 :         return false;
    1458             :     }
    1459             :     // Sentinel = 'curPos'
    1460           0 :     if ((!((msg__)->ReadSentinel(iter__, 4042140974)))) {
    1461           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'curPos' (uint64_t) member of 'SlicedInputStreamParams'");
    1462           0 :         return false;
    1463             :     }
    1464           0 :     if ((!(Read((&((v__)->closed())), msg__, iter__)))) {
    1465           0 :         FatalError("Error deserializing 'closed' (bool) member of 'SlicedInputStreamParams'");
    1466           0 :         return false;
    1467             :     }
    1468             :     // Sentinel = 'closed'
    1469           0 :     if ((!((msg__)->ReadSentinel(iter__, 561249462)))) {
    1470           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'closed' (bool) member of 'SlicedInputStreamParams'");
    1471           0 :         return false;
    1472             :     }
    1473           0 :     return true;
    1474             : }
    1475             : 
    1476           0 : auto PBackgroundIDBCursorParent::Write(
    1477             :         const nsTArray<ObjectStoreCursorResponse>& v__,
    1478             :         Message* msg__) -> void
    1479             : {
    1480           0 :     uint32_t length = (v__).Length();
    1481           0 :     Write(length, msg__);
    1482             :     // Sentinel = ('length', 'ObjectStoreCursorResponse[]')
    1483           0 :     (msg__)->WriteSentinel(1557849029);
    1484             : 
    1485           0 :     for (auto& elem : v__) {
    1486           0 :         Write(elem, msg__);
    1487             :         // Sentinel = 'ObjectStoreCursorResponse[]'
    1488           0 :         (msg__)->WriteSentinel(2591435468);
    1489             :     }
    1490           0 : }
    1491             : 
    1492           0 : auto PBackgroundIDBCursorParent::Read(
    1493             :         nsTArray<ObjectStoreCursorResponse>* v__,
    1494             :         const Message* msg__,
    1495             :         PickleIterator* iter__) -> bool
    1496             : {
    1497           0 :     nsTArray<ObjectStoreCursorResponse> fa;
    1498             :     uint32_t length;
    1499           0 :     if ((!(Read((&(length)), msg__, iter__)))) {
    1500           0 :         mozilla::ipc::ArrayLengthReadError("ObjectStoreCursorResponse[]");
    1501           0 :         return false;
    1502             :     }
    1503             :     // Sentinel = ('length', 'ObjectStoreCursorResponse[]')
    1504           0 :     if ((!((msg__)->ReadSentinel(iter__, 1557849029)))) {
    1505           0 :         mozilla::ipc::SentinelReadError("ObjectStoreCursorResponse[]");
    1506           0 :         return false;
    1507             :     }
    1508             : 
    1509           0 :     ObjectStoreCursorResponse* elems = (fa).AppendElements(length);
    1510           0 :     for (uint32_t i = 0; (i) < (length); (++(i))) {
    1511           0 :         if ((!(Read((&(elems[i])), msg__, iter__)))) {
    1512           0 :             FatalError("Error deserializing 'ObjectStoreCursorResponse[i]'");
    1513           0 :             return false;
    1514             :         }
    1515             :         // Sentinel = 'ObjectStoreCursorResponse[]'
    1516           0 :         if ((!((msg__)->ReadSentinel(iter__, 2591435468)))) {
    1517           0 :             mozilla::ipc::SentinelReadError("Error deserializing 'ObjectStoreCursorResponse[i]'");
    1518           0 :             return false;
    1519             :         }
    1520             :     }
    1521           0 :     (v__)->SwapElements(fa);
    1522           0 :     return true;
    1523             : }
    1524             : 
    1525           0 : auto PBackgroundIDBCursorParent::Write(
    1526             :         const IPCRemoteStreamType& v__,
    1527             :         Message* msg__) -> void
    1528             : {
    1529             :     typedef IPCRemoteStreamType type__;
    1530           0 :     Write(int((v__).type()), msg__);
    1531             :     // Sentinel = 'IPCRemoteStreamType'
    1532           0 :     (msg__)->WriteSentinel(391674895);
    1533             : 
    1534           0 :     switch ((v__).type()) {
    1535             :     case type__::TPChildToParentStreamParent:
    1536             :         {
    1537           0 :             Write((v__).get_PChildToParentStreamParent(), msg__, false);
    1538             :             // Sentinel = 'TPChildToParentStreamParent'
    1539           0 :             (msg__)->WriteSentinel(2724777622);
    1540           0 :             return;
    1541             :         }
    1542             :     case type__::TPChildToParentStreamChild:
    1543             :         {
    1544           0 :             FatalError("wrong side!");
    1545           0 :             return;
    1546             :         }
    1547             :     case type__::TPParentToChildStreamParent:
    1548             :         {
    1549           0 :             Write((v__).get_PParentToChildStreamParent(), msg__, false);
    1550             :             // Sentinel = 'TPParentToChildStreamParent'
    1551           0 :             (msg__)->WriteSentinel(3335986876);
    1552           0 :             return;
    1553             :         }
    1554             :     case type__::TPParentToChildStreamChild:
    1555             :         {
    1556           0 :             FatalError("wrong side!");
    1557           0 :             return;
    1558             :         }
    1559             :     default:
    1560             :         {
    1561           0 :             FatalError("unknown union type");
    1562           0 :             return;
    1563             :         }
    1564             :     }
    1565             : }
    1566             : 
    1567           0 : auto PBackgroundIDBCursorParent::Read(
    1568             :         IPCRemoteStreamType* v__,
    1569             :         const Message* msg__,
    1570             :         PickleIterator* iter__) -> bool
    1571             : {
    1572             :     typedef IPCRemoteStreamType type__;
    1573             :     int type;
    1574           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    1575           0 :         mozilla::ipc::UnionTypeReadError("IPCRemoteStreamType");
    1576           0 :         return false;
    1577             :     }
    1578             :     // Sentinel = 'IPCRemoteStreamType'
    1579           0 :     if ((!((msg__)->ReadSentinel(iter__, 391674895)))) {
    1580           0 :         mozilla::ipc::SentinelReadError("IPCRemoteStreamType");
    1581           0 :         return false;
    1582             :     }
    1583             : 
    1584           0 :     switch (type) {
    1585             :     case type__::TPChildToParentStreamParent:
    1586             :         {
    1587           0 :             return false;
    1588             :         }
    1589             :     case type__::TPChildToParentStreamChild:
    1590             :         {
    1591           0 :             PChildToParentStreamParent* tmp = nullptr;
    1592           0 :             (*(v__)) = tmp;
    1593           0 :             if ((!(Read((&((v__)->get_PChildToParentStreamParent())), msg__, iter__, false)))) {
    1594           0 :                 FatalError("Error deserializing Union type");
    1595           0 :                 return false;
    1596             :             }
    1597             :             // Sentinel = 'TPChildToParentStreamChild'
    1598           0 :             if ((!((msg__)->ReadSentinel(iter__, 1882094295)))) {
    1599           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1600           0 :                 return false;
    1601             :             }
    1602           0 :             return true;
    1603             :         }
    1604             :     case type__::TPParentToChildStreamParent:
    1605             :         {
    1606           0 :             return false;
    1607             :         }
    1608             :     case type__::TPParentToChildStreamChild:
    1609             :         {
    1610           0 :             PParentToChildStreamParent* tmp = nullptr;
    1611           0 :             (*(v__)) = tmp;
    1612           0 :             if ((!(Read((&((v__)->get_PParentToChildStreamParent())), msg__, iter__, false)))) {
    1613           0 :                 FatalError("Error deserializing Union type");
    1614           0 :                 return false;
    1615             :             }
    1616             :             // Sentinel = 'TPParentToChildStreamChild'
    1617           0 :             if ((!((msg__)->ReadSentinel(iter__, 190098493)))) {
    1618           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1619           0 :                 return false;
    1620             :             }
    1621           0 :             return true;
    1622             :         }
    1623             :     default:
    1624             :         {
    1625           0 :             FatalError("unknown union type");
    1626           0 :             return false;
    1627             :         }
    1628             :     }
    1629             : }
    1630             : 
    1631           0 : auto PBackgroundIDBCursorParent::Write(
    1632             :         const AdvanceParams& v__,
    1633             :         Message* msg__) -> void
    1634             : {
    1635           0 :     Write((v__).count(), msg__);
    1636             :     // Sentinel = 'count'
    1637           0 :     (msg__)->WriteSentinel(2126421856);
    1638           0 : }
    1639             : 
    1640           0 : auto PBackgroundIDBCursorParent::Read(
    1641             :         AdvanceParams* v__,
    1642             :         const Message* msg__,
    1643             :         PickleIterator* iter__) -> bool
    1644             : {
    1645           0 :     if ((!(Read((&((v__)->count())), msg__, iter__)))) {
    1646           0 :         FatalError("Error deserializing 'count' (uint32_t) member of 'AdvanceParams'");
    1647           0 :         return false;
    1648             :     }
    1649             :     // Sentinel = 'count'
    1650           0 :     if ((!((msg__)->ReadSentinel(iter__, 2126421856)))) {
    1651           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'count' (uint32_t) member of 'AdvanceParams'");
    1652           0 :         return false;
    1653             :     }
    1654           0 :     return true;
    1655             : }
    1656             : 
    1657           0 : auto PBackgroundIDBCursorParent::Write(
    1658             :         const TemporaryFileInputStreamParams& v__,
    1659             :         Message* msg__) -> void
    1660             : {
    1661           0 :     Write((v__).fileDescriptorIndex(), msg__);
    1662             :     // Sentinel = 'fileDescriptorIndex'
    1663           0 :     (msg__)->WriteSentinel(587329112);
    1664           0 :     Write((v__).startPos(), msg__);
    1665             :     // Sentinel = 'startPos'
    1666           0 :     (msg__)->WriteSentinel(557207962);
    1667           0 :     Write((v__).endPos(), msg__);
    1668             :     // Sentinel = 'endPos'
    1669           0 :     (msg__)->WriteSentinel(881536245);
    1670           0 : }
    1671             : 
    1672           0 : auto PBackgroundIDBCursorParent::Read(
    1673             :         TemporaryFileInputStreamParams* v__,
    1674             :         const Message* msg__,
    1675             :         PickleIterator* iter__) -> bool
    1676             : {
    1677           0 :     if ((!(Read((&((v__)->fileDescriptorIndex())), msg__, iter__)))) {
    1678           0 :         FatalError("Error deserializing 'fileDescriptorIndex' (uint32_t) member of 'TemporaryFileInputStreamParams'");
    1679           0 :         return false;
    1680             :     }
    1681             :     // Sentinel = 'fileDescriptorIndex'
    1682           0 :     if ((!((msg__)->ReadSentinel(iter__, 587329112)))) {
    1683           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'fileDescriptorIndex' (uint32_t) member of 'TemporaryFileInputStreamParams'");
    1684           0 :         return false;
    1685             :     }
    1686           0 :     if ((!(Read((&((v__)->startPos())), msg__, iter__)))) {
    1687           0 :         FatalError("Error deserializing 'startPos' (uint64_t) member of 'TemporaryFileInputStreamParams'");
    1688           0 :         return false;
    1689             :     }
    1690             :     // Sentinel = 'startPos'
    1691           0 :     if ((!((msg__)->ReadSentinel(iter__, 557207962)))) {
    1692           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'startPos' (uint64_t) member of 'TemporaryFileInputStreamParams'");
    1693           0 :         return false;
    1694             :     }
    1695           0 :     if ((!(Read((&((v__)->endPos())), msg__, iter__)))) {
    1696           0 :         FatalError("Error deserializing 'endPos' (uint64_t) member of 'TemporaryFileInputStreamParams'");
    1697           0 :         return false;
    1698             :     }
    1699             :     // Sentinel = 'endPos'
    1700           0 :     if ((!((msg__)->ReadSentinel(iter__, 881536245)))) {
    1701           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'endPos' (uint64_t) member of 'TemporaryFileInputStreamParams'");
    1702           0 :         return false;
    1703             :     }
    1704           0 :     return true;
    1705             : }
    1706             : 
    1707           0 : auto PBackgroundIDBCursorParent::Write(
    1708             :         const InputStreamParams& v__,
    1709             :         Message* msg__) -> void
    1710             : {
    1711             :     typedef InputStreamParams type__;
    1712           0 :     Write(int((v__).type()), msg__);
    1713             :     // Sentinel = 'InputStreamParams'
    1714           0 :     (msg__)->WriteSentinel(4114814015);
    1715             : 
    1716           0 :     switch ((v__).type()) {
    1717             :     case type__::TStringInputStreamParams:
    1718             :         {
    1719           0 :             Write((v__).get_StringInputStreamParams(), msg__);
    1720             :             // Sentinel = 'TStringInputStreamParams'
    1721           0 :             (msg__)->WriteSentinel(3395831651);
    1722           0 :             return;
    1723             :         }
    1724             :     case type__::TFileInputStreamParams:
    1725             :         {
    1726           0 :             Write((v__).get_FileInputStreamParams(), msg__);
    1727             :             // Sentinel = 'TFileInputStreamParams'
    1728           0 :             (msg__)->WriteSentinel(2543620282);
    1729           0 :             return;
    1730             :         }
    1731             :     case type__::TTemporaryFileInputStreamParams:
    1732             :         {
    1733           0 :             Write((v__).get_TemporaryFileInputStreamParams(), msg__);
    1734             :             // Sentinel = 'TTemporaryFileInputStreamParams'
    1735           0 :             (msg__)->WriteSentinel(587771548);
    1736           0 :             return;
    1737             :         }
    1738             :     case type__::TBufferedInputStreamParams:
    1739             :         {
    1740           0 :             Write((v__).get_BufferedInputStreamParams(), msg__);
    1741             :             // Sentinel = 'TBufferedInputStreamParams'
    1742           0 :             (msg__)->WriteSentinel(1698289307);
    1743           0 :             return;
    1744             :         }
    1745             :     case type__::TMIMEInputStreamParams:
    1746             :         {
    1747           0 :             Write((v__).get_MIMEInputStreamParams(), msg__);
    1748             :             // Sentinel = 'TMIMEInputStreamParams'
    1749           0 :             (msg__)->WriteSentinel(1948001964);
    1750           0 :             return;
    1751             :         }
    1752             :     case type__::TMultiplexInputStreamParams:
    1753             :         {
    1754           0 :             Write((v__).get_MultiplexInputStreamParams(), msg__);
    1755             :             // Sentinel = 'TMultiplexInputStreamParams'
    1756           0 :             (msg__)->WriteSentinel(3317853213);
    1757           0 :             return;
    1758             :         }
    1759             :     case type__::TSlicedInputStreamParams:
    1760             :         {
    1761           0 :             Write((v__).get_SlicedInputStreamParams(), msg__);
    1762             :             // Sentinel = 'TSlicedInputStreamParams'
    1763           0 :             (msg__)->WriteSentinel(445810472);
    1764           0 :             return;
    1765             :         }
    1766             :     case type__::TIPCBlobInputStreamParams:
    1767             :         {
    1768           0 :             Write((v__).get_IPCBlobInputStreamParams(), msg__);
    1769             :             // Sentinel = 'TIPCBlobInputStreamParams'
    1770           0 :             (msg__)->WriteSentinel(2436989998);
    1771           0 :             return;
    1772             :         }
    1773             :     default:
    1774             :         {
    1775           0 :             FatalError("unknown union type");
    1776           0 :             return;
    1777             :         }
    1778             :     }
    1779             : }
    1780             : 
    1781           0 : auto PBackgroundIDBCursorParent::Read(
    1782             :         InputStreamParams* v__,
    1783             :         const Message* msg__,
    1784             :         PickleIterator* iter__) -> bool
    1785             : {
    1786             :     typedef InputStreamParams type__;
    1787             :     int type;
    1788           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    1789           0 :         mozilla::ipc::UnionTypeReadError("InputStreamParams");
    1790           0 :         return false;
    1791             :     }
    1792             :     // Sentinel = 'InputStreamParams'
    1793           0 :     if ((!((msg__)->ReadSentinel(iter__, 4114814015)))) {
    1794           0 :         mozilla::ipc::SentinelReadError("InputStreamParams");
    1795           0 :         return false;
    1796             :     }
    1797             : 
    1798           0 :     switch (type) {
    1799             :     case type__::TStringInputStreamParams:
    1800             :         {
    1801           0 :             StringInputStreamParams tmp = StringInputStreamParams();
    1802           0 :             (*(v__)) = tmp;
    1803           0 :             if ((!(Read((&((v__)->get_StringInputStreamParams())), msg__, iter__)))) {
    1804           0 :                 FatalError("Error deserializing Union type");
    1805           0 :                 return false;
    1806             :             }
    1807             :             // Sentinel = 'TStringInputStreamParams'
    1808           0 :             if ((!((msg__)->ReadSentinel(iter__, 3395831651)))) {
    1809           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1810           0 :                 return false;
    1811             :             }
    1812           0 :             return true;
    1813             :         }
    1814             :     case type__::TFileInputStreamParams:
    1815             :         {
    1816           0 :             FileInputStreamParams tmp = FileInputStreamParams();
    1817           0 :             (*(v__)) = tmp;
    1818           0 :             if ((!(Read((&((v__)->get_FileInputStreamParams())), msg__, iter__)))) {
    1819           0 :                 FatalError("Error deserializing Union type");
    1820           0 :                 return false;
    1821             :             }
    1822             :             // Sentinel = 'TFileInputStreamParams'
    1823           0 :             if ((!((msg__)->ReadSentinel(iter__, 2543620282)))) {
    1824           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1825           0 :                 return false;
    1826             :             }
    1827           0 :             return true;
    1828             :         }
    1829             :     case type__::TTemporaryFileInputStreamParams:
    1830             :         {
    1831           0 :             TemporaryFileInputStreamParams tmp = TemporaryFileInputStreamParams();
    1832           0 :             (*(v__)) = tmp;
    1833           0 :             if ((!(Read((&((v__)->get_TemporaryFileInputStreamParams())), msg__, iter__)))) {
    1834           0 :                 FatalError("Error deserializing Union type");
    1835           0 :                 return false;
    1836             :             }
    1837             :             // Sentinel = 'TTemporaryFileInputStreamParams'
    1838           0 :             if ((!((msg__)->ReadSentinel(iter__, 587771548)))) {
    1839           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1840           0 :                 return false;
    1841             :             }
    1842           0 :             return true;
    1843             :         }
    1844             :     case type__::TBufferedInputStreamParams:
    1845             :         {
    1846           0 :             BufferedInputStreamParams tmp = BufferedInputStreamParams();
    1847           0 :             (*(v__)) = tmp;
    1848           0 :             if ((!(Read((&((v__)->get_BufferedInputStreamParams())), msg__, iter__)))) {
    1849           0 :                 FatalError("Error deserializing Union type");
    1850           0 :                 return false;
    1851             :             }
    1852             :             // Sentinel = 'TBufferedInputStreamParams'
    1853           0 :             if ((!((msg__)->ReadSentinel(iter__, 1698289307)))) {
    1854           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1855           0 :                 return false;
    1856             :             }
    1857           0 :             return true;
    1858             :         }
    1859             :     case type__::TMIMEInputStreamParams:
    1860             :         {
    1861           0 :             MIMEInputStreamParams tmp = MIMEInputStreamParams();
    1862           0 :             (*(v__)) = tmp;
    1863           0 :             if ((!(Read((&((v__)->get_MIMEInputStreamParams())), msg__, iter__)))) {
    1864           0 :                 FatalError("Error deserializing Union type");
    1865           0 :                 return false;
    1866             :             }
    1867             :             // Sentinel = 'TMIMEInputStreamParams'
    1868           0 :             if ((!((msg__)->ReadSentinel(iter__, 1948001964)))) {
    1869           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1870           0 :                 return false;
    1871             :             }
    1872           0 :             return true;
    1873             :         }
    1874             :     case type__::TMultiplexInputStreamParams:
    1875             :         {
    1876           0 :             MultiplexInputStreamParams tmp = MultiplexInputStreamParams();
    1877           0 :             (*(v__)) = tmp;
    1878           0 :             if ((!(Read((&((v__)->get_MultiplexInputStreamParams())), msg__, iter__)))) {
    1879           0 :                 FatalError("Error deserializing Union type");
    1880           0 :                 return false;
    1881             :             }
    1882             :             // Sentinel = 'TMultiplexInputStreamParams'
    1883           0 :             if ((!((msg__)->ReadSentinel(iter__, 3317853213)))) {
    1884           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1885           0 :                 return false;
    1886             :             }
    1887           0 :             return true;
    1888             :         }
    1889             :     case type__::TSlicedInputStreamParams:
    1890             :         {
    1891           0 :             SlicedInputStreamParams tmp = SlicedInputStreamParams();
    1892           0 :             (*(v__)) = tmp;
    1893           0 :             if ((!(Read((&((v__)->get_SlicedInputStreamParams())), msg__, iter__)))) {
    1894           0 :                 FatalError("Error deserializing Union type");
    1895           0 :                 return false;
    1896             :             }
    1897             :             // Sentinel = 'TSlicedInputStreamParams'
    1898           0 :             if ((!((msg__)->ReadSentinel(iter__, 445810472)))) {
    1899           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1900           0 :                 return false;
    1901             :             }
    1902           0 :             return true;
    1903             :         }
    1904             :     case type__::TIPCBlobInputStreamParams:
    1905             :         {
    1906           0 :             IPCBlobInputStreamParams tmp = IPCBlobInputStreamParams();
    1907           0 :             (*(v__)) = tmp;
    1908           0 :             if ((!(Read((&((v__)->get_IPCBlobInputStreamParams())), msg__, iter__)))) {
    1909           0 :                 FatalError("Error deserializing Union type");
    1910           0 :                 return false;
    1911             :             }
    1912             :             // Sentinel = 'TIPCBlobInputStreamParams'
    1913           0 :             if ((!((msg__)->ReadSentinel(iter__, 2436989998)))) {
    1914           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    1915           0 :                 return false;
    1916             :             }
    1917           0 :             return true;
    1918             :         }
    1919             :     default:
    1920             :         {
    1921           0 :             FatalError("unknown union type");
    1922           0 :             return false;
    1923             :         }
    1924             :     }
    1925             : }
    1926             : 
    1927           0 : auto PBackgroundIDBCursorParent::Write(
    1928             :         const PParentToChildStreamParent* v__,
    1929             :         Message* msg__,
    1930             :         bool nullable__) -> void
    1931             : {
    1932             :     int32_t id;
    1933           0 :     if ((!(v__))) {
    1934           0 :         if ((!(nullable__))) {
    1935           0 :             FatalError("NULL actor value passed to non-nullable param");
    1936             :         }
    1937           0 :         id = 0;
    1938             :     }
    1939             :     else {
    1940           0 :         id = (v__)->Id();
    1941           0 :         if ((1) == (id)) {
    1942           0 :             FatalError("actor has been |delete|d");
    1943             :         }
    1944             :     }
    1945             : 
    1946           0 :     Write(id, msg__);
    1947           0 : }
    1948             : 
    1949           0 : auto PBackgroundIDBCursorParent::Read(
    1950             :         PParentToChildStreamParent** v__,
    1951             :         const Message* msg__,
    1952             :         PickleIterator* iter__,
    1953             :         bool nullable__) -> bool
    1954             : {
    1955           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PParentToChildStream", PParentToChildStreamMsgStart);
    1956           0 :     if ((actor).isNothing()) {
    1957           0 :         return false;
    1958             :     }
    1959             : 
    1960           0 :     (*(v__)) = static_cast<PParentToChildStreamParent*>((actor).value());
    1961           0 :     return true;
    1962             : }
    1963             : 
    1964           0 : auto PBackgroundIDBCursorParent::Write(
    1965             :         const IndexKeyCursorResponse& v__,
    1966             :         Message* msg__) -> void
    1967             : {
    1968           0 :     Write((v__).key(), msg__);
    1969             :     // Sentinel = 'key'
    1970           0 :     (msg__)->WriteSentinel(35142870);
    1971           0 :     Write((v__).sortKey(), msg__);
    1972             :     // Sentinel = 'sortKey'
    1973           0 :     (msg__)->WriteSentinel(3767624686);
    1974           0 :     Write((v__).objectKey(), msg__);
    1975             :     // Sentinel = 'objectKey'
    1976           0 :     (msg__)->WriteSentinel(339559251);
    1977           0 : }
    1978             : 
    1979           0 : auto PBackgroundIDBCursorParent::Read(
    1980             :         IndexKeyCursorResponse* v__,
    1981             :         const Message* msg__,
    1982             :         PickleIterator* iter__) -> bool
    1983             : {
    1984           0 :     if ((!(Read((&((v__)->key())), msg__, iter__)))) {
    1985           0 :         FatalError("Error deserializing 'key' (Key) member of 'IndexKeyCursorResponse'");
    1986           0 :         return false;
    1987             :     }
    1988             :     // Sentinel = 'key'
    1989           0 :     if ((!((msg__)->ReadSentinel(iter__, 35142870)))) {
    1990           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'IndexKeyCursorResponse'");
    1991           0 :         return false;
    1992             :     }
    1993           0 :     if ((!(Read((&((v__)->sortKey())), msg__, iter__)))) {
    1994           0 :         FatalError("Error deserializing 'sortKey' (Key) member of 'IndexKeyCursorResponse'");
    1995           0 :         return false;
    1996             :     }
    1997             :     // Sentinel = 'sortKey'
    1998           0 :     if ((!((msg__)->ReadSentinel(iter__, 3767624686)))) {
    1999           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'sortKey' (Key) member of 'IndexKeyCursorResponse'");
    2000           0 :         return false;
    2001             :     }
    2002           0 :     if ((!(Read((&((v__)->objectKey())), msg__, iter__)))) {
    2003           0 :         FatalError("Error deserializing 'objectKey' (Key) member of 'IndexKeyCursorResponse'");
    2004           0 :         return false;
    2005             :     }
    2006             :     // Sentinel = 'objectKey'
    2007           0 :     if ((!((msg__)->ReadSentinel(iter__, 339559251)))) {
    2008           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'objectKey' (Key) member of 'IndexKeyCursorResponse'");
    2009           0 :         return false;
    2010             :     }
    2011           0 :     return true;
    2012             : }
    2013             : 
    2014           0 : auto PBackgroundIDBCursorParent::Write(
    2015             :         const IPCStream& v__,
    2016             :         Message* msg__) -> void
    2017             : {
    2018             :     typedef IPCStream type__;
    2019           0 :     Write(int((v__).type()), msg__);
    2020             :     // Sentinel = 'IPCStream'
    2021           0 :     (msg__)->WriteSentinel(442610715);
    2022             : 
    2023           0 :     switch ((v__).type()) {
    2024             :     case type__::TInputStreamParamsWithFds:
    2025             :         {
    2026           0 :             Write((v__).get_InputStreamParamsWithFds(), msg__);
    2027             :             // Sentinel = 'TInputStreamParamsWithFds'
    2028           0 :             (msg__)->WriteSentinel(2170706066);
    2029           0 :             return;
    2030             :         }
    2031             :     case type__::TIPCRemoteStream:
    2032             :         {
    2033           0 :             Write((v__).get_IPCRemoteStream(), msg__);
    2034             :             // Sentinel = 'TIPCRemoteStream'
    2035           0 :             (msg__)->WriteSentinel(2978132448);
    2036           0 :             return;
    2037             :         }
    2038             :     default:
    2039             :         {
    2040           0 :             FatalError("unknown union type");
    2041           0 :             return;
    2042             :         }
    2043             :     }
    2044             : }
    2045             : 
    2046           0 : auto PBackgroundIDBCursorParent::Read(
    2047             :         IPCStream* v__,
    2048             :         const Message* msg__,
    2049             :         PickleIterator* iter__) -> bool
    2050             : {
    2051             :     typedef IPCStream type__;
    2052             :     int type;
    2053           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    2054           0 :         mozilla::ipc::UnionTypeReadError("IPCStream");
    2055           0 :         return false;
    2056             :     }
    2057             :     // Sentinel = 'IPCStream'
    2058           0 :     if ((!((msg__)->ReadSentinel(iter__, 442610715)))) {
    2059           0 :         mozilla::ipc::SentinelReadError("IPCStream");
    2060           0 :         return false;
    2061             :     }
    2062             : 
    2063           0 :     switch (type) {
    2064             :     case type__::TInputStreamParamsWithFds:
    2065             :         {
    2066           0 :             InputStreamParamsWithFds tmp = InputStreamParamsWithFds();
    2067           0 :             (*(v__)) = tmp;
    2068           0 :             if ((!(Read((&((v__)->get_InputStreamParamsWithFds())), msg__, iter__)))) {
    2069           0 :                 FatalError("Error deserializing Union type");
    2070           0 :                 return false;
    2071             :             }
    2072             :             // Sentinel = 'TInputStreamParamsWithFds'
    2073           0 :             if ((!((msg__)->ReadSentinel(iter__, 2170706066)))) {
    2074           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2075           0 :                 return false;
    2076             :             }
    2077           0 :             return true;
    2078             :         }
    2079             :     case type__::TIPCRemoteStream:
    2080             :         {
    2081           0 :             IPCRemoteStream tmp = IPCRemoteStream();
    2082           0 :             (*(v__)) = tmp;
    2083           0 :             if ((!(Read((&((v__)->get_IPCRemoteStream())), msg__, iter__)))) {
    2084           0 :                 FatalError("Error deserializing Union type");
    2085           0 :                 return false;
    2086             :             }
    2087             :             // Sentinel = 'TIPCRemoteStream'
    2088           0 :             if ((!((msg__)->ReadSentinel(iter__, 2978132448)))) {
    2089           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2090           0 :                 return false;
    2091             :             }
    2092           0 :             return true;
    2093             :         }
    2094             :     default:
    2095             :         {
    2096           0 :             FatalError("unknown union type");
    2097           0 :             return false;
    2098             :         }
    2099             :     }
    2100             : }
    2101             : 
    2102           0 : auto PBackgroundIDBCursorParent::Write(
    2103             :         const SerializedStructuredCloneFile& v__,
    2104             :         Message* msg__) -> void
    2105             : {
    2106           0 :     Write((v__).file(), msg__);
    2107             :     // Sentinel = 'file'
    2108           0 :     (msg__)->WriteSentinel(224874390);
    2109           0 :     Write((v__).type(), msg__);
    2110             :     // Sentinel = 'type'
    2111           0 :     (msg__)->WriteSentinel(2982068540);
    2112           0 : }
    2113             : 
    2114           0 : auto PBackgroundIDBCursorParent::Read(
    2115             :         SerializedStructuredCloneFile* v__,
    2116             :         const Message* msg__,
    2117             :         PickleIterator* iter__) -> bool
    2118             : {
    2119           0 :     if ((!(Read((&((v__)->file())), msg__, iter__)))) {
    2120           0 :         FatalError("Error deserializing 'file' (BlobOrMutableFile) member of 'SerializedStructuredCloneFile'");
    2121           0 :         return false;
    2122             :     }
    2123             :     // Sentinel = 'file'
    2124           0 :     if ((!((msg__)->ReadSentinel(iter__, 224874390)))) {
    2125           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'file' (BlobOrMutableFile) member of 'SerializedStructuredCloneFile'");
    2126           0 :         return false;
    2127             :     }
    2128           0 :     if ((!(Read((&((v__)->type())), msg__, iter__)))) {
    2129           0 :         FatalError("Error deserializing 'type' (FileType) member of 'SerializedStructuredCloneFile'");
    2130           0 :         return false;
    2131             :     }
    2132             :     // Sentinel = 'type'
    2133           0 :     if ((!((msg__)->ReadSentinel(iter__, 2982068540)))) {
    2134           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'type' (FileType) member of 'SerializedStructuredCloneFile'");
    2135           0 :         return false;
    2136             :     }
    2137           0 :     return true;
    2138             : }
    2139             : 
    2140           0 : auto PBackgroundIDBCursorParent::Write(
    2141             :         const StringInputStreamParams& v__,
    2142             :         Message* msg__) -> void
    2143             : {
    2144           0 :     Write((v__).data(), msg__);
    2145             :     // Sentinel = 'data'
    2146           0 :     (msg__)->WriteSentinel(843352540);
    2147           0 : }
    2148             : 
    2149           0 : auto PBackgroundIDBCursorParent::Read(
    2150             :         StringInputStreamParams* v__,
    2151             :         const Message* msg__,
    2152             :         PickleIterator* iter__) -> bool
    2153             : {
    2154           0 :     if ((!(Read((&((v__)->data())), msg__, iter__)))) {
    2155           0 :         FatalError("Error deserializing 'data' (nsCString) member of 'StringInputStreamParams'");
    2156           0 :         return false;
    2157             :     }
    2158             :     // Sentinel = 'data'
    2159           0 :     if ((!((msg__)->ReadSentinel(iter__, 843352540)))) {
    2160           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'data' (nsCString) member of 'StringInputStreamParams'");
    2161           0 :         return false;
    2162             :     }
    2163           0 :     return true;
    2164             : }
    2165             : 
    2166           0 : auto PBackgroundIDBCursorParent::Write(
    2167             :         const InputStreamParamsWithFds& v__,
    2168             :         Message* msg__) -> void
    2169             : {
    2170           0 :     Write((v__).stream(), msg__);
    2171             :     // Sentinel = 'stream'
    2172           0 :     (msg__)->WriteSentinel(4152748422);
    2173           0 :     Write((v__).optionalFds(), msg__);
    2174             :     // Sentinel = 'optionalFds'
    2175           0 :     (msg__)->WriteSentinel(1021803302);
    2176           0 : }
    2177             : 
    2178           0 : auto PBackgroundIDBCursorParent::Read(
    2179             :         InputStreamParamsWithFds* v__,
    2180             :         const Message* msg__,
    2181             :         PickleIterator* iter__) -> bool
    2182             : {
    2183           0 :     if ((!(Read((&((v__)->stream())), msg__, iter__)))) {
    2184           0 :         FatalError("Error deserializing 'stream' (InputStreamParams) member of 'InputStreamParamsWithFds'");
    2185           0 :         return false;
    2186             :     }
    2187             :     // Sentinel = 'stream'
    2188           0 :     if ((!((msg__)->ReadSentinel(iter__, 4152748422)))) {
    2189           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'stream' (InputStreamParams) member of 'InputStreamParamsWithFds'");
    2190           0 :         return false;
    2191             :     }
    2192           0 :     if ((!(Read((&((v__)->optionalFds())), msg__, iter__)))) {
    2193           0 :         FatalError("Error deserializing 'optionalFds' (OptionalFileDescriptorSet) member of 'InputStreamParamsWithFds'");
    2194           0 :         return false;
    2195             :     }
    2196             :     // Sentinel = 'optionalFds'
    2197           0 :     if ((!((msg__)->ReadSentinel(iter__, 1021803302)))) {
    2198           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'optionalFds' (OptionalFileDescriptorSet) member of 'InputStreamParamsWithFds'");
    2199           0 :         return false;
    2200             :     }
    2201           0 :     return true;
    2202             : }
    2203             : 
    2204           0 : auto PBackgroundIDBCursorParent::Write(
    2205             :         const MultiplexInputStreamParams& v__,
    2206             :         Message* msg__) -> void
    2207             : {
    2208           0 :     Write((v__).streams(), msg__);
    2209             :     // Sentinel = 'streams'
    2210           0 :     (msg__)->WriteSentinel(4240383220);
    2211           0 :     Write((v__).currentStream(), msg__);
    2212             :     // Sentinel = 'currentStream'
    2213           0 :     (msg__)->WriteSentinel(682778074);
    2214           0 :     Write((v__).status(), msg__);
    2215             :     // Sentinel = 'status'
    2216           0 :     (msg__)->WriteSentinel(3714608576);
    2217           0 :     Write((v__).startedReadingCurrent(), msg__);
    2218             :     // Sentinel = 'startedReadingCurrent'
    2219           0 :     (msg__)->WriteSentinel(970542033);
    2220           0 : }
    2221             : 
    2222           0 : auto PBackgroundIDBCursorParent::Read(
    2223             :         MultiplexInputStreamParams* v__,
    2224             :         const Message* msg__,
    2225             :         PickleIterator* iter__) -> bool
    2226             : {
    2227           0 :     if ((!(Read((&((v__)->streams())), msg__, iter__)))) {
    2228           0 :         FatalError("Error deserializing 'streams' (InputStreamParams[]) member of 'MultiplexInputStreamParams'");
    2229           0 :         return false;
    2230             :     }
    2231             :     // Sentinel = 'streams'
    2232           0 :     if ((!((msg__)->ReadSentinel(iter__, 4240383220)))) {
    2233           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'streams' (InputStreamParams[]) member of 'MultiplexInputStreamParams'");
    2234           0 :         return false;
    2235             :     }
    2236           0 :     if ((!(Read((&((v__)->currentStream())), msg__, iter__)))) {
    2237           0 :         FatalError("Error deserializing 'currentStream' (uint32_t) member of 'MultiplexInputStreamParams'");
    2238           0 :         return false;
    2239             :     }
    2240             :     // Sentinel = 'currentStream'
    2241           0 :     if ((!((msg__)->ReadSentinel(iter__, 682778074)))) {
    2242           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'currentStream' (uint32_t) member of 'MultiplexInputStreamParams'");
    2243           0 :         return false;
    2244             :     }
    2245           0 :     if ((!(Read((&((v__)->status())), msg__, iter__)))) {
    2246           0 :         FatalError("Error deserializing 'status' (nsresult) member of 'MultiplexInputStreamParams'");
    2247           0 :         return false;
    2248             :     }
    2249             :     // Sentinel = 'status'
    2250           0 :     if ((!((msg__)->ReadSentinel(iter__, 3714608576)))) {
    2251           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'status' (nsresult) member of 'MultiplexInputStreamParams'");
    2252           0 :         return false;
    2253             :     }
    2254           0 :     if ((!(Read((&((v__)->startedReadingCurrent())), msg__, iter__)))) {
    2255           0 :         FatalError("Error deserializing 'startedReadingCurrent' (bool) member of 'MultiplexInputStreamParams'");
    2256           0 :         return false;
    2257             :     }
    2258             :     // Sentinel = 'startedReadingCurrent'
    2259           0 :     if ((!((msg__)->ReadSentinel(iter__, 970542033)))) {
    2260           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'startedReadingCurrent' (bool) member of 'MultiplexInputStreamParams'");
    2261           0 :         return false;
    2262             :     }
    2263           0 :     return true;
    2264             : }
    2265             : 
    2266           0 : auto PBackgroundIDBCursorParent::Write(
    2267             :         const PFileDescriptorSetParent* v__,
    2268             :         Message* msg__,
    2269             :         bool nullable__) -> void
    2270             : {
    2271             :     int32_t id;
    2272           0 :     if ((!(v__))) {
    2273           0 :         if ((!(nullable__))) {
    2274           0 :             FatalError("NULL actor value passed to non-nullable param");
    2275             :         }
    2276           0 :         id = 0;
    2277             :     }
    2278             :     else {
    2279           0 :         id = (v__)->Id();
    2280           0 :         if ((1) == (id)) {
    2281           0 :             FatalError("actor has been |delete|d");
    2282             :         }
    2283             :     }
    2284             : 
    2285           0 :     Write(id, msg__);
    2286           0 : }
    2287             : 
    2288           0 : auto PBackgroundIDBCursorParent::Read(
    2289             :         PFileDescriptorSetParent** v__,
    2290             :         const Message* msg__,
    2291             :         PickleIterator* iter__,
    2292             :         bool nullable__) -> bool
    2293             : {
    2294           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PFileDescriptorSet", PFileDescriptorSetMsgStart);
    2295           0 :     if ((actor).isNothing()) {
    2296           0 :         return false;
    2297             :     }
    2298             : 
    2299           0 :     (*(v__)) = static_cast<PFileDescriptorSetParent*>((actor).value());
    2300           0 :     return true;
    2301             : }
    2302             : 
    2303           0 : auto PBackgroundIDBCursorParent::Write(
    2304             :         const PIPCBlobInputStreamParent* v__,
    2305             :         Message* msg__,
    2306             :         bool nullable__) -> void
    2307             : {
    2308             :     int32_t id;
    2309           0 :     if ((!(v__))) {
    2310           0 :         if ((!(nullable__))) {
    2311           0 :             FatalError("NULL actor value passed to non-nullable param");
    2312             :         }
    2313           0 :         id = 0;
    2314             :     }
    2315             :     else {
    2316           0 :         id = (v__)->Id();
    2317           0 :         if ((1) == (id)) {
    2318           0 :             FatalError("actor has been |delete|d");
    2319             :         }
    2320             :     }
    2321             : 
    2322           0 :     Write(id, msg__);
    2323           0 : }
    2324             : 
    2325           0 : auto PBackgroundIDBCursorParent::Read(
    2326             :         PIPCBlobInputStreamParent** v__,
    2327             :         const Message* msg__,
    2328             :         PickleIterator* iter__,
    2329             :         bool nullable__) -> bool
    2330             : {
    2331           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PIPCBlobInputStream", PIPCBlobInputStreamMsgStart);
    2332           0 :     if ((actor).isNothing()) {
    2333           0 :         return false;
    2334             :     }
    2335             : 
    2336           0 :     (*(v__)) = static_cast<PIPCBlobInputStreamParent*>((actor).value());
    2337           0 :     return true;
    2338             : }
    2339             : 
    2340           0 : auto PBackgroundIDBCursorParent::Write(
    2341             :         const OptionalFileDescriptorSet& v__,
    2342             :         Message* msg__) -> void
    2343             : {
    2344             :     typedef OptionalFileDescriptorSet type__;
    2345           0 :     Write(int((v__).type()), msg__);
    2346             :     // Sentinel = 'OptionalFileDescriptorSet'
    2347           0 :     (msg__)->WriteSentinel(955222862);
    2348             : 
    2349           0 :     switch ((v__).type()) {
    2350             :     case type__::TPFileDescriptorSetParent:
    2351             :         {
    2352           0 :             Write((v__).get_PFileDescriptorSetParent(), msg__, false);
    2353             :             // Sentinel = 'TPFileDescriptorSetParent'
    2354           0 :             (msg__)->WriteSentinel(143041934);
    2355           0 :             return;
    2356             :         }
    2357             :     case type__::TPFileDescriptorSetChild:
    2358             :         {
    2359           0 :             FatalError("wrong side!");
    2360           0 :             return;
    2361             :         }
    2362             :     case type__::TArrayOfFileDescriptor:
    2363             :         {
    2364           0 :             Write((v__).get_ArrayOfFileDescriptor(), msg__);
    2365             :             // Sentinel = 'TArrayOfFileDescriptor'
    2366           0 :             (msg__)->WriteSentinel(2366096715);
    2367           0 :             return;
    2368             :         }
    2369             :     case type__::Tvoid_t:
    2370             :         {
    2371           0 :             Write((v__).get_void_t(), msg__);
    2372             :             // Sentinel = 'Tvoid_t'
    2373           0 :             (msg__)->WriteSentinel(3041273328);
    2374           0 :             return;
    2375             :         }
    2376             :     default:
    2377             :         {
    2378           0 :             FatalError("unknown union type");
    2379           0 :             return;
    2380             :         }
    2381             :     }
    2382             : }
    2383             : 
    2384           0 : auto PBackgroundIDBCursorParent::Read(
    2385             :         OptionalFileDescriptorSet* v__,
    2386             :         const Message* msg__,
    2387             :         PickleIterator* iter__) -> bool
    2388             : {
    2389             :     typedef OptionalFileDescriptorSet type__;
    2390             :     int type;
    2391           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    2392           0 :         mozilla::ipc::UnionTypeReadError("OptionalFileDescriptorSet");
    2393           0 :         return false;
    2394             :     }
    2395             :     // Sentinel = 'OptionalFileDescriptorSet'
    2396           0 :     if ((!((msg__)->ReadSentinel(iter__, 955222862)))) {
    2397           0 :         mozilla::ipc::SentinelReadError("OptionalFileDescriptorSet");
    2398           0 :         return false;
    2399             :     }
    2400             : 
    2401           0 :     switch (type) {
    2402             :     case type__::TPFileDescriptorSetParent:
    2403             :         {
    2404           0 :             return false;
    2405             :         }
    2406             :     case type__::TPFileDescriptorSetChild:
    2407             :         {
    2408           0 :             PFileDescriptorSetParent* tmp = nullptr;
    2409           0 :             (*(v__)) = tmp;
    2410           0 :             if ((!(Read((&((v__)->get_PFileDescriptorSetParent())), msg__, iter__, false)))) {
    2411           0 :                 FatalError("Error deserializing Union type");
    2412           0 :                 return false;
    2413             :             }
    2414             :             // Sentinel = 'TPFileDescriptorSetChild'
    2415           0 :             if ((!((msg__)->ReadSentinel(iter__, 3477929935)))) {
    2416           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2417           0 :                 return false;
    2418             :             }
    2419           0 :             return true;
    2420             :         }
    2421             :     case type__::TArrayOfFileDescriptor:
    2422             :         {
    2423           0 :             nsTArray<FileDescriptor> tmp;
    2424           0 :             (*(v__)) = tmp;
    2425           0 :             if ((!(Read((&((v__)->get_ArrayOfFileDescriptor())), msg__, iter__)))) {
    2426           0 :                 FatalError("Error deserializing Union type");
    2427           0 :                 return false;
    2428             :             }
    2429             :             // Sentinel = 'TArrayOfFileDescriptor'
    2430           0 :             if ((!((msg__)->ReadSentinel(iter__, 2366096715)))) {
    2431           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2432           0 :                 return false;
    2433             :             }
    2434           0 :             return true;
    2435             :         }
    2436             :     case type__::Tvoid_t:
    2437             :         {
    2438             :             void_t tmp = void_t();
    2439           0 :             (*(v__)) = tmp;
    2440           0 :             if ((!(Read((&((v__)->get_void_t())), msg__, iter__)))) {
    2441           0 :                 FatalError("Error deserializing Union type");
    2442           0 :                 return false;
    2443             :             }
    2444             :             // Sentinel = 'Tvoid_t'
    2445           0 :             if ((!((msg__)->ReadSentinel(iter__, 3041273328)))) {
    2446           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2447           0 :                 return false;
    2448             :             }
    2449           0 :             return true;
    2450             :         }
    2451             :     default:
    2452             :         {
    2453           0 :             FatalError("unknown union type");
    2454           0 :             return false;
    2455             :         }
    2456             :     }
    2457             : }
    2458             : 
    2459           0 : auto PBackgroundIDBCursorParent::Write(
    2460             :         const IPCBlob& v__,
    2461             :         Message* msg__) -> void
    2462             : {
    2463           0 :     Write((v__).type(), msg__);
    2464             :     // Sentinel = 'type'
    2465           0 :     (msg__)->WriteSentinel(2982068540);
    2466           0 :     Write((v__).size(), msg__);
    2467             :     // Sentinel = 'size'
    2468           0 :     (msg__)->WriteSentinel(931048223);
    2469           0 :     Write((v__).inputStream(), msg__);
    2470             :     // Sentinel = 'inputStream'
    2471           0 :     (msg__)->WriteSentinel(2684883823);
    2472           0 :     Write((v__).file(), msg__);
    2473             :     // Sentinel = 'file'
    2474           0 :     (msg__)->WriteSentinel(224874390);
    2475           0 :     Write((v__).fileId(), msg__);
    2476             :     // Sentinel = 'fileId'
    2477           0 :     (msg__)->WriteSentinel(108004447);
    2478           0 : }
    2479             : 
    2480           0 : auto PBackgroundIDBCursorParent::Read(
    2481             :         IPCBlob* v__,
    2482             :         const Message* msg__,
    2483             :         PickleIterator* iter__) -> bool
    2484             : {
    2485           0 :     if ((!(Read((&((v__)->type())), msg__, iter__)))) {
    2486           0 :         FatalError("Error deserializing 'type' (nsString) member of 'IPCBlob'");
    2487           0 :         return false;
    2488             :     }
    2489             :     // Sentinel = 'type'
    2490           0 :     if ((!((msg__)->ReadSentinel(iter__, 2982068540)))) {
    2491           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'type' (nsString) member of 'IPCBlob'");
    2492           0 :         return false;
    2493             :     }
    2494           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    2495           0 :         FatalError("Error deserializing 'size' (uint64_t) member of 'IPCBlob'");
    2496           0 :         return false;
    2497             :     }
    2498             :     // Sentinel = 'size'
    2499           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    2500           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (uint64_t) member of 'IPCBlob'");
    2501           0 :         return false;
    2502             :     }
    2503           0 :     if ((!(Read((&((v__)->inputStream())), msg__, iter__)))) {
    2504           0 :         FatalError("Error deserializing 'inputStream' (IPCBlobStream) member of 'IPCBlob'");
    2505           0 :         return false;
    2506             :     }
    2507             :     // Sentinel = 'inputStream'
    2508           0 :     if ((!((msg__)->ReadSentinel(iter__, 2684883823)))) {
    2509           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'inputStream' (IPCBlobStream) member of 'IPCBlob'");
    2510           0 :         return false;
    2511             :     }
    2512           0 :     if ((!(Read((&((v__)->file())), msg__, iter__)))) {
    2513           0 :         FatalError("Error deserializing 'file' (IPCFileUnion) member of 'IPCBlob'");
    2514           0 :         return false;
    2515             :     }
    2516             :     // Sentinel = 'file'
    2517           0 :     if ((!((msg__)->ReadSentinel(iter__, 224874390)))) {
    2518           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'file' (IPCFileUnion) member of 'IPCBlob'");
    2519           0 :         return false;
    2520             :     }
    2521           0 :     if ((!(Read((&((v__)->fileId())), msg__, iter__)))) {
    2522           0 :         FatalError("Error deserializing 'fileId' (int64_t) member of 'IPCBlob'");
    2523           0 :         return false;
    2524             :     }
    2525             :     // Sentinel = 'fileId'
    2526           0 :     if ((!((msg__)->ReadSentinel(iter__, 108004447)))) {
    2527           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'fileId' (int64_t) member of 'IPCBlob'");
    2528           0 :         return false;
    2529             :     }
    2530           0 :     return true;
    2531             : }
    2532             : 
    2533           0 : auto PBackgroundIDBCursorParent::Write(
    2534             :         const FileDescriptor& v__,
    2535             :         Message* msg__) -> void
    2536             : {
    2537           0 :     FileDescriptor::PickleType pfd = (v__).ShareTo(FileDescriptor::IPDLPrivate(), OtherPid());
    2538           0 :     IPC::WriteParam(msg__, pfd);
    2539           0 : }
    2540             : 
    2541           0 : auto PBackgroundIDBCursorParent::Read(
    2542             :         FileDescriptor* v__,
    2543             :         const Message* msg__,
    2544             :         PickleIterator* iter__) -> bool
    2545             : {
    2546           0 :     FileDescriptor::PickleType pfd;
    2547           0 :     if ((!(IPC::ReadParam(msg__, iter__, (&(pfd)))))) {
    2548           0 :         return false;
    2549             :     }
    2550             : 
    2551           0 :     FileDescriptor fd = FileDescriptor(FileDescriptor::IPDLPrivate(), pfd);
    2552           0 :     if ((!((fd).IsValid()))) {
    2553           0 :         mozilla::ipc::ProtocolErrorBreakpoint("[PBackgroundIDBCursorParent] Received an invalid file descriptor!");
    2554             :     }
    2555             : 
    2556           0 :     (*(v__)) = fd;
    2557           0 :     return true;
    2558             : }
    2559             : 
    2560           0 : auto PBackgroundIDBCursorParent::Write(
    2561             :         const BufferedInputStreamParams& v__,
    2562             :         Message* msg__) -> void
    2563             : {
    2564           0 :     Write((v__).optionalStream(), msg__);
    2565             :     // Sentinel = 'optionalStream'
    2566           0 :     (msg__)->WriteSentinel(1003718562);
    2567           0 :     Write((v__).bufferSize(), msg__);
    2568             :     // Sentinel = 'bufferSize'
    2569           0 :     (msg__)->WriteSentinel(3444538779);
    2570           0 : }
    2571             : 
    2572           0 : auto PBackgroundIDBCursorParent::Read(
    2573             :         BufferedInputStreamParams* v__,
    2574             :         const Message* msg__,
    2575             :         PickleIterator* iter__) -> bool
    2576             : {
    2577           0 :     if ((!(Read((&((v__)->optionalStream())), msg__, iter__)))) {
    2578           0 :         FatalError("Error deserializing 'optionalStream' (OptionalInputStreamParams) member of 'BufferedInputStreamParams'");
    2579           0 :         return false;
    2580             :     }
    2581             :     // Sentinel = 'optionalStream'
    2582           0 :     if ((!((msg__)->ReadSentinel(iter__, 1003718562)))) {
    2583           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'optionalStream' (OptionalInputStreamParams) member of 'BufferedInputStreamParams'");
    2584           0 :         return false;
    2585             :     }
    2586           0 :     if ((!(Read((&((v__)->bufferSize())), msg__, iter__)))) {
    2587           0 :         FatalError("Error deserializing 'bufferSize' (uint32_t) member of 'BufferedInputStreamParams'");
    2588           0 :         return false;
    2589             :     }
    2590             :     // Sentinel = 'bufferSize'
    2591           0 :     if ((!((msg__)->ReadSentinel(iter__, 3444538779)))) {
    2592           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'bufferSize' (uint32_t) member of 'BufferedInputStreamParams'");
    2593           0 :         return false;
    2594             :     }
    2595           0 :     return true;
    2596             : }
    2597             : 
    2598           0 : auto PBackgroundIDBCursorParent::Write(
    2599             :         const HeaderEntry& v__,
    2600             :         Message* msg__) -> void
    2601             : {
    2602           0 :     Write((v__).name(), msg__);
    2603             :     // Sentinel = 'name'
    2604           0 :     (msg__)->WriteSentinel(15034981);
    2605           0 :     Write((v__).value(), msg__);
    2606             :     // Sentinel = 'value'
    2607           0 :     (msg__)->WriteSentinel(3456818542);
    2608           0 : }
    2609             : 
    2610           0 : auto PBackgroundIDBCursorParent::Read(
    2611             :         HeaderEntry* v__,
    2612             :         const Message* msg__,
    2613             :         PickleIterator* iter__) -> bool
    2614             : {
    2615           0 :     if ((!(Read((&((v__)->name())), msg__, iter__)))) {
    2616           0 :         FatalError("Error deserializing 'name' (nsCString) member of 'HeaderEntry'");
    2617           0 :         return false;
    2618             :     }
    2619             :     // Sentinel = 'name'
    2620           0 :     if ((!((msg__)->ReadSentinel(iter__, 15034981)))) {
    2621           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'name' (nsCString) member of 'HeaderEntry'");
    2622           0 :         return false;
    2623             :     }
    2624           0 :     if ((!(Read((&((v__)->value())), msg__, iter__)))) {
    2625           0 :         FatalError("Error deserializing 'value' (nsCString) member of 'HeaderEntry'");
    2626           0 :         return false;
    2627             :     }
    2628             :     // Sentinel = 'value'
    2629           0 :     if ((!((msg__)->ReadSentinel(iter__, 3456818542)))) {
    2630           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'value' (nsCString) member of 'HeaderEntry'");
    2631           0 :         return false;
    2632             :     }
    2633           0 :     return true;
    2634             : }
    2635             : 
    2636           0 : auto PBackgroundIDBCursorParent::Write(
    2637             :         const CursorRequestParams& v__,
    2638             :         Message* msg__) -> void
    2639             : {
    2640             :     typedef CursorRequestParams type__;
    2641           0 :     Write(int((v__).type()), msg__);
    2642             :     // Sentinel = 'CursorRequestParams'
    2643           0 :     (msg__)->WriteSentinel(2490772636);
    2644             : 
    2645           0 :     switch ((v__).type()) {
    2646             :     case type__::TContinueParams:
    2647             :         {
    2648           0 :             Write((v__).get_ContinueParams(), msg__);
    2649             :             // Sentinel = 'TContinueParams'
    2650           0 :             (msg__)->WriteSentinel(828906134);
    2651           0 :             return;
    2652             :         }
    2653             :     case type__::TContinuePrimaryKeyParams:
    2654             :         {
    2655           0 :             Write((v__).get_ContinuePrimaryKeyParams(), msg__);
    2656             :             // Sentinel = 'TContinuePrimaryKeyParams'
    2657           0 :             (msg__)->WriteSentinel(304832163);
    2658           0 :             return;
    2659             :         }
    2660             :     case type__::TAdvanceParams:
    2661             :         {
    2662           0 :             Write((v__).get_AdvanceParams(), msg__);
    2663             :             // Sentinel = 'TAdvanceParams'
    2664           0 :             (msg__)->WriteSentinel(4156873658);
    2665           0 :             return;
    2666             :         }
    2667             :     default:
    2668             :         {
    2669           0 :             FatalError("unknown union type");
    2670           0 :             return;
    2671             :         }
    2672             :     }
    2673             : }
    2674             : 
    2675           0 : auto PBackgroundIDBCursorParent::Read(
    2676             :         CursorRequestParams* v__,
    2677             :         const Message* msg__,
    2678             :         PickleIterator* iter__) -> bool
    2679             : {
    2680             :     typedef CursorRequestParams type__;
    2681             :     int type;
    2682           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    2683           0 :         mozilla::ipc::UnionTypeReadError("CursorRequestParams");
    2684           0 :         return false;
    2685             :     }
    2686             :     // Sentinel = 'CursorRequestParams'
    2687           0 :     if ((!((msg__)->ReadSentinel(iter__, 2490772636)))) {
    2688           0 :         mozilla::ipc::SentinelReadError("CursorRequestParams");
    2689           0 :         return false;
    2690             :     }
    2691             : 
    2692           0 :     switch (type) {
    2693             :     case type__::TContinueParams:
    2694             :         {
    2695           0 :             ContinueParams tmp = ContinueParams();
    2696           0 :             (*(v__)) = tmp;
    2697           0 :             if ((!(Read((&((v__)->get_ContinueParams())), msg__, iter__)))) {
    2698           0 :                 FatalError("Error deserializing Union type");
    2699           0 :                 return false;
    2700             :             }
    2701             :             // Sentinel = 'TContinueParams'
    2702           0 :             if ((!((msg__)->ReadSentinel(iter__, 828906134)))) {
    2703           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2704           0 :                 return false;
    2705             :             }
    2706           0 :             return true;
    2707             :         }
    2708             :     case type__::TContinuePrimaryKeyParams:
    2709             :         {
    2710           0 :             ContinuePrimaryKeyParams tmp = ContinuePrimaryKeyParams();
    2711           0 :             (*(v__)) = tmp;
    2712           0 :             if ((!(Read((&((v__)->get_ContinuePrimaryKeyParams())), msg__, iter__)))) {
    2713           0 :                 FatalError("Error deserializing Union type");
    2714           0 :                 return false;
    2715             :             }
    2716             :             // Sentinel = 'TContinuePrimaryKeyParams'
    2717           0 :             if ((!((msg__)->ReadSentinel(iter__, 304832163)))) {
    2718           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2719           0 :                 return false;
    2720             :             }
    2721           0 :             return true;
    2722             :         }
    2723             :     case type__::TAdvanceParams:
    2724             :         {
    2725           0 :             AdvanceParams tmp = AdvanceParams();
    2726           0 :             (*(v__)) = tmp;
    2727           0 :             if ((!(Read((&((v__)->get_AdvanceParams())), msg__, iter__)))) {
    2728           0 :                 FatalError("Error deserializing Union type");
    2729           0 :                 return false;
    2730             :             }
    2731             :             // Sentinel = 'TAdvanceParams'
    2732           0 :             if ((!((msg__)->ReadSentinel(iter__, 4156873658)))) {
    2733           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2734           0 :                 return false;
    2735             :             }
    2736           0 :             return true;
    2737             :         }
    2738             :     default:
    2739             :         {
    2740           0 :             FatalError("unknown union type");
    2741           0 :             return false;
    2742             :         }
    2743             :     }
    2744             : }
    2745             : 
    2746           0 : auto PBackgroundIDBCursorParent::Write(
    2747             :         const IndexCursorResponse& v__,
    2748             :         Message* msg__) -> void
    2749             : {
    2750           0 :     Write((v__).key(), msg__);
    2751             :     // Sentinel = 'key'
    2752           0 :     (msg__)->WriteSentinel(35142870);
    2753           0 :     Write((v__).sortKey(), msg__);
    2754             :     // Sentinel = 'sortKey'
    2755           0 :     (msg__)->WriteSentinel(3767624686);
    2756           0 :     Write((v__).objectKey(), msg__);
    2757             :     // Sentinel = 'objectKey'
    2758           0 :     (msg__)->WriteSentinel(339559251);
    2759           0 :     Write((v__).cloneInfo(), msg__);
    2760             :     // Sentinel = 'cloneInfo'
    2761           0 :     (msg__)->WriteSentinel(517148166);
    2762           0 : }
    2763             : 
    2764           0 : auto PBackgroundIDBCursorParent::Read(
    2765             :         IndexCursorResponse* v__,
    2766             :         const Message* msg__,
    2767             :         PickleIterator* iter__) -> bool
    2768             : {
    2769           0 :     if ((!(Read((&((v__)->key())), msg__, iter__)))) {
    2770           0 :         FatalError("Error deserializing 'key' (Key) member of 'IndexCursorResponse'");
    2771           0 :         return false;
    2772             :     }
    2773             :     // Sentinel = 'key'
    2774           0 :     if ((!((msg__)->ReadSentinel(iter__, 35142870)))) {
    2775           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'key' (Key) member of 'IndexCursorResponse'");
    2776           0 :         return false;
    2777             :     }
    2778           0 :     if ((!(Read((&((v__)->sortKey())), msg__, iter__)))) {
    2779           0 :         FatalError("Error deserializing 'sortKey' (Key) member of 'IndexCursorResponse'");
    2780           0 :         return false;
    2781             :     }
    2782             :     // Sentinel = 'sortKey'
    2783           0 :     if ((!((msg__)->ReadSentinel(iter__, 3767624686)))) {
    2784           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'sortKey' (Key) member of 'IndexCursorResponse'");
    2785           0 :         return false;
    2786             :     }
    2787           0 :     if ((!(Read((&((v__)->objectKey())), msg__, iter__)))) {
    2788           0 :         FatalError("Error deserializing 'objectKey' (Key) member of 'IndexCursorResponse'");
    2789           0 :         return false;
    2790             :     }
    2791             :     // Sentinel = 'objectKey'
    2792           0 :     if ((!((msg__)->ReadSentinel(iter__, 339559251)))) {
    2793           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'objectKey' (Key) member of 'IndexCursorResponse'");
    2794           0 :         return false;
    2795             :     }
    2796           0 :     if ((!(Read((&((v__)->cloneInfo())), msg__, iter__)))) {
    2797           0 :         FatalError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'IndexCursorResponse'");
    2798           0 :         return false;
    2799             :     }
    2800             :     // Sentinel = 'cloneInfo'
    2801           0 :     if ((!((msg__)->ReadSentinel(iter__, 517148166)))) {
    2802           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'cloneInfo' (SerializedStructuredCloneReadInfo) member of 'IndexCursorResponse'");
    2803           0 :         return false;
    2804             :     }
    2805           0 :     return true;
    2806             : }
    2807             : 
    2808           0 : auto PBackgroundIDBCursorParent::Write(
    2809             :         const PChildToParentStreamParent* v__,
    2810             :         Message* msg__,
    2811             :         bool nullable__) -> void
    2812             : {
    2813             :     int32_t id;
    2814           0 :     if ((!(v__))) {
    2815           0 :         if ((!(nullable__))) {
    2816           0 :             FatalError("NULL actor value passed to non-nullable param");
    2817             :         }
    2818           0 :         id = 0;
    2819             :     }
    2820             :     else {
    2821           0 :         id = (v__)->Id();
    2822           0 :         if ((1) == (id)) {
    2823           0 :             FatalError("actor has been |delete|d");
    2824             :         }
    2825             :     }
    2826             : 
    2827           0 :     Write(id, msg__);
    2828           0 : }
    2829             : 
    2830           0 : auto PBackgroundIDBCursorParent::Read(
    2831             :         PChildToParentStreamParent** v__,
    2832             :         const Message* msg__,
    2833             :         PickleIterator* iter__,
    2834             :         bool nullable__) -> bool
    2835             : {
    2836           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PChildToParentStream", PChildToParentStreamMsgStart);
    2837           0 :     if ((actor).isNothing()) {
    2838           0 :         return false;
    2839             :     }
    2840             : 
    2841           0 :     (*(v__)) = static_cast<PChildToParentStreamParent*>((actor).value());
    2842           0 :     return true;
    2843             : }
    2844             : 
    2845           0 : auto PBackgroundIDBCursorParent::Write(
    2846             :         const SerializedStructuredCloneReadInfo& v__,
    2847             :         Message* msg__) -> void
    2848             : {
    2849           0 :     Write((v__).data(), msg__);
    2850             :     // Sentinel = 'data'
    2851           0 :     (msg__)->WriteSentinel(843352540);
    2852           0 :     Write((v__).files(), msg__);
    2853             :     // Sentinel = 'files'
    2854           0 :     (msg__)->WriteSentinel(3457906496);
    2855           0 :     Write((v__).hasPreprocessInfo(), msg__);
    2856             :     // Sentinel = 'hasPreprocessInfo'
    2857           0 :     (msg__)->WriteSentinel(1953424507);
    2858           0 : }
    2859             : 
    2860           0 : auto PBackgroundIDBCursorParent::Read(
    2861             :         SerializedStructuredCloneReadInfo* v__,
    2862             :         const Message* msg__,
    2863             :         PickleIterator* iter__) -> bool
    2864             : {
    2865           0 :     if ((!(Read((&((v__)->data())), msg__, iter__)))) {
    2866           0 :         FatalError("Error deserializing 'data' (SerializedStructuredCloneBuffer) member of 'SerializedStructuredCloneReadInfo'");
    2867           0 :         return false;
    2868             :     }
    2869             :     // Sentinel = 'data'
    2870           0 :     if ((!((msg__)->ReadSentinel(iter__, 843352540)))) {
    2871           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'data' (SerializedStructuredCloneBuffer) member of 'SerializedStructuredCloneReadInfo'");
    2872           0 :         return false;
    2873             :     }
    2874           0 :     if ((!(Read((&((v__)->files())), msg__, iter__)))) {
    2875           0 :         FatalError("Error deserializing 'files' (SerializedStructuredCloneFile[]) member of 'SerializedStructuredCloneReadInfo'");
    2876           0 :         return false;
    2877             :     }
    2878             :     // Sentinel = 'files'
    2879           0 :     if ((!((msg__)->ReadSentinel(iter__, 3457906496)))) {
    2880           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'files' (SerializedStructuredCloneFile[]) member of 'SerializedStructuredCloneReadInfo'");
    2881           0 :         return false;
    2882             :     }
    2883           0 :     if ((!(Read((&((v__)->hasPreprocessInfo())), msg__, iter__)))) {
    2884           0 :         FatalError("Error deserializing 'hasPreprocessInfo' (bool) member of 'SerializedStructuredCloneReadInfo'");
    2885           0 :         return false;
    2886             :     }
    2887             :     // Sentinel = 'hasPreprocessInfo'
    2888           0 :     if ((!((msg__)->ReadSentinel(iter__, 1953424507)))) {
    2889           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'hasPreprocessInfo' (bool) member of 'SerializedStructuredCloneReadInfo'");
    2890           0 :         return false;
    2891             :     }
    2892           0 :     return true;
    2893             : }
    2894             : 
    2895             : 
    2896             : 
    2897             : } // namespace indexedDB
    2898             : } // namespace dom
    2899             : } // namespace mozilla

Generated by: LCOV version 1.13