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

Generated by: LCOV version 1.13