LCOV - code coverage report
Current view: top level - obj-x86_64-pc-linux-gnu/ipc/ipdl - PCompositorBridgeChild.cpp (source / functions) Hit Total Coverage
Test: output.info Lines: 251 1880 13.4 %
Date: 2017-07-14 16:53:18 Functions: 23 120 19.2 %
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/layers/PCompositorBridgeChild.h"
       8             : #include "FrameMetrics.h"
       9             : #include "ipc/IPCMessageUtils.h"
      10             : #include "mozilla/TimeStamp.h"
      11             : #include "mozilla/layers/CompositorTypes.h"
      12             : #include "mozilla/layers/FrameUniformityData.h"
      13             : 
      14             : #include "mozilla/layers/PAPZChild.h"
      15             : #include "mozilla/layers/PAPZCTreeManagerChild.h"
      16             : #include "mozilla/dom/PBrowserChild.h"
      17             : #include "mozilla/layers/PCompositorManagerChild.h"
      18             : #include "mozilla/widget/PCompositorWidgetChild.h"
      19             : #include "mozilla/layers/PLayerTransactionChild.h"
      20             : #include "mozilla/layers/PTextureChild.h"
      21             : #include "mozilla/layers/PWebRenderBridgeChild.h"
      22             : 
      23             : #include "nsIFile.h"
      24             : #include "GeckoProfiler.h"
      25             : 
      26             : namespace mozilla {
      27             : namespace layers {
      28             : 
      29             : 
      30           0 : auto PCompositorBridgeChild::ActorDestroy(ActorDestroyReason aWhy) -> void
      31             : {
      32           0 : }
      33             : 
      34           3 : MOZ_IMPLICIT PCompositorBridgeChild::PCompositorBridgeChild() :
      35             :     mozilla::ipc::IProtocol(mozilla::ipc::ChildSide),
      36           3 :     mState(PCompositorBridge::__Dead)
      37             : {
      38           3 :     MOZ_COUNT_CTOR(PCompositorBridgeChild);
      39           3 : }
      40             : 
      41           0 : PCompositorBridgeChild::~PCompositorBridgeChild()
      42             : {
      43           0 :     MOZ_COUNT_DTOR(PCompositorBridgeChild);
      44           0 : }
      45             : 
      46           0 : auto PCompositorBridgeChild::Manager() const -> PCompositorManagerChild*
      47             : {
      48           0 :     return static_cast<PCompositorManagerChild*>(IProtocol::Manager());
      49             : }
      50             : 
      51           0 : auto PCompositorBridgeChild::ManagedPAPZChild(nsTArray<PAPZChild*>& aArr) const -> void
      52             : {
      53           0 :     (mManagedPAPZChild).ToArray(aArr);
      54           0 : }
      55             : 
      56           0 : auto PCompositorBridgeChild::ManagedPAPZChild() const -> const ManagedContainer<PAPZChild>&
      57             : {
      58           0 :     return mManagedPAPZChild;
      59             : }
      60             : 
      61           0 : auto PCompositorBridgeChild::ManagedPAPZCTreeManagerChild(nsTArray<PAPZCTreeManagerChild*>& aArr) const -> void
      62             : {
      63           0 :     (mManagedPAPZCTreeManagerChild).ToArray(aArr);
      64           0 : }
      65             : 
      66           0 : auto PCompositorBridgeChild::ManagedPAPZCTreeManagerChild() const -> const ManagedContainer<PAPZCTreeManagerChild>&
      67             : {
      68           0 :     return mManagedPAPZCTreeManagerChild;
      69             : }
      70             : 
      71           0 : auto PCompositorBridgeChild::ManagedPLayerTransactionChild(nsTArray<PLayerTransactionChild*>& aArr) const -> void
      72             : {
      73           0 :     (mManagedPLayerTransactionChild).ToArray(aArr);
      74           0 : }
      75             : 
      76           0 : auto PCompositorBridgeChild::ManagedPLayerTransactionChild() const -> const ManagedContainer<PLayerTransactionChild>&
      77             : {
      78           0 :     return mManagedPLayerTransactionChild;
      79             : }
      80             : 
      81           0 : auto PCompositorBridgeChild::ManagedPTextureChild(nsTArray<PTextureChild*>& aArr) const -> void
      82             : {
      83           0 :     (mManagedPTextureChild).ToArray(aArr);
      84           0 : }
      85             : 
      86           0 : auto PCompositorBridgeChild::ManagedPTextureChild() const -> const ManagedContainer<PTextureChild>&
      87             : {
      88           0 :     return mManagedPTextureChild;
      89             : }
      90             : 
      91           0 : auto PCompositorBridgeChild::ManagedPCompositorWidgetChild(nsTArray<PCompositorWidgetChild*>& aArr) const -> void
      92             : {
      93           0 :     (mManagedPCompositorWidgetChild).ToArray(aArr);
      94           0 : }
      95             : 
      96           0 : auto PCompositorBridgeChild::ManagedPCompositorWidgetChild() const -> const ManagedContainer<PCompositorWidgetChild>&
      97             : {
      98           0 :     return mManagedPCompositorWidgetChild;
      99             : }
     100             : 
     101           0 : auto PCompositorBridgeChild::ManagedPWebRenderBridgeChild(nsTArray<PWebRenderBridgeChild*>& aArr) const -> void
     102             : {
     103           0 :     (mManagedPWebRenderBridgeChild).ToArray(aArr);
     104           0 : }
     105             : 
     106           0 : auto PCompositorBridgeChild::ManagedPWebRenderBridgeChild() const -> const ManagedContainer<PWebRenderBridgeChild>&
     107             : {
     108           0 :     return mManagedPWebRenderBridgeChild;
     109             : }
     110             : 
     111           0 : auto PCompositorBridgeChild::Send__delete__(PCompositorBridgeChild* actor) -> bool
     112             : {
     113           0 :     if ((!(actor))) {
     114           0 :         return false;
     115             :     }
     116             : 
     117           0 :     IPC::Message* msg__ = PCompositorBridge::Msg___delete__((actor)->Id());
     118             : 
     119           0 :     (actor)->Write(actor, msg__, false);
     120             :     // Sentinel = 'actor'
     121           0 :     (msg__)->WriteSentinel(875202478);
     122             : 
     123             : 
     124             : 
     125           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     126           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", (actor)->OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     127             :     }
     128           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg___delete__", OTHER);
     129           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg___delete____ID, (&((actor)->mState)));
     130             : 
     131           0 :     bool sendok__ = ((actor)->GetIPCChannel())->Send(msg__);
     132             : 
     133           0 :     IProtocol* mgr = (actor)->Manager();
     134           0 :     (actor)->DestroySubtree(Deletion);
     135           0 :     (actor)->DeallocSubtree();
     136           0 :     (mgr)->RemoveManagee(PCompositorBridgeMsgStart, actor);
     137           0 :     return sendok__;
     138             : }
     139             : 
     140           0 : auto PCompositorBridgeChild::SendPCompositorWidgetConstructor(const CompositorWidgetInitData& aInitData) -> PCompositorWidgetChild*
     141             : {
     142           0 :     return SendPCompositorWidgetConstructor(AllocPCompositorWidgetChild(aInitData), aInitData);
     143             : }
     144             : 
     145           0 : auto PCompositorBridgeChild::SendPCompositorWidgetConstructor(
     146             :         PCompositorWidgetChild* actor,
     147             :         const CompositorWidgetInitData& aInitData) -> PCompositorWidgetChild*
     148             : {
     149           0 :     if ((!(actor))) {
     150           0 :         NS_WARNING("Error constructing actor PCompositorWidgetChild");
     151           0 :         return nullptr;
     152             :     }
     153           0 :     (actor)->SetManager(this);
     154           0 :     Register(actor);
     155           0 :     (actor)->SetIPCChannel(GetIPCChannel());
     156           0 :     (mManagedPCompositorWidgetChild).PutEntry(actor);
     157           0 :     (actor)->mState = mozilla::widget::PCompositorWidget::__Start;
     158             : 
     159           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_PCompositorWidgetConstructor(Id());
     160             : 
     161           0 :     Write(actor, msg__, false);
     162             :     // Sentinel = 'actor'
     163           0 :     (msg__)->WriteSentinel(875202478);
     164           0 :     Write(aInitData, msg__);
     165             :     // Sentinel = 'aInitData'
     166           0 :     (msg__)->WriteSentinel(897514454);
     167             : 
     168           0 :     (msg__)->set_constructor();
     169             : 
     170             : 
     171           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     172           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     173             :     }
     174           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_PCompositorWidgetConstructor", OTHER);
     175           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_PCompositorWidgetConstructor__ID, (&(mState)));
     176             : 
     177           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     178           0 :     if ((!(sendok__))) {
     179           0 :         FatalError("constructor for actor failed");
     180           0 :         return nullptr;
     181             :     }
     182           0 :     return actor;
     183             : }
     184             : 
     185           0 : auto PCompositorBridgeChild::SendInitialize(const uint64_t& rootLayerTreeId) -> bool
     186             : {
     187           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_Initialize(Id());
     188             : 
     189           0 :     Write(rootLayerTreeId, msg__);
     190             :     // Sentinel = 'rootLayerTreeId'
     191           0 :     (msg__)->WriteSentinel(191972583);
     192             : 
     193           0 :     (msg__)->set_sync();
     194             : 
     195             : 
     196           0 :     Message reply__;
     197             : 
     198           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     199           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     200             :     }
     201           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_Initialize", OTHER);
     202           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_Initialize__ID, (&(mState)));
     203             : 
     204             :     bool sendok__;
     205             :     {
     206             :         AutoProfilerTracing syncIPCTracer(
     207             :                 "IPC",
     208           0 :                 "PCompositorBridge::Msg_Initialize");
     209           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     210             :     }
     211           0 :     if ((!(sendok__))) {
     212           0 :         return false;
     213             :     }
     214             : 
     215           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     216           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     217             :     }
     218             : 
     219           0 :     return true;
     220             : }
     221             : 
     222           0 : auto PCompositorBridgeChild::SendPAPZConstructor(const uint64_t& layersId) -> PAPZChild*
     223             : {
     224           0 :     return SendPAPZConstructor(AllocPAPZChild(layersId), layersId);
     225             : }
     226             : 
     227           1 : auto PCompositorBridgeChild::SendPAPZConstructor(
     228             :         PAPZChild* actor,
     229             :         const uint64_t& layersId) -> PAPZChild*
     230             : {
     231           1 :     if ((!(actor))) {
     232           0 :         NS_WARNING("Error constructing actor PAPZChild");
     233           0 :         return nullptr;
     234             :     }
     235           1 :     (actor)->SetManager(this);
     236           1 :     Register(actor);
     237           1 :     (actor)->SetIPCChannel(GetIPCChannel());
     238           1 :     (mManagedPAPZChild).PutEntry(actor);
     239           1 :     (actor)->mState = mozilla::layers::PAPZ::__Start;
     240             : 
     241           1 :     IPC::Message* msg__ = PCompositorBridge::Msg_PAPZConstructor(Id());
     242             : 
     243           1 :     Write(actor, msg__, false);
     244             :     // Sentinel = 'actor'
     245           1 :     (msg__)->WriteSentinel(875202478);
     246           1 :     Write(layersId, msg__);
     247             :     // Sentinel = 'layersId'
     248           1 :     (msg__)->WriteSentinel(2382073245);
     249             : 
     250           1 :     (msg__)->set_constructor();
     251             : 
     252             : 
     253           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     254           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     255             :     }
     256           2 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_PAPZConstructor", OTHER);
     257           1 :     PCompositorBridge::Transition(PCompositorBridge::Msg_PAPZConstructor__ID, (&(mState)));
     258             : 
     259           1 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     260           1 :     if ((!(sendok__))) {
     261           0 :         FatalError("constructor for actor failed");
     262           0 :         return nullptr;
     263             :     }
     264           1 :     return actor;
     265             : }
     266             : 
     267           1 : auto PCompositorBridgeChild::SendPAPZCTreeManagerConstructor(const uint64_t& layersId) -> PAPZCTreeManagerChild*
     268             : {
     269           1 :     return SendPAPZCTreeManagerConstructor(AllocPAPZCTreeManagerChild(layersId), layersId);
     270             : }
     271             : 
     272           1 : auto PCompositorBridgeChild::SendPAPZCTreeManagerConstructor(
     273             :         PAPZCTreeManagerChild* actor,
     274             :         const uint64_t& layersId) -> PAPZCTreeManagerChild*
     275             : {
     276           1 :     if ((!(actor))) {
     277           0 :         NS_WARNING("Error constructing actor PAPZCTreeManagerChild");
     278           0 :         return nullptr;
     279             :     }
     280           1 :     (actor)->SetManager(this);
     281           1 :     Register(actor);
     282           1 :     (actor)->SetIPCChannel(GetIPCChannel());
     283           1 :     (mManagedPAPZCTreeManagerChild).PutEntry(actor);
     284           1 :     (actor)->mState = mozilla::layers::PAPZCTreeManager::__Start;
     285             : 
     286           1 :     IPC::Message* msg__ = PCompositorBridge::Msg_PAPZCTreeManagerConstructor(Id());
     287             : 
     288           1 :     Write(actor, msg__, false);
     289             :     // Sentinel = 'actor'
     290           1 :     (msg__)->WriteSentinel(875202478);
     291           1 :     Write(layersId, msg__);
     292             :     // Sentinel = 'layersId'
     293           1 :     (msg__)->WriteSentinel(2382073245);
     294             : 
     295           1 :     (msg__)->set_constructor();
     296             : 
     297             : 
     298           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     299           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     300             :     }
     301           2 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_PAPZCTreeManagerConstructor", OTHER);
     302           1 :     PCompositorBridge::Transition(PCompositorBridge::Msg_PAPZCTreeManagerConstructor__ID, (&(mState)));
     303             : 
     304           1 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     305           1 :     if ((!(sendok__))) {
     306           0 :         FatalError("constructor for actor failed");
     307           0 :         return nullptr;
     308             :     }
     309           1 :     return actor;
     310             : }
     311             : 
     312           0 : auto PCompositorBridgeChild::SendRemotePluginsReady() -> bool
     313             : {
     314           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_RemotePluginsReady(Id());
     315             : 
     316             : 
     317             : 
     318             : 
     319             : 
     320           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     321           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     322             :     }
     323           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_RemotePluginsReady", OTHER);
     324           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_RemotePluginsReady__ID, (&(mState)));
     325             : 
     326           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     327           0 :     return sendok__;
     328             : }
     329             : 
     330           0 : auto PCompositorBridgeChild::SendGetFrameUniformity(FrameUniformityData* data) -> bool
     331             : {
     332           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_GetFrameUniformity(Id());
     333             : 
     334             : 
     335           0 :     (msg__)->set_sync();
     336             : 
     337             : 
     338           0 :     Message reply__;
     339             : 
     340           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     341           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     342             :     }
     343           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_GetFrameUniformity", OTHER);
     344           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_GetFrameUniformity__ID, (&(mState)));
     345             : 
     346             :     bool sendok__;
     347             :     {
     348             :         AutoProfilerTracing syncIPCTracer(
     349             :                 "IPC",
     350           0 :                 "PCompositorBridge::Msg_GetFrameUniformity");
     351           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     352             :     }
     353           0 :     if ((!(sendok__))) {
     354           0 :         return false;
     355             :     }
     356             : 
     357           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     358           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     359             :     }
     360             : 
     361           0 :     PickleIterator iter__(reply__);
     362             : 
     363           0 :     if ((!(Read(data, (&(reply__)), (&(iter__)))))) {
     364           0 :         FatalError("Error deserializing 'FrameUniformityData'");
     365           0 :         return false;
     366             :     }
     367             :     // Sentinel = 'data'
     368           0 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 843352540)))) {
     369           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'FrameUniformityData'");
     370           0 :         return false;
     371             :     }
     372           0 :     (reply__).EndRead(iter__, (reply__).type());
     373             : 
     374           0 :     return true;
     375             : }
     376             : 
     377           0 : auto PCompositorBridgeChild::SendWillClose() -> bool
     378             : {
     379           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_WillClose(Id());
     380             : 
     381             : 
     382           0 :     (msg__)->set_sync();
     383             : 
     384             : 
     385           0 :     Message reply__;
     386             : 
     387           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     388           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     389             :     }
     390           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_WillClose", OTHER);
     391           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_WillClose__ID, (&(mState)));
     392             : 
     393             :     bool sendok__;
     394             :     {
     395             :         AutoProfilerTracing syncIPCTracer(
     396             :                 "IPC",
     397           0 :                 "PCompositorBridge::Msg_WillClose");
     398           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     399             :     }
     400           0 :     if ((!(sendok__))) {
     401           0 :         return false;
     402             :     }
     403             : 
     404           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     405           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     406             :     }
     407             : 
     408           0 :     return true;
     409             : }
     410             : 
     411           0 : auto PCompositorBridgeChild::SendPause() -> bool
     412             : {
     413           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_Pause(Id());
     414             : 
     415             : 
     416           0 :     (msg__)->set_sync();
     417             : 
     418             : 
     419           0 :     Message reply__;
     420             : 
     421           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     422           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     423             :     }
     424           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_Pause", OTHER);
     425           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_Pause__ID, (&(mState)));
     426             : 
     427             :     bool sendok__;
     428             :     {
     429             :         AutoProfilerTracing syncIPCTracer(
     430             :                 "IPC",
     431           0 :                 "PCompositorBridge::Msg_Pause");
     432           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     433             :     }
     434           0 :     if ((!(sendok__))) {
     435           0 :         return false;
     436             :     }
     437             : 
     438           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     439           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     440             :     }
     441             : 
     442           0 :     return true;
     443             : }
     444             : 
     445           0 : auto PCompositorBridgeChild::SendResume() -> bool
     446             : {
     447           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_Resume(Id());
     448             : 
     449             : 
     450           0 :     (msg__)->set_sync();
     451             : 
     452             : 
     453           0 :     Message reply__;
     454             : 
     455           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     456           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     457             :     }
     458           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_Resume", OTHER);
     459           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_Resume__ID, (&(mState)));
     460             : 
     461             :     bool sendok__;
     462             :     {
     463             :         AutoProfilerTracing syncIPCTracer(
     464             :                 "IPC",
     465           0 :                 "PCompositorBridge::Msg_Resume");
     466           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     467             :     }
     468           0 :     if ((!(sendok__))) {
     469           0 :         return false;
     470             :     }
     471             : 
     472           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     473           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     474             :     }
     475             : 
     476           0 :     return true;
     477             : }
     478             : 
     479           0 : auto PCompositorBridgeChild::SendForceIsFirstPaint() -> bool
     480             : {
     481           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_ForceIsFirstPaint(Id());
     482             : 
     483             : 
     484             : 
     485             : 
     486             : 
     487           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     488           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     489             :     }
     490           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_ForceIsFirstPaint", OTHER);
     491           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_ForceIsFirstPaint__ID, (&(mState)));
     492             : 
     493           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     494           0 :     return sendok__;
     495             : }
     496             : 
     497           1 : auto PCompositorBridgeChild::SendNotifyChildCreated(
     498             :         const uint64_t& id,
     499             :         CompositorOptions* compositorOptions) -> bool
     500             : {
     501           1 :     IPC::Message* msg__ = PCompositorBridge::Msg_NotifyChildCreated(Id());
     502             : 
     503           1 :     Write(id, msg__);
     504             :     // Sentinel = 'id'
     505           1 :     (msg__)->WriteSentinel(2794505629);
     506             : 
     507           1 :     (msg__)->set_sync();
     508             : 
     509             : 
     510           2 :     Message reply__;
     511             : 
     512           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     513           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     514             :     }
     515           2 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_NotifyChildCreated", OTHER);
     516           1 :     PCompositorBridge::Transition(PCompositorBridge::Msg_NotifyChildCreated__ID, (&(mState)));
     517             : 
     518             :     bool sendok__;
     519             :     {
     520             :         AutoProfilerTracing syncIPCTracer(
     521             :                 "IPC",
     522           2 :                 "PCompositorBridge::Msg_NotifyChildCreated");
     523           1 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     524             :     }
     525           1 :     if ((!(sendok__))) {
     526           0 :         return false;
     527             :     }
     528             : 
     529           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     530           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     531             :     }
     532             : 
     533           1 :     PickleIterator iter__(reply__);
     534             : 
     535           1 :     if ((!(Read(compositorOptions, (&(reply__)), (&(iter__)))))) {
     536           0 :         FatalError("Error deserializing 'CompositorOptions'");
     537           0 :         return false;
     538             :     }
     539             :     // Sentinel = 'compositorOptions'
     540           1 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 1905928698)))) {
     541           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'CompositorOptions'");
     542           0 :         return false;
     543             :     }
     544           1 :     (reply__).EndRead(iter__, (reply__).type());
     545             : 
     546           1 :     return true;
     547             : }
     548             : 
     549           0 : auto PCompositorBridgeChild::SendMapAndNotifyChildCreated(
     550             :         const uint64_t& id,
     551             :         const ProcessId& owner,
     552             :         CompositorOptions* compositorOptions) -> bool
     553             : {
     554           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_MapAndNotifyChildCreated(Id());
     555             : 
     556           0 :     Write(id, msg__);
     557             :     // Sentinel = 'id'
     558           0 :     (msg__)->WriteSentinel(2794505629);
     559           0 :     Write(owner, msg__);
     560             :     // Sentinel = 'owner'
     561           0 :     (msg__)->WriteSentinel(622631704);
     562             : 
     563           0 :     (msg__)->set_sync();
     564             : 
     565             : 
     566           0 :     Message reply__;
     567             : 
     568           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     569           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     570             :     }
     571           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_MapAndNotifyChildCreated", OTHER);
     572           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_MapAndNotifyChildCreated__ID, (&(mState)));
     573             : 
     574             :     bool sendok__;
     575             :     {
     576             :         AutoProfilerTracing syncIPCTracer(
     577             :                 "IPC",
     578           0 :                 "PCompositorBridge::Msg_MapAndNotifyChildCreated");
     579           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     580             :     }
     581           0 :     if ((!(sendok__))) {
     582           0 :         return false;
     583             :     }
     584             : 
     585           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     586           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     587             :     }
     588             : 
     589           0 :     PickleIterator iter__(reply__);
     590             : 
     591           0 :     if ((!(Read(compositorOptions, (&(reply__)), (&(iter__)))))) {
     592           0 :         FatalError("Error deserializing 'CompositorOptions'");
     593           0 :         return false;
     594             :     }
     595             :     // Sentinel = 'compositorOptions'
     596           0 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 1905928698)))) {
     597           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'CompositorOptions'");
     598           0 :         return false;
     599             :     }
     600           0 :     (reply__).EndRead(iter__, (reply__).type());
     601             : 
     602           0 :     return true;
     603             : }
     604             : 
     605           1 : auto PCompositorBridgeChild::SendAdoptChild(const uint64_t& id) -> bool
     606             : {
     607           1 :     IPC::Message* msg__ = PCompositorBridge::Msg_AdoptChild(Id());
     608             : 
     609           1 :     Write(id, msg__);
     610             :     // Sentinel = 'id'
     611           1 :     (msg__)->WriteSentinel(2794505629);
     612             : 
     613             : 
     614             : 
     615             : 
     616           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     617           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     618             :     }
     619           2 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_AdoptChild", OTHER);
     620           1 :     PCompositorBridge::Transition(PCompositorBridge::Msg_AdoptChild__ID, (&(mState)));
     621             : 
     622           1 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     623           2 :     return sendok__;
     624             : }
     625             : 
     626           0 : auto PCompositorBridgeChild::SendNotifyChildRecreated(
     627             :         const uint64_t& id,
     628             :         CompositorOptions* compositorOptions) -> bool
     629             : {
     630           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_NotifyChildRecreated(Id());
     631             : 
     632           0 :     Write(id, msg__);
     633             :     // Sentinel = 'id'
     634           0 :     (msg__)->WriteSentinel(2794505629);
     635             : 
     636           0 :     (msg__)->set_sync();
     637             : 
     638             : 
     639           0 :     Message reply__;
     640             : 
     641           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     642           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     643             :     }
     644           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_NotifyChildRecreated", OTHER);
     645           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_NotifyChildRecreated__ID, (&(mState)));
     646             : 
     647             :     bool sendok__;
     648             :     {
     649             :         AutoProfilerTracing syncIPCTracer(
     650             :                 "IPC",
     651           0 :                 "PCompositorBridge::Msg_NotifyChildRecreated");
     652           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     653             :     }
     654           0 :     if ((!(sendok__))) {
     655           0 :         return false;
     656             :     }
     657             : 
     658           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     659           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     660             :     }
     661             : 
     662           0 :     PickleIterator iter__(reply__);
     663             : 
     664           0 :     if ((!(Read(compositorOptions, (&(reply__)), (&(iter__)))))) {
     665           0 :         FatalError("Error deserializing 'CompositorOptions'");
     666           0 :         return false;
     667             :     }
     668             :     // Sentinel = 'compositorOptions'
     669           0 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 1905928698)))) {
     670           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'CompositorOptions'");
     671           0 :         return false;
     672             :     }
     673           0 :     (reply__).EndRead(iter__, (reply__).type());
     674             : 
     675           0 :     return true;
     676             : }
     677             : 
     678           0 : auto PCompositorBridgeChild::SendMakeSnapshot(
     679             :         const SurfaceDescriptor& inSnapshot,
     680             :         const IntRect& dirtyRect) -> bool
     681             : {
     682           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_MakeSnapshot(Id());
     683             : 
     684           0 :     Write(inSnapshot, msg__);
     685             :     // Sentinel = 'inSnapshot'
     686           0 :     (msg__)->WriteSentinel(1570595367);
     687           0 :     Write(dirtyRect, msg__);
     688             :     // Sentinel = 'dirtyRect'
     689           0 :     (msg__)->WriteSentinel(1726016483);
     690             : 
     691           0 :     (msg__)->set_sync();
     692             : 
     693             : 
     694           0 :     Message reply__;
     695             : 
     696           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     697           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     698             :     }
     699           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_MakeSnapshot", OTHER);
     700           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_MakeSnapshot__ID, (&(mState)));
     701             : 
     702             :     bool sendok__;
     703             :     {
     704             :         AutoProfilerTracing syncIPCTracer(
     705             :                 "IPC",
     706           0 :                 "PCompositorBridge::Msg_MakeSnapshot");
     707           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     708             :     }
     709           0 :     if ((!(sendok__))) {
     710           0 :         return false;
     711             :     }
     712             : 
     713           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     714           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     715             :     }
     716             : 
     717           0 :     return true;
     718             : }
     719             : 
     720           1 : auto PCompositorBridgeChild::SendFlushRendering() -> bool
     721             : {
     722           1 :     IPC::Message* msg__ = PCompositorBridge::Msg_FlushRendering(Id());
     723             : 
     724             : 
     725           1 :     (msg__)->set_sync();
     726             : 
     727             : 
     728           2 :     Message reply__;
     729             : 
     730           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     731           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     732             :     }
     733           2 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_FlushRendering", OTHER);
     734           1 :     PCompositorBridge::Transition(PCompositorBridge::Msg_FlushRendering__ID, (&(mState)));
     735             : 
     736             :     bool sendok__;
     737             :     {
     738             :         AutoProfilerTracing syncIPCTracer(
     739             :                 "IPC",
     740           2 :                 "PCompositorBridge::Msg_FlushRendering");
     741           1 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     742             :     }
     743           1 :     if ((!(sendok__))) {
     744           0 :         return false;
     745             :     }
     746             : 
     747           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     748           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     749             :     }
     750             : 
     751           1 :     return true;
     752             : }
     753             : 
     754           0 : auto PCompositorBridgeChild::SendFlushRenderingAsync() -> bool
     755             : {
     756           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_FlushRenderingAsync(Id());
     757             : 
     758             : 
     759             : 
     760             : 
     761             : 
     762           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     763           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     764             :     }
     765           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_FlushRenderingAsync", OTHER);
     766           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_FlushRenderingAsync__ID, (&(mState)));
     767             : 
     768           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     769           0 :     return sendok__;
     770             : }
     771             : 
     772           0 : auto PCompositorBridgeChild::SendWaitOnTransactionProcessed() -> bool
     773             : {
     774           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_WaitOnTransactionProcessed(Id());
     775             : 
     776             : 
     777           0 :     (msg__)->set_sync();
     778             : 
     779             : 
     780           0 :     Message reply__;
     781             : 
     782           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     783           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     784             :     }
     785           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_WaitOnTransactionProcessed", OTHER);
     786           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_WaitOnTransactionProcessed__ID, (&(mState)));
     787             : 
     788             :     bool sendok__;
     789             :     {
     790             :         AutoProfilerTracing syncIPCTracer(
     791             :                 "IPC",
     792           0 :                 "PCompositorBridge::Msg_WaitOnTransactionProcessed");
     793           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     794             :     }
     795           0 :     if ((!(sendok__))) {
     796           0 :         return false;
     797             :     }
     798             : 
     799           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     800           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     801             :     }
     802             : 
     803           0 :     return true;
     804             : }
     805             : 
     806           0 : auto PCompositorBridgeChild::SendForcePresent() -> bool
     807             : {
     808           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_ForcePresent(Id());
     809             : 
     810             : 
     811             : 
     812             : 
     813             : 
     814           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     815           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     816             :     }
     817           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_ForcePresent", OTHER);
     818           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_ForcePresent__ID, (&(mState)));
     819             : 
     820           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     821           0 :     return sendok__;
     822             : }
     823             : 
     824           0 : auto PCompositorBridgeChild::SendStartFrameTimeRecording(
     825             :         const int32_t& bufferSize,
     826             :         uint32_t* startIndex) -> bool
     827             : {
     828           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_StartFrameTimeRecording(Id());
     829             : 
     830           0 :     Write(bufferSize, msg__);
     831             :     // Sentinel = 'bufferSize'
     832           0 :     (msg__)->WriteSentinel(3444538779);
     833             : 
     834           0 :     (msg__)->set_sync();
     835             : 
     836             : 
     837           0 :     Message reply__;
     838             : 
     839           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     840           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     841             :     }
     842           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_StartFrameTimeRecording", OTHER);
     843           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_StartFrameTimeRecording__ID, (&(mState)));
     844             : 
     845             :     bool sendok__;
     846             :     {
     847             :         AutoProfilerTracing syncIPCTracer(
     848             :                 "IPC",
     849           0 :                 "PCompositorBridge::Msg_StartFrameTimeRecording");
     850           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     851             :     }
     852           0 :     if ((!(sendok__))) {
     853           0 :         return false;
     854             :     }
     855             : 
     856           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     857           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     858             :     }
     859             : 
     860           0 :     PickleIterator iter__(reply__);
     861             : 
     862           0 :     if ((!(Read(startIndex, (&(reply__)), (&(iter__)))))) {
     863           0 :         FatalError("Error deserializing 'uint32_t'");
     864           0 :         return false;
     865             :     }
     866             :     // Sentinel = 'startIndex'
     867           0 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 4220530450)))) {
     868           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'uint32_t'");
     869           0 :         return false;
     870             :     }
     871           0 :     (reply__).EndRead(iter__, (reply__).type());
     872             : 
     873           0 :     return true;
     874             : }
     875             : 
     876           0 : auto PCompositorBridgeChild::SendStopFrameTimeRecording(
     877             :         const uint32_t& startIndex,
     878             :         nsTArray<float>* intervals) -> bool
     879             : {
     880           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_StopFrameTimeRecording(Id());
     881             : 
     882           0 :     Write(startIndex, msg__);
     883             :     // Sentinel = 'startIndex'
     884           0 :     (msg__)->WriteSentinel(4220530450);
     885             : 
     886           0 :     (msg__)->set_sync();
     887             : 
     888             : 
     889           0 :     Message reply__;
     890             : 
     891           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     892           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     893             :     }
     894           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_StopFrameTimeRecording", OTHER);
     895           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_StopFrameTimeRecording__ID, (&(mState)));
     896             : 
     897             :     bool sendok__;
     898             :     {
     899             :         AutoProfilerTracing syncIPCTracer(
     900             :                 "IPC",
     901           0 :                 "PCompositorBridge::Msg_StopFrameTimeRecording");
     902           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
     903             :     }
     904           0 :     if ((!(sendok__))) {
     905           0 :         return false;
     906             :     }
     907             : 
     908           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     909           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
     910             :     }
     911             : 
     912           0 :     PickleIterator iter__(reply__);
     913             : 
     914           0 :     if ((!(Read(intervals, (&(reply__)), (&(iter__)))))) {
     915           0 :         FatalError("Error deserializing 'nsTArray'");
     916           0 :         return false;
     917             :     }
     918             :     // Sentinel = 'intervals'
     919           0 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 470677011)))) {
     920           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
     921           0 :         return false;
     922             :     }
     923           0 :     (reply__).EndRead(iter__, (reply__).type());
     924             : 
     925           0 :     return true;
     926             : }
     927             : 
     928           2 : auto PCompositorBridgeChild::SendPLayerTransactionConstructor(
     929             :         const nsTArray<LayersBackend>& layersBackendHints,
     930             :         const uint64_t& id) -> PLayerTransactionChild*
     931             : {
     932           2 :     return SendPLayerTransactionConstructor(AllocPLayerTransactionChild(layersBackendHints, id), layersBackendHints, id);
     933             : }
     934             : 
     935           2 : auto PCompositorBridgeChild::SendPLayerTransactionConstructor(
     936             :         PLayerTransactionChild* actor,
     937             :         const nsTArray<LayersBackend>& layersBackendHints,
     938             :         const uint64_t& id) -> PLayerTransactionChild*
     939             : {
     940           2 :     if ((!(actor))) {
     941           0 :         NS_WARNING("Error constructing actor PLayerTransactionChild");
     942           0 :         return nullptr;
     943             :     }
     944           2 :     (actor)->SetManager(this);
     945           2 :     Register(actor);
     946           2 :     (actor)->SetIPCChannel(GetIPCChannel());
     947           2 :     (mManagedPLayerTransactionChild).PutEntry(actor);
     948           2 :     (actor)->mState = mozilla::layers::PLayerTransaction::__Start;
     949             : 
     950           2 :     IPC::Message* msg__ = PCompositorBridge::Msg_PLayerTransactionConstructor(Id());
     951             : 
     952           2 :     Write(actor, msg__, false);
     953             :     // Sentinel = 'actor'
     954           2 :     (msg__)->WriteSentinel(875202478);
     955           2 :     Write(layersBackendHints, msg__);
     956             :     // Sentinel = 'layersBackendHints'
     957           2 :     (msg__)->WriteSentinel(3491646450);
     958           2 :     Write(id, msg__);
     959             :     // Sentinel = 'id'
     960           2 :     (msg__)->WriteSentinel(2794505629);
     961             : 
     962           2 :     (msg__)->set_constructor();
     963             : 
     964             : 
     965           2 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     966           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     967             :     }
     968           4 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_PLayerTransactionConstructor", OTHER);
     969           2 :     PCompositorBridge::Transition(PCompositorBridge::Msg_PLayerTransactionConstructor__ID, (&(mState)));
     970             : 
     971           2 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     972           2 :     if ((!(sendok__))) {
     973           0 :         FatalError("constructor for actor failed");
     974           0 :         return nullptr;
     975             :     }
     976           2 :     return actor;
     977             : }
     978             : 
     979           1 : auto PCompositorBridgeChild::SendNotifyRegionInvalidated(const nsIntRegion& region) -> bool
     980             : {
     981           1 :     IPC::Message* msg__ = PCompositorBridge::Msg_NotifyRegionInvalidated(Id());
     982             : 
     983           1 :     Write(region, msg__);
     984             :     // Sentinel = 'region'
     985           1 :     (msg__)->WriteSentinel(688844010);
     986             : 
     987             : 
     988             : 
     989             : 
     990           1 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
     991           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
     992             :     }
     993           2 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_NotifyRegionInvalidated", OTHER);
     994           1 :     PCompositorBridge::Transition(PCompositorBridge::Msg_NotifyRegionInvalidated__ID, (&(mState)));
     995             : 
     996           1 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
     997           2 :     return sendok__;
     998             : }
     999             : 
    1000           0 : auto PCompositorBridgeChild::SendRequestNotifyAfterRemotePaint() -> bool
    1001             : {
    1002           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_RequestNotifyAfterRemotePaint(Id());
    1003             : 
    1004             : 
    1005             : 
    1006             : 
    1007             : 
    1008           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1009           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
    1010             :     }
    1011           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_RequestNotifyAfterRemotePaint", OTHER);
    1012           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_RequestNotifyAfterRemotePaint__ID, (&(mState)));
    1013             : 
    1014           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
    1015           0 :     return sendok__;
    1016             : }
    1017             : 
    1018           0 : auto PCompositorBridgeChild::SendClearApproximatelyVisibleRegions(
    1019             :         const uint64_t& layersId,
    1020             :         const uint32_t& presShellId) -> bool
    1021             : {
    1022           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_ClearApproximatelyVisibleRegions(Id());
    1023             : 
    1024           0 :     Write(layersId, msg__);
    1025             :     // Sentinel = 'layersId'
    1026           0 :     (msg__)->WriteSentinel(2382073245);
    1027           0 :     Write(presShellId, msg__);
    1028             :     // Sentinel = 'presShellId'
    1029           0 :     (msg__)->WriteSentinel(3004057044);
    1030             : 
    1031             : 
    1032             : 
    1033             : 
    1034           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1035           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
    1036             :     }
    1037           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_ClearApproximatelyVisibleRegions", OTHER);
    1038           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_ClearApproximatelyVisibleRegions__ID, (&(mState)));
    1039             : 
    1040           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
    1041           0 :     return sendok__;
    1042             : }
    1043             : 
    1044           0 : auto PCompositorBridgeChild::SendNotifyApproximatelyVisibleRegion(
    1045             :         const ScrollableLayerGuid& guid,
    1046             :         const CSSIntRegion& region) -> bool
    1047             : {
    1048           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_NotifyApproximatelyVisibleRegion(Id());
    1049             : 
    1050           0 :     Write(guid, msg__);
    1051             :     // Sentinel = 'guid'
    1052           0 :     (msg__)->WriteSentinel(972072219);
    1053           0 :     Write(region, msg__);
    1054             :     // Sentinel = 'region'
    1055           0 :     (msg__)->WriteSentinel(688844010);
    1056             : 
    1057             : 
    1058             : 
    1059             : 
    1060           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1061           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
    1062             :     }
    1063           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_NotifyApproximatelyVisibleRegion", OTHER);
    1064           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_NotifyApproximatelyVisibleRegion__ID, (&(mState)));
    1065             : 
    1066           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
    1067           0 :     return sendok__;
    1068             : }
    1069             : 
    1070           0 : auto PCompositorBridgeChild::SendAllPluginsCaptured() -> bool
    1071             : {
    1072           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_AllPluginsCaptured(Id());
    1073             : 
    1074             : 
    1075             : 
    1076             : 
    1077             : 
    1078           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1079           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
    1080             :     }
    1081           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_AllPluginsCaptured", OTHER);
    1082           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_AllPluginsCaptured__ID, (&(mState)));
    1083             : 
    1084           0 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
    1085           0 :     return sendok__;
    1086             : }
    1087             : 
    1088           0 : auto PCompositorBridgeChild::SendPTextureConstructor(
    1089             :         const SurfaceDescriptor& aSharedData,
    1090             :         const LayersBackend& aBackend,
    1091             :         const TextureFlags& aTextureFlags,
    1092             :         const uint64_t& id,
    1093             :         const uint64_t& aSerial,
    1094             :         const MaybeExternalImageId& aExternalImageId) -> PTextureChild*
    1095             : {
    1096           0 :     return SendPTextureConstructor(AllocPTextureChild(aSharedData, aBackend, aTextureFlags, id, aSerial, aExternalImageId), aSharedData, aBackend, aTextureFlags, id, aSerial, aExternalImageId);
    1097             : }
    1098             : 
    1099           9 : auto PCompositorBridgeChild::SendPTextureConstructor(
    1100             :         PTextureChild* actor,
    1101             :         const SurfaceDescriptor& aSharedData,
    1102             :         const LayersBackend& aBackend,
    1103             :         const TextureFlags& aTextureFlags,
    1104             :         const uint64_t& id,
    1105             :         const uint64_t& aSerial,
    1106             :         const MaybeExternalImageId& aExternalImageId) -> PTextureChild*
    1107             : {
    1108           9 :     if ((!(actor))) {
    1109           0 :         NS_WARNING("Error constructing actor PTextureChild");
    1110           0 :         return nullptr;
    1111             :     }
    1112           9 :     (actor)->SetManager(this);
    1113           9 :     Register(actor);
    1114           9 :     (actor)->SetIPCChannel(GetIPCChannel());
    1115           9 :     (mManagedPTextureChild).PutEntry(actor);
    1116           9 :     (actor)->mState = mozilla::layers::PTexture::__Start;
    1117             : 
    1118           9 :     IPC::Message* msg__ = PCompositorBridge::Msg_PTextureConstructor(Id());
    1119             : 
    1120           9 :     Write(actor, msg__, false);
    1121             :     // Sentinel = 'actor'
    1122           9 :     (msg__)->WriteSentinel(875202478);
    1123           9 :     Write(aSharedData, msg__);
    1124             :     // Sentinel = 'aSharedData'
    1125           9 :     (msg__)->WriteSentinel(3013593029);
    1126           9 :     Write(aBackend, msg__);
    1127             :     // Sentinel = 'aBackend'
    1128           9 :     (msg__)->WriteSentinel(2878499283);
    1129           9 :     Write(aTextureFlags, msg__);
    1130             :     // Sentinel = 'aTextureFlags'
    1131           9 :     (msg__)->WriteSentinel(3005687826);
    1132           9 :     Write(id, msg__);
    1133             :     // Sentinel = 'id'
    1134           9 :     (msg__)->WriteSentinel(2794505629);
    1135           9 :     Write(aSerial, msg__);
    1136             :     // Sentinel = 'aSerial'
    1137           9 :     (msg__)->WriteSentinel(1247987114);
    1138           9 :     Write(aExternalImageId, msg__);
    1139             :     // Sentinel = 'aExternalImageId'
    1140           9 :     (msg__)->WriteSentinel(2889998824);
    1141             : 
    1142           9 :     (msg__)->set_constructor();
    1143             : 
    1144             : 
    1145           9 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1146           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
    1147             :     }
    1148          18 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_PTextureConstructor", OTHER);
    1149           9 :     PCompositorBridge::Transition(PCompositorBridge::Msg_PTextureConstructor__ID, (&(mState)));
    1150             : 
    1151           9 :     bool sendok__ = (GetIPCChannel())->Send(msg__);
    1152           9 :     if ((!(sendok__))) {
    1153           0 :         FatalError("constructor for actor failed");
    1154           0 :         return nullptr;
    1155             :     }
    1156           9 :     return actor;
    1157             : }
    1158             : 
    1159           0 : auto PCompositorBridgeChild::SendSyncWithCompositor() -> bool
    1160             : {
    1161           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_SyncWithCompositor(Id());
    1162             : 
    1163             : 
    1164           0 :     (msg__)->set_sync();
    1165             : 
    1166             : 
    1167           0 :     Message reply__;
    1168             : 
    1169           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1170           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
    1171             :     }
    1172           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_SyncWithCompositor", OTHER);
    1173           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_SyncWithCompositor__ID, (&(mState)));
    1174             : 
    1175             :     bool sendok__;
    1176             :     {
    1177             :         AutoProfilerTracing syncIPCTracer(
    1178             :                 "IPC",
    1179           0 :                 "PCompositorBridge::Msg_SyncWithCompositor");
    1180           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
    1181             :     }
    1182           0 :     if ((!(sendok__))) {
    1183           0 :         return false;
    1184             :     }
    1185             : 
    1186           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1187           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1188             :     }
    1189             : 
    1190           0 :     return true;
    1191             : }
    1192             : 
    1193           0 : auto PCompositorBridgeChild::SendPWebRenderBridgeConstructor(
    1194             :         const PipelineId& pipelineId,
    1195             :         const LayoutDeviceIntSize& aSize,
    1196             :         TextureFactoryIdentifier* textureFactoryIdentifier,
    1197             :         uint32_t* idNamespace) -> PWebRenderBridgeChild*
    1198             : {
    1199           0 :     return SendPWebRenderBridgeConstructor(AllocPWebRenderBridgeChild(pipelineId, aSize, textureFactoryIdentifier, idNamespace), pipelineId, aSize, textureFactoryIdentifier, idNamespace);
    1200             : }
    1201             : 
    1202           0 : auto PCompositorBridgeChild::SendPWebRenderBridgeConstructor(
    1203             :         PWebRenderBridgeChild* actor,
    1204             :         const PipelineId& pipelineId,
    1205             :         const LayoutDeviceIntSize& aSize,
    1206             :         TextureFactoryIdentifier* textureFactoryIdentifier,
    1207             :         uint32_t* idNamespace) -> PWebRenderBridgeChild*
    1208             : {
    1209           0 :     if ((!(actor))) {
    1210           0 :         NS_WARNING("Error constructing actor PWebRenderBridgeChild");
    1211           0 :         return nullptr;
    1212             :     }
    1213           0 :     (actor)->SetManager(this);
    1214           0 :     Register(actor);
    1215           0 :     (actor)->SetIPCChannel(GetIPCChannel());
    1216           0 :     (mManagedPWebRenderBridgeChild).PutEntry(actor);
    1217           0 :     (actor)->mState = mozilla::layers::PWebRenderBridge::__Start;
    1218             : 
    1219           0 :     IPC::Message* msg__ = PCompositorBridge::Msg_PWebRenderBridgeConstructor(Id());
    1220             : 
    1221           0 :     Write(actor, msg__, false);
    1222             :     // Sentinel = 'actor'
    1223           0 :     (msg__)->WriteSentinel(875202478);
    1224           0 :     Write(pipelineId, msg__);
    1225             :     // Sentinel = 'pipelineId'
    1226           0 :     (msg__)->WriteSentinel(4067092043);
    1227           0 :     Write(aSize, msg__);
    1228             :     // Sentinel = 'aSize'
    1229           0 :     (msg__)->WriteSentinel(2556665555);
    1230             : 
    1231           0 :     (msg__)->set_sync();
    1232           0 :     (msg__)->set_constructor();
    1233             : 
    1234             : 
    1235           0 :     Message reply__;
    1236             : 
    1237           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1238           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
    1239             :     }
    1240           0 :     AUTO_PROFILER_LABEL("PCompositorBridge::Msg_PWebRenderBridgeConstructor", OTHER);
    1241           0 :     PCompositorBridge::Transition(PCompositorBridge::Msg_PWebRenderBridgeConstructor__ID, (&(mState)));
    1242             : 
    1243             :     bool sendok__;
    1244             :     {
    1245             :         AutoProfilerTracing syncIPCTracer(
    1246             :                 "IPC",
    1247           0 :                 "PCompositorBridge::Msg_PWebRenderBridgeConstructor");
    1248           0 :         sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
    1249             :     }
    1250           0 :     if ((!(sendok__))) {
    1251           0 :         FatalError("constructor for actor failed");
    1252           0 :         return nullptr;
    1253             :     }
    1254             : 
    1255           0 :     if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1256           0 :         mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received reply ", ((&(reply__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1257             :     }
    1258             : 
    1259           0 :     PickleIterator iter__(reply__);
    1260             : 
    1261           0 :     if ((!(Read(textureFactoryIdentifier, (&(reply__)), (&(iter__)))))) {
    1262             :         if (true) {
    1263           0 :             FatalError("constructor for actor failed");
    1264           0 :             return nullptr;
    1265             :         }
    1266             :     }
    1267             :     // Sentinel = 'textureFactoryIdentifier'
    1268           0 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 1630882508)))) {
    1269           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'TextureFactoryIdentifier'");
    1270           0 :         return nullptr;
    1271             :     }
    1272           0 :     if ((!(Read(idNamespace, (&(reply__)), (&(iter__)))))) {
    1273             :         if (true) {
    1274           0 :             FatalError("constructor for actor failed");
    1275           0 :             return nullptr;
    1276             :         }
    1277             :     }
    1278             :     // Sentinel = 'idNamespace'
    1279           0 :     if ((!(((&(reply__)))->ReadSentinel((&(iter__)), 1477745059)))) {
    1280           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'uint32_t'");
    1281           0 :         return nullptr;
    1282             :     }
    1283           0 :     (reply__).EndRead(iter__, (reply__).type());
    1284           0 :     return actor;
    1285             : }
    1286             : 
    1287           6 : auto PCompositorBridgeChild::RemoveManagee(
    1288             :         int32_t aProtocolId,
    1289             :         ProtocolBase* aListener) -> void
    1290             : {
    1291           6 :     switch (aProtocolId) {
    1292             :     case PAPZMsgStart:
    1293             :         {
    1294           0 :             PAPZChild* actor = static_cast<PAPZChild*>(aListener);
    1295           0 :             auto& container = mManagedPAPZChild;
    1296           0 :             MOZ_RELEASE_ASSERT((container).Contains(actor), "actor not managed by this!");
    1297             : 
    1298           0 :             (container).RemoveEntry(actor);
    1299           0 :             DeallocPAPZChild(actor);
    1300           0 :             return;
    1301             :         }
    1302             :     case PAPZCTreeManagerMsgStart:
    1303             :         {
    1304           0 :             PAPZCTreeManagerChild* actor = static_cast<PAPZCTreeManagerChild*>(aListener);
    1305           0 :             auto& container = mManagedPAPZCTreeManagerChild;
    1306           0 :             MOZ_RELEASE_ASSERT((container).Contains(actor), "actor not managed by this!");
    1307             : 
    1308           0 :             (container).RemoveEntry(actor);
    1309           0 :             DeallocPAPZCTreeManagerChild(actor);
    1310           0 :             return;
    1311             :         }
    1312             :     case PLayerTransactionMsgStart:
    1313             :         {
    1314           0 :             PLayerTransactionChild* actor = static_cast<PLayerTransactionChild*>(aListener);
    1315           0 :             auto& container = mManagedPLayerTransactionChild;
    1316           0 :             MOZ_RELEASE_ASSERT((container).Contains(actor), "actor not managed by this!");
    1317             : 
    1318           0 :             (container).RemoveEntry(actor);
    1319           0 :             DeallocPLayerTransactionChild(actor);
    1320           0 :             return;
    1321             :         }
    1322             :     case PTextureMsgStart:
    1323             :         {
    1324           6 :             PTextureChild* actor = static_cast<PTextureChild*>(aListener);
    1325           6 :             auto& container = mManagedPTextureChild;
    1326           6 :             MOZ_RELEASE_ASSERT((container).Contains(actor), "actor not managed by this!");
    1327             : 
    1328           6 :             (container).RemoveEntry(actor);
    1329           6 :             DeallocPTextureChild(actor);
    1330           6 :             return;
    1331             :         }
    1332             :     case PCompositorWidgetMsgStart:
    1333             :         {
    1334           0 :             PCompositorWidgetChild* actor = static_cast<PCompositorWidgetChild*>(aListener);
    1335           0 :             auto& container = mManagedPCompositorWidgetChild;
    1336           0 :             MOZ_RELEASE_ASSERT((container).Contains(actor), "actor not managed by this!");
    1337             : 
    1338           0 :             (container).RemoveEntry(actor);
    1339           0 :             DeallocPCompositorWidgetChild(actor);
    1340           0 :             return;
    1341             :         }
    1342             :     case PWebRenderBridgeMsgStart:
    1343             :         {
    1344           0 :             PWebRenderBridgeChild* actor = static_cast<PWebRenderBridgeChild*>(aListener);
    1345           0 :             auto& container = mManagedPWebRenderBridgeChild;
    1346           0 :             MOZ_RELEASE_ASSERT((container).Contains(actor), "actor not managed by this!");
    1347             : 
    1348           0 :             (container).RemoveEntry(actor);
    1349           0 :             DeallocPWebRenderBridgeChild(actor);
    1350           0 :             return;
    1351             :         }
    1352             :     default:
    1353             :         {
    1354           0 :             FatalError("unreached");
    1355           0 :             return;
    1356             :         }
    1357             :     }
    1358             : }
    1359             : 
    1360          55 : auto PCompositorBridgeChild::OnMessageReceived(const Message& msg__) -> PCompositorBridgeChild::Result
    1361             : {
    1362          55 :     switch ((msg__).type()) {
    1363             :     case PCompositorBridge::Msg_InvalidateLayers__ID:
    1364             :         {
    1365           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1366           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1367             :             }
    1368           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_InvalidateLayers", OTHER);
    1369             : 
    1370           0 :             PickleIterator iter__(msg__);
    1371             :             uint64_t layersId;
    1372             : 
    1373           0 :             if ((!(Read((&(layersId)), (&(msg__)), (&(iter__)))))) {
    1374           0 :                 FatalError("Error deserializing 'uint64_t'");
    1375           0 :                 return MsgValueError;
    1376             :             }
    1377             :             // Sentinel = 'layersId'
    1378           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2382073245)))) {
    1379           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
    1380           0 :                 return MsgValueError;
    1381             :             }
    1382           0 :             (msg__).EndRead(iter__, (msg__).type());
    1383           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_InvalidateLayers__ID, (&(mState)));
    1384           0 :             if ((!(RecvInvalidateLayers(mozilla::Move(layersId))))) {
    1385           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1386             :                 // Error handled in mozilla::ipc::IPCResult
    1387           0 :                 return MsgProcessingError;
    1388             :             }
    1389             : 
    1390           0 :             return MsgProcessed;
    1391             :         }
    1392             :     case PCompositorBridge::Msg_DidComposite__ID:
    1393             :         {
    1394          54 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1395           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1396             :             }
    1397         108 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_DidComposite", OTHER);
    1398             : 
    1399          54 :             PickleIterator iter__(msg__);
    1400             :             uint64_t id;
    1401             :             uint64_t transactionId;
    1402          54 :             TimeStamp compositeStart;
    1403          54 :             TimeStamp compositeEnd;
    1404             : 
    1405          54 :             if ((!(Read((&(id)), (&(msg__)), (&(iter__)))))) {
    1406           0 :                 FatalError("Error deserializing 'uint64_t'");
    1407           0 :                 return MsgValueError;
    1408             :             }
    1409             :             // Sentinel = 'id'
    1410          54 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2794505629)))) {
    1411           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
    1412           0 :                 return MsgValueError;
    1413             :             }
    1414          54 :             if ((!(Read((&(transactionId)), (&(msg__)), (&(iter__)))))) {
    1415           0 :                 FatalError("Error deserializing 'uint64_t'");
    1416           0 :                 return MsgValueError;
    1417             :             }
    1418             :             // Sentinel = 'transactionId'
    1419          54 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3330976378)))) {
    1420           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
    1421           0 :                 return MsgValueError;
    1422             :             }
    1423          54 :             if ((!(Read((&(compositeStart)), (&(msg__)), (&(iter__)))))) {
    1424           0 :                 FatalError("Error deserializing 'TimeStamp'");
    1425           0 :                 return MsgValueError;
    1426             :             }
    1427             :             // Sentinel = 'compositeStart'
    1428          54 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2314271973)))) {
    1429           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
    1430           0 :                 return MsgValueError;
    1431             :             }
    1432          54 :             if ((!(Read((&(compositeEnd)), (&(msg__)), (&(iter__)))))) {
    1433           0 :                 FatalError("Error deserializing 'TimeStamp'");
    1434           0 :                 return MsgValueError;
    1435             :             }
    1436             :             // Sentinel = 'compositeEnd'
    1437          54 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3871762396)))) {
    1438           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
    1439           0 :                 return MsgValueError;
    1440             :             }
    1441          54 :             (msg__).EndRead(iter__, (msg__).type());
    1442          54 :             PCompositorBridge::Transition(PCompositorBridge::Msg_DidComposite__ID, (&(mState)));
    1443          54 :             if ((!(RecvDidComposite(mozilla::Move(id), mozilla::Move(transactionId), mozilla::Move(compositeStart), mozilla::Move(compositeEnd))))) {
    1444           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1445             :                 // Error handled in mozilla::ipc::IPCResult
    1446           0 :                 return MsgProcessingError;
    1447             :             }
    1448             : 
    1449          54 :             return MsgProcessed;
    1450             :         }
    1451             :     case PCompositorBridge::Msg_RemotePaintIsReady__ID:
    1452             :         {
    1453           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1454           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1455             :             }
    1456           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_RemotePaintIsReady", OTHER);
    1457             : 
    1458           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_RemotePaintIsReady__ID, (&(mState)));
    1459           0 :             if ((!(RecvRemotePaintIsReady()))) {
    1460           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1461             :                 // Error handled in mozilla::ipc::IPCResult
    1462           0 :                 return MsgProcessingError;
    1463             :             }
    1464             : 
    1465           0 :             return MsgProcessed;
    1466             :         }
    1467             :     case PCompositorBridge::Msg_UpdatePluginConfigurations__ID:
    1468             :         {
    1469           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1470           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1471             :             }
    1472           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_UpdatePluginConfigurations", OTHER);
    1473             : 
    1474           0 :             PickleIterator iter__(msg__);
    1475           0 :             LayoutDeviceIntPoint aContentOffset;
    1476           0 :             LayoutDeviceIntRegion aVisibleRegion;
    1477           0 :             nsTArray<PluginWindowData> aPlugins;
    1478             : 
    1479           0 :             if ((!(Read((&(aContentOffset)), (&(msg__)), (&(iter__)))))) {
    1480           0 :                 FatalError("Error deserializing 'LayoutDeviceIntPoint'");
    1481           0 :                 return MsgValueError;
    1482             :             }
    1483             :             // Sentinel = 'aContentOffset'
    1484           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2149079995)))) {
    1485           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'LayoutDeviceIntPoint'");
    1486           0 :                 return MsgValueError;
    1487             :             }
    1488           0 :             if ((!(Read((&(aVisibleRegion)), (&(msg__)), (&(iter__)))))) {
    1489           0 :                 FatalError("Error deserializing 'LayoutDeviceIntRegion'");
    1490           0 :                 return MsgValueError;
    1491             :             }
    1492             :             // Sentinel = 'aVisibleRegion'
    1493           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 24324155)))) {
    1494           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'LayoutDeviceIntRegion'");
    1495           0 :                 return MsgValueError;
    1496             :             }
    1497           0 :             if ((!(Read((&(aPlugins)), (&(msg__)), (&(iter__)))))) {
    1498           0 :                 FatalError("Error deserializing 'nsTArray'");
    1499           0 :                 return MsgValueError;
    1500             :             }
    1501             :             // Sentinel = 'aPlugins'
    1502           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1444186915)))) {
    1503           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
    1504           0 :                 return MsgValueError;
    1505             :             }
    1506           0 :             (msg__).EndRead(iter__, (msg__).type());
    1507           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_UpdatePluginConfigurations__ID, (&(mState)));
    1508           0 :             if ((!(RecvUpdatePluginConfigurations(mozilla::Move(aContentOffset), mozilla::Move(aVisibleRegion), mozilla::Move(aPlugins))))) {
    1509           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1510             :                 // Error handled in mozilla::ipc::IPCResult
    1511           0 :                 return MsgProcessingError;
    1512             :             }
    1513             : 
    1514           0 :             return MsgProcessed;
    1515             :         }
    1516             :     case PCompositorBridge::Msg_CaptureAllPlugins__ID:
    1517             :         {
    1518           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1519           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1520             :             }
    1521           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_CaptureAllPlugins", OTHER);
    1522             : 
    1523           0 :             PickleIterator iter__(msg__);
    1524             :             uintptr_t aParentWidget;
    1525             : 
    1526           0 :             if ((!(Read((&(aParentWidget)), (&(msg__)), (&(iter__)))))) {
    1527           0 :                 FatalError("Error deserializing 'uintptr_t'");
    1528           0 :                 return MsgValueError;
    1529             :             }
    1530             :             // Sentinel = 'aParentWidget'
    1531           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2198235748)))) {
    1532           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uintptr_t'");
    1533           0 :                 return MsgValueError;
    1534             :             }
    1535           0 :             (msg__).EndRead(iter__, (msg__).type());
    1536           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_CaptureAllPlugins__ID, (&(mState)));
    1537           0 :             if ((!(RecvCaptureAllPlugins(mozilla::Move(aParentWidget))))) {
    1538           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1539             :                 // Error handled in mozilla::ipc::IPCResult
    1540           0 :                 return MsgProcessingError;
    1541             :             }
    1542             : 
    1543           0 :             return MsgProcessed;
    1544             :         }
    1545             :     case PCompositorBridge::Msg_HideAllPlugins__ID:
    1546             :         {
    1547           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1548           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1549             :             }
    1550           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_HideAllPlugins", OTHER);
    1551             : 
    1552           0 :             PickleIterator iter__(msg__);
    1553             :             uintptr_t aParentWidget;
    1554             : 
    1555           0 :             if ((!(Read((&(aParentWidget)), (&(msg__)), (&(iter__)))))) {
    1556           0 :                 FatalError("Error deserializing 'uintptr_t'");
    1557           0 :                 return MsgValueError;
    1558             :             }
    1559             :             // Sentinel = 'aParentWidget'
    1560           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2198235748)))) {
    1561           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uintptr_t'");
    1562           0 :                 return MsgValueError;
    1563             :             }
    1564           0 :             (msg__).EndRead(iter__, (msg__).type());
    1565           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_HideAllPlugins__ID, (&(mState)));
    1566           0 :             if ((!(RecvHideAllPlugins(mozilla::Move(aParentWidget))))) {
    1567           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1568             :                 // Error handled in mozilla::ipc::IPCResult
    1569           0 :                 return MsgProcessingError;
    1570             :             }
    1571             : 
    1572           0 :             return MsgProcessed;
    1573             :         }
    1574             :     case PCompositorBridge::Msg_ParentAsyncMessages__ID:
    1575             :         {
    1576           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1577           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1578             :             }
    1579           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_ParentAsyncMessages", OTHER);
    1580             : 
    1581           0 :             PickleIterator iter__(msg__);
    1582           0 :             nsTArray<AsyncParentMessageData> aMessages;
    1583             : 
    1584           0 :             if ((!(Read((&(aMessages)), (&(msg__)), (&(iter__)))))) {
    1585           0 :                 FatalError("Error deserializing 'nsTArray'");
    1586           0 :                 return MsgValueError;
    1587             :             }
    1588             :             // Sentinel = 'aMessages'
    1589           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1923086976)))) {
    1590           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
    1591           0 :                 return MsgValueError;
    1592             :             }
    1593           0 :             (msg__).EndRead(iter__, (msg__).type());
    1594           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_ParentAsyncMessages__ID, (&(mState)));
    1595           0 :             if ((!(RecvParentAsyncMessages(mozilla::Move(aMessages))))) {
    1596           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1597             :                 // Error handled in mozilla::ipc::IPCResult
    1598           0 :                 return MsgProcessingError;
    1599             :             }
    1600             : 
    1601           0 :             return MsgProcessed;
    1602             :         }
    1603             :     case PCompositorBridge::Msg_ObserveLayerUpdate__ID:
    1604             :         {
    1605           1 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1606           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1607             :             }
    1608           2 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_ObserveLayerUpdate", OTHER);
    1609             : 
    1610           1 :             PickleIterator iter__(msg__);
    1611             :             uint64_t aLayersId;
    1612             :             uint64_t aEpoch;
    1613             :             bool aActive;
    1614             : 
    1615           1 :             if ((!(Read((&(aLayersId)), (&(msg__)), (&(iter__)))))) {
    1616           0 :                 FatalError("Error deserializing 'uint64_t'");
    1617           0 :                 return MsgValueError;
    1618             :             }
    1619             :             // Sentinel = 'aLayersId'
    1620           1 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1401196721)))) {
    1621           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
    1622           0 :                 return MsgValueError;
    1623             :             }
    1624           1 :             if ((!(Read((&(aEpoch)), (&(msg__)), (&(iter__)))))) {
    1625           0 :                 FatalError("Error deserializing 'uint64_t'");
    1626           0 :                 return MsgValueError;
    1627             :             }
    1628             :             // Sentinel = 'aEpoch'
    1629           1 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2333012390)))) {
    1630           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
    1631           0 :                 return MsgValueError;
    1632             :             }
    1633           1 :             if ((!(Read((&(aActive)), (&(msg__)), (&(iter__)))))) {
    1634           0 :                 FatalError("Error deserializing 'bool'");
    1635           0 :                 return MsgValueError;
    1636             :             }
    1637             :             // Sentinel = 'aActive'
    1638           1 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1215369048)))) {
    1639           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'bool'");
    1640           0 :                 return MsgValueError;
    1641             :             }
    1642           1 :             (msg__).EndRead(iter__, (msg__).type());
    1643           1 :             PCompositorBridge::Transition(PCompositorBridge::Msg_ObserveLayerUpdate__ID, (&(mState)));
    1644           1 :             if ((!(RecvObserveLayerUpdate(mozilla::Move(aLayersId), mozilla::Move(aEpoch), mozilla::Move(aActive))))) {
    1645           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1646             :                 // Error handled in mozilla::ipc::IPCResult
    1647           0 :                 return MsgProcessingError;
    1648             :             }
    1649             : 
    1650           1 :             return MsgProcessed;
    1651             :         }
    1652             :     case PCompositorBridge::Reply___delete____ID:
    1653             :         {
    1654           0 :             return MsgProcessed;
    1655             :         }
    1656             :     case PCompositorBridge::Reply_PCompositorWidgetConstructor__ID:
    1657             :         {
    1658           0 :             return MsgProcessed;
    1659             :         }
    1660             :     case PCompositorBridge::Reply_PAPZConstructor__ID:
    1661             :         {
    1662           0 :             return MsgProcessed;
    1663             :         }
    1664             :     case PCompositorBridge::Reply_PAPZCTreeManagerConstructor__ID:
    1665             :         {
    1666           0 :             return MsgProcessed;
    1667             :         }
    1668             :     case PCompositorBridge::Reply_PLayerTransactionConstructor__ID:
    1669             :         {
    1670           0 :             return MsgProcessed;
    1671             :         }
    1672             :     case PCompositorBridge::Reply_PTextureConstructor__ID:
    1673             :         {
    1674           0 :             return MsgProcessed;
    1675             :         }
    1676             :     case PCompositorBridge::Msg_SharedCompositorFrameMetrics__ID:
    1677             :         {
    1678           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1679           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1680             :             }
    1681           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_SharedCompositorFrameMetrics", OTHER);
    1682             : 
    1683           0 :             PickleIterator iter__(msg__);
    1684           0 :             Handle metrics;
    1685           0 :             CrossProcessMutexHandle mutex;
    1686             :             uint64_t aLayersId;
    1687             :             uint32_t aAPZCId;
    1688             : 
    1689           0 :             if ((!(Read((&(metrics)), (&(msg__)), (&(iter__)))))) {
    1690           0 :                 FatalError("Error deserializing 'Handle'");
    1691           0 :                 return MsgValueError;
    1692             :             }
    1693             :             // Sentinel = 'metrics'
    1694           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 293471184)))) {
    1695           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'Handle'");
    1696           0 :                 return MsgValueError;
    1697             :             }
    1698           0 :             if ((!(Read((&(mutex)), (&(msg__)), (&(iter__)))))) {
    1699           0 :                 FatalError("Error deserializing 'CrossProcessMutexHandle'");
    1700           0 :                 return MsgValueError;
    1701             :             }
    1702             :             // Sentinel = 'mutex'
    1703           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 4247164084)))) {
    1704           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'CrossProcessMutexHandle'");
    1705           0 :                 return MsgValueError;
    1706             :             }
    1707           0 :             if ((!(Read((&(aLayersId)), (&(msg__)), (&(iter__)))))) {
    1708           0 :                 FatalError("Error deserializing 'uint64_t'");
    1709           0 :                 return MsgValueError;
    1710             :             }
    1711             :             // Sentinel = 'aLayersId'
    1712           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1401196721)))) {
    1713           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
    1714           0 :                 return MsgValueError;
    1715             :             }
    1716           0 :             if ((!(Read((&(aAPZCId)), (&(msg__)), (&(iter__)))))) {
    1717           0 :                 FatalError("Error deserializing 'uint32_t'");
    1718           0 :                 return MsgValueError;
    1719             :             }
    1720             :             // Sentinel = 'aAPZCId'
    1721           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1661101435)))) {
    1722           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint32_t'");
    1723           0 :                 return MsgValueError;
    1724             :             }
    1725           0 :             (msg__).EndRead(iter__, (msg__).type());
    1726           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_SharedCompositorFrameMetrics__ID, (&(mState)));
    1727           0 :             if ((!(RecvSharedCompositorFrameMetrics(mozilla::Move(metrics), mozilla::Move(mutex), mozilla::Move(aLayersId), mozilla::Move(aAPZCId))))) {
    1728           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1729             :                 // Error handled in mozilla::ipc::IPCResult
    1730           0 :                 return MsgProcessingError;
    1731             :             }
    1732             : 
    1733           0 :             return MsgProcessed;
    1734             :         }
    1735             :     case PCompositorBridge::Msg_ReleaseSharedCompositorFrameMetrics__ID:
    1736             :         {
    1737           0 :             if (mozilla::ipc::LoggingEnabledFor("PCompositorBridgeChild")) {
    1738           0 :                 mozilla::ipc::LogMessageForProtocol("PCompositorBridgeChild", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
    1739             :             }
    1740           0 :             AUTO_PROFILER_LABEL("PCompositorBridge::Msg_ReleaseSharedCompositorFrameMetrics", OTHER);
    1741             : 
    1742           0 :             PickleIterator iter__(msg__);
    1743             :             ViewID aId;
    1744             :             uint32_t aAPZCId;
    1745             : 
    1746           0 :             if ((!(Read((&(aId)), (&(msg__)), (&(iter__)))))) {
    1747           0 :                 FatalError("Error deserializing 'ViewID'");
    1748           0 :                 return MsgValueError;
    1749             :             }
    1750             :             // Sentinel = 'aId'
    1751           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2735041817)))) {
    1752           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'ViewID'");
    1753           0 :                 return MsgValueError;
    1754             :             }
    1755           0 :             if ((!(Read((&(aAPZCId)), (&(msg__)), (&(iter__)))))) {
    1756           0 :                 FatalError("Error deserializing 'uint32_t'");
    1757           0 :                 return MsgValueError;
    1758             :             }
    1759             :             // Sentinel = 'aAPZCId'
    1760           0 :             if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1661101435)))) {
    1761           0 :                 mozilla::ipc::SentinelReadError("Error deserializing 'uint32_t'");
    1762           0 :                 return MsgValueError;
    1763             :             }
    1764           0 :             (msg__).EndRead(iter__, (msg__).type());
    1765           0 :             PCompositorBridge::Transition(PCompositorBridge::Msg_ReleaseSharedCompositorFrameMetrics__ID, (&(mState)));
    1766           0 :             if ((!(RecvReleaseSharedCompositorFrameMetrics(mozilla::Move(aId), mozilla::Move(aAPZCId))))) {
    1767           0 :                 mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
    1768             :                 // Error handled in mozilla::ipc::IPCResult
    1769           0 :                 return MsgProcessingError;
    1770             :             }
    1771             : 
    1772           0 :             return MsgProcessed;
    1773             :         }
    1774             :     default:
    1775             :         {
    1776           0 :             return MsgNotKnown;
    1777             :         }
    1778             :     }
    1779             : }
    1780             : 
    1781           0 : auto PCompositorBridgeChild::OnMessageReceived(
    1782             :         const Message& msg__,
    1783             :         Message*& reply__) -> PCompositorBridgeChild::Result
    1784             : {
    1785           0 :     return MsgNotKnown;
    1786             : }
    1787             : 
    1788           0 : auto PCompositorBridgeChild::OnCallReceived(
    1789             :         const Message& msg__,
    1790             :         Message*& reply__) -> PCompositorBridgeChild::Result
    1791             : {
    1792           0 :     MOZ_ASSERT_UNREACHABLE("message protocol not supported");
    1793             :     return MsgNotKnown;
    1794             : }
    1795             : 
    1796           0 : auto PCompositorBridgeChild::GetProtocolTypeId() -> int32_t
    1797             : {
    1798           0 :     return PCompositorBridgeMsgStart;
    1799             : }
    1800             : 
    1801           0 : auto PCompositorBridgeChild::ProtocolName() const -> const char*
    1802             : {
    1803           0 :     return "PCompositorBridgeChild";
    1804             : }
    1805             : 
    1806           0 : auto PCompositorBridgeChild::DestroySubtree(ActorDestroyReason why) -> void
    1807             : {
    1808             :     // Unregister from our manager.
    1809           0 :     Unregister(Id());
    1810             : 
    1811           0 :     ActorDestroyReason subtreewhy = (((why) == (Deletion)) || ((why) == (FailedConstructor)) ? AncestorDeletion : why);
    1812             : 
    1813             :     {
    1814             :         // Recursively shutting down PAPZ kids
    1815           0 :         nsTArray<PAPZChild*> kids;
    1816             :         // Accumulate kids into a stable structure to iterate over
    1817           0 :         ManagedPAPZChild(kids);
    1818           0 :         for (auto& kid : kids) {
    1819             :             // Guarding against a child removing a sibling from the list during the iteration.
    1820           0 :             if ((mManagedPAPZChild).Contains(kid)) {
    1821           0 :                 (kid)->DestroySubtree(subtreewhy);
    1822             :             }
    1823             :         }
    1824             :     }
    1825             :     {
    1826             :         // Recursively shutting down PAPZCTreeManager kids
    1827           0 :         nsTArray<PAPZCTreeManagerChild*> kids;
    1828             :         // Accumulate kids into a stable structure to iterate over
    1829           0 :         ManagedPAPZCTreeManagerChild(kids);
    1830           0 :         for (auto& kid : kids) {
    1831             :             // Guarding against a child removing a sibling from the list during the iteration.
    1832           0 :             if ((mManagedPAPZCTreeManagerChild).Contains(kid)) {
    1833           0 :                 (kid)->DestroySubtree(subtreewhy);
    1834             :             }
    1835             :         }
    1836             :     }
    1837             :     {
    1838             :         // Recursively shutting down PLayerTransaction kids
    1839           0 :         nsTArray<PLayerTransactionChild*> kids;
    1840             :         // Accumulate kids into a stable structure to iterate over
    1841           0 :         ManagedPLayerTransactionChild(kids);
    1842           0 :         for (auto& kid : kids) {
    1843             :             // Guarding against a child removing a sibling from the list during the iteration.
    1844           0 :             if ((mManagedPLayerTransactionChild).Contains(kid)) {
    1845           0 :                 (kid)->DestroySubtree(subtreewhy);
    1846             :             }
    1847             :         }
    1848             :     }
    1849             :     {
    1850             :         // Recursively shutting down PTexture kids
    1851           0 :         nsTArray<PTextureChild*> kids;
    1852             :         // Accumulate kids into a stable structure to iterate over
    1853           0 :         ManagedPTextureChild(kids);
    1854           0 :         for (auto& kid : kids) {
    1855             :             // Guarding against a child removing a sibling from the list during the iteration.
    1856           0 :             if ((mManagedPTextureChild).Contains(kid)) {
    1857           0 :                 (kid)->DestroySubtree(subtreewhy);
    1858             :             }
    1859             :         }
    1860             :     }
    1861             :     {
    1862             :         // Recursively shutting down PCompositorWidget kids
    1863           0 :         nsTArray<PCompositorWidgetChild*> kids;
    1864             :         // Accumulate kids into a stable structure to iterate over
    1865           0 :         ManagedPCompositorWidgetChild(kids);
    1866           0 :         for (auto& kid : kids) {
    1867             :             // Guarding against a child removing a sibling from the list during the iteration.
    1868           0 :             if ((mManagedPCompositorWidgetChild).Contains(kid)) {
    1869           0 :                 (kid)->DestroySubtree(subtreewhy);
    1870             :             }
    1871             :         }
    1872             :     }
    1873             :     {
    1874             :         // Recursively shutting down PWebRenderBridge kids
    1875           0 :         nsTArray<PWebRenderBridgeChild*> kids;
    1876             :         // Accumulate kids into a stable structure to iterate over
    1877           0 :         ManagedPWebRenderBridgeChild(kids);
    1878           0 :         for (auto& kid : kids) {
    1879             :             // Guarding against a child removing a sibling from the list during the iteration.
    1880           0 :             if ((mManagedPWebRenderBridgeChild).Contains(kid)) {
    1881           0 :                 (kid)->DestroySubtree(subtreewhy);
    1882             :             }
    1883             :         }
    1884             :     }
    1885             : 
    1886             :     // Reject owning pending promises.
    1887           0 :     (GetIPCChannel())->RejectPendingPromisesForActor(this);
    1888             : 
    1889             :     // Finally, destroy "us".
    1890           0 :     ActorDestroy(why);
    1891           0 : }
    1892             : 
    1893           0 : auto PCompositorBridgeChild::DeallocSubtree() -> void
    1894             : {
    1895             :     {
    1896             :         // Recursively deleting PAPZ kids
    1897           0 :         for (auto iter = (mManagedPAPZChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1898           0 :             (((iter).Get())->GetKey())->DeallocSubtree();
    1899             :         }
    1900             : 
    1901           0 :         for (auto iter = (mManagedPAPZChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1902           0 :             DeallocPAPZChild(((iter).Get())->GetKey());
    1903             :         }
    1904           0 :         (mManagedPAPZChild).Clear();
    1905             :     }
    1906             :     {
    1907             :         // Recursively deleting PAPZCTreeManager kids
    1908           0 :         for (auto iter = (mManagedPAPZCTreeManagerChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1909           0 :             (((iter).Get())->GetKey())->DeallocSubtree();
    1910             :         }
    1911             : 
    1912           0 :         for (auto iter = (mManagedPAPZCTreeManagerChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1913           0 :             DeallocPAPZCTreeManagerChild(((iter).Get())->GetKey());
    1914             :         }
    1915           0 :         (mManagedPAPZCTreeManagerChild).Clear();
    1916             :     }
    1917             :     {
    1918             :         // Recursively deleting PLayerTransaction kids
    1919           0 :         for (auto iter = (mManagedPLayerTransactionChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1920           0 :             (((iter).Get())->GetKey())->DeallocSubtree();
    1921             :         }
    1922             : 
    1923           0 :         for (auto iter = (mManagedPLayerTransactionChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1924           0 :             DeallocPLayerTransactionChild(((iter).Get())->GetKey());
    1925             :         }
    1926           0 :         (mManagedPLayerTransactionChild).Clear();
    1927             :     }
    1928             :     {
    1929             :         // Recursively deleting PTexture kids
    1930           0 :         for (auto iter = (mManagedPTextureChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1931           0 :             (((iter).Get())->GetKey())->DeallocSubtree();
    1932             :         }
    1933             : 
    1934           0 :         for (auto iter = (mManagedPTextureChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1935           0 :             DeallocPTextureChild(((iter).Get())->GetKey());
    1936             :         }
    1937           0 :         (mManagedPTextureChild).Clear();
    1938             :     }
    1939             :     {
    1940             :         // Recursively deleting PCompositorWidget kids
    1941           0 :         for (auto iter = (mManagedPCompositorWidgetChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1942           0 :             (((iter).Get())->GetKey())->DeallocSubtree();
    1943             :         }
    1944             : 
    1945           0 :         for (auto iter = (mManagedPCompositorWidgetChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1946           0 :             DeallocPCompositorWidgetChild(((iter).Get())->GetKey());
    1947             :         }
    1948           0 :         (mManagedPCompositorWidgetChild).Clear();
    1949             :     }
    1950             :     {
    1951             :         // Recursively deleting PWebRenderBridge kids
    1952           0 :         for (auto iter = (mManagedPWebRenderBridgeChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1953           0 :             (((iter).Get())->GetKey())->DeallocSubtree();
    1954             :         }
    1955             : 
    1956           0 :         for (auto iter = (mManagedPWebRenderBridgeChild).Iter(); (!((iter).Done())); (iter).Next()) {
    1957           0 :             DeallocPWebRenderBridgeChild(((iter).Get())->GetKey());
    1958             :         }
    1959           0 :         (mManagedPWebRenderBridgeChild).Clear();
    1960             :     }
    1961           0 : }
    1962             : 
    1963           9 : auto PCompositorBridgeChild::Write(
    1964             :         const SurfaceDescriptor& v__,
    1965             :         Message* msg__) -> void
    1966             : {
    1967             :     typedef SurfaceDescriptor type__;
    1968           9 :     Write(int((v__).type()), msg__);
    1969             :     // Sentinel = 'SurfaceDescriptor'
    1970           9 :     (msg__)->WriteSentinel(1058499359);
    1971             : 
    1972           9 :     switch ((v__).type()) {
    1973             :     case type__::TSurfaceDescriptorBuffer:
    1974             :         {
    1975           9 :             Write((v__).get_SurfaceDescriptorBuffer(), msg__);
    1976             :             // Sentinel = 'TSurfaceDescriptorBuffer'
    1977           9 :             (msg__)->WriteSentinel(2202696360);
    1978           9 :             return;
    1979             :         }
    1980             :     case type__::TSurfaceDescriptorDIB:
    1981             :         {
    1982           0 :             Write((v__).get_SurfaceDescriptorDIB(), msg__);
    1983             :             // Sentinel = 'TSurfaceDescriptorDIB'
    1984           0 :             (msg__)->WriteSentinel(998410538);
    1985           0 :             return;
    1986             :         }
    1987             :     case type__::TSurfaceDescriptorD3D10:
    1988             :         {
    1989           0 :             Write((v__).get_SurfaceDescriptorD3D10(), msg__);
    1990             :             // Sentinel = 'TSurfaceDescriptorD3D10'
    1991           0 :             (msg__)->WriteSentinel(2753564567);
    1992           0 :             return;
    1993             :         }
    1994             :     case type__::TSurfaceDescriptorFileMapping:
    1995             :         {
    1996           0 :             Write((v__).get_SurfaceDescriptorFileMapping(), msg__);
    1997             :             // Sentinel = 'TSurfaceDescriptorFileMapping'
    1998           0 :             (msg__)->WriteSentinel(722196935);
    1999           0 :             return;
    2000             :         }
    2001             :     case type__::TSurfaceDescriptorDXGIYCbCr:
    2002             :         {
    2003           0 :             Write((v__).get_SurfaceDescriptorDXGIYCbCr(), msg__);
    2004             :             // Sentinel = 'TSurfaceDescriptorDXGIYCbCr'
    2005           0 :             (msg__)->WriteSentinel(3061212892);
    2006           0 :             return;
    2007             :         }
    2008             :     case type__::TSurfaceDescriptorX11:
    2009             :         {
    2010           0 :             Write((v__).get_SurfaceDescriptorX11(), msg__);
    2011             :             // Sentinel = 'TSurfaceDescriptorX11'
    2012           0 :             (msg__)->WriteSentinel(3923930613);
    2013           0 :             return;
    2014             :         }
    2015             :     case type__::TSurfaceTextureDescriptor:
    2016             :         {
    2017           0 :             Write((v__).get_SurfaceTextureDescriptor(), msg__);
    2018             :             // Sentinel = 'TSurfaceTextureDescriptor'
    2019           0 :             (msg__)->WriteSentinel(2253946800);
    2020           0 :             return;
    2021             :         }
    2022             :     case type__::TEGLImageDescriptor:
    2023             :         {
    2024           0 :             Write((v__).get_EGLImageDescriptor(), msg__);
    2025             :             // Sentinel = 'TEGLImageDescriptor'
    2026           0 :             (msg__)->WriteSentinel(2680446099);
    2027           0 :             return;
    2028             :         }
    2029             :     case type__::TSurfaceDescriptorMacIOSurface:
    2030             :         {
    2031           0 :             Write((v__).get_SurfaceDescriptorMacIOSurface(), msg__);
    2032             :             // Sentinel = 'TSurfaceDescriptorMacIOSurface'
    2033           0 :             (msg__)->WriteSentinel(4267688786);
    2034           0 :             return;
    2035             :         }
    2036             :     case type__::TSurfaceDescriptorSharedGLTexture:
    2037             :         {
    2038           0 :             Write((v__).get_SurfaceDescriptorSharedGLTexture(), msg__);
    2039             :             // Sentinel = 'TSurfaceDescriptorSharedGLTexture'
    2040           0 :             (msg__)->WriteSentinel(4169514976);
    2041           0 :             return;
    2042             :         }
    2043             :     case type__::TSurfaceDescriptorGPUVideo:
    2044             :         {
    2045           0 :             Write((v__).get_SurfaceDescriptorGPUVideo(), msg__);
    2046             :             // Sentinel = 'TSurfaceDescriptorGPUVideo'
    2047           0 :             (msg__)->WriteSentinel(2406892431);
    2048           0 :             return;
    2049             :         }
    2050             :     case type__::Tnull_t:
    2051             :         {
    2052           0 :             Write((v__).get_null_t(), msg__);
    2053             :             // Sentinel = 'Tnull_t'
    2054           0 :             (msg__)->WriteSentinel(3731137201);
    2055           0 :             return;
    2056             :         }
    2057             :     default:
    2058             :         {
    2059           0 :             FatalError("unknown union type");
    2060           0 :             return;
    2061             :         }
    2062             :     }
    2063             : }
    2064             : 
    2065           0 : auto PCompositorBridgeChild::Read(
    2066             :         SurfaceDescriptor* v__,
    2067             :         const Message* msg__,
    2068             :         PickleIterator* iter__) -> bool
    2069             : {
    2070             :     typedef SurfaceDescriptor type__;
    2071             :     int type;
    2072           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    2073           0 :         mozilla::ipc::UnionTypeReadError("SurfaceDescriptor");
    2074           0 :         return false;
    2075             :     }
    2076             :     // Sentinel = 'SurfaceDescriptor'
    2077           0 :     if ((!((msg__)->ReadSentinel(iter__, 1058499359)))) {
    2078           0 :         mozilla::ipc::SentinelReadError("SurfaceDescriptor");
    2079           0 :         return false;
    2080             :     }
    2081             : 
    2082           0 :     switch (type) {
    2083             :     case type__::TSurfaceDescriptorBuffer:
    2084             :         {
    2085           0 :             SurfaceDescriptorBuffer tmp = SurfaceDescriptorBuffer();
    2086           0 :             (*(v__)) = tmp;
    2087           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorBuffer())), msg__, iter__)))) {
    2088           0 :                 FatalError("Error deserializing Union type");
    2089           0 :                 return false;
    2090             :             }
    2091             :             // Sentinel = 'TSurfaceDescriptorBuffer'
    2092           0 :             if ((!((msg__)->ReadSentinel(iter__, 2202696360)))) {
    2093           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2094           0 :                 return false;
    2095             :             }
    2096           0 :             return true;
    2097             :         }
    2098             :     case type__::TSurfaceDescriptorDIB:
    2099             :         {
    2100           0 :             SurfaceDescriptorDIB tmp = SurfaceDescriptorDIB();
    2101           0 :             (*(v__)) = tmp;
    2102           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorDIB())), msg__, iter__)))) {
    2103           0 :                 FatalError("Error deserializing Union type");
    2104           0 :                 return false;
    2105             :             }
    2106             :             // Sentinel = 'TSurfaceDescriptorDIB'
    2107           0 :             if ((!((msg__)->ReadSentinel(iter__, 998410538)))) {
    2108           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2109           0 :                 return false;
    2110             :             }
    2111           0 :             return true;
    2112             :         }
    2113             :     case type__::TSurfaceDescriptorD3D10:
    2114             :         {
    2115           0 :             SurfaceDescriptorD3D10 tmp = SurfaceDescriptorD3D10();
    2116           0 :             (*(v__)) = tmp;
    2117           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorD3D10())), msg__, iter__)))) {
    2118           0 :                 FatalError("Error deserializing Union type");
    2119           0 :                 return false;
    2120             :             }
    2121             :             // Sentinel = 'TSurfaceDescriptorD3D10'
    2122           0 :             if ((!((msg__)->ReadSentinel(iter__, 2753564567)))) {
    2123           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2124           0 :                 return false;
    2125             :             }
    2126           0 :             return true;
    2127             :         }
    2128             :     case type__::TSurfaceDescriptorFileMapping:
    2129             :         {
    2130           0 :             SurfaceDescriptorFileMapping tmp = SurfaceDescriptorFileMapping();
    2131           0 :             (*(v__)) = tmp;
    2132           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorFileMapping())), msg__, iter__)))) {
    2133           0 :                 FatalError("Error deserializing Union type");
    2134           0 :                 return false;
    2135             :             }
    2136             :             // Sentinel = 'TSurfaceDescriptorFileMapping'
    2137           0 :             if ((!((msg__)->ReadSentinel(iter__, 722196935)))) {
    2138           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2139           0 :                 return false;
    2140             :             }
    2141           0 :             return true;
    2142             :         }
    2143             :     case type__::TSurfaceDescriptorDXGIYCbCr:
    2144             :         {
    2145           0 :             SurfaceDescriptorDXGIYCbCr tmp = SurfaceDescriptorDXGIYCbCr();
    2146           0 :             (*(v__)) = tmp;
    2147           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorDXGIYCbCr())), msg__, iter__)))) {
    2148           0 :                 FatalError("Error deserializing Union type");
    2149           0 :                 return false;
    2150             :             }
    2151             :             // Sentinel = 'TSurfaceDescriptorDXGIYCbCr'
    2152           0 :             if ((!((msg__)->ReadSentinel(iter__, 3061212892)))) {
    2153           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2154           0 :                 return false;
    2155             :             }
    2156           0 :             return true;
    2157             :         }
    2158             :     case type__::TSurfaceDescriptorX11:
    2159             :         {
    2160           0 :             SurfaceDescriptorX11 tmp = SurfaceDescriptorX11();
    2161           0 :             (*(v__)) = tmp;
    2162           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorX11())), msg__, iter__)))) {
    2163           0 :                 FatalError("Error deserializing Union type");
    2164           0 :                 return false;
    2165             :             }
    2166             :             // Sentinel = 'TSurfaceDescriptorX11'
    2167           0 :             if ((!((msg__)->ReadSentinel(iter__, 3923930613)))) {
    2168           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2169           0 :                 return false;
    2170             :             }
    2171           0 :             return true;
    2172             :         }
    2173             :     case type__::TSurfaceTextureDescriptor:
    2174             :         {
    2175           0 :             SurfaceTextureDescriptor tmp = SurfaceTextureDescriptor();
    2176           0 :             (*(v__)) = tmp;
    2177           0 :             if ((!(Read((&((v__)->get_SurfaceTextureDescriptor())), msg__, iter__)))) {
    2178           0 :                 FatalError("Error deserializing Union type");
    2179           0 :                 return false;
    2180             :             }
    2181             :             // Sentinel = 'TSurfaceTextureDescriptor'
    2182           0 :             if ((!((msg__)->ReadSentinel(iter__, 2253946800)))) {
    2183           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2184           0 :                 return false;
    2185             :             }
    2186           0 :             return true;
    2187             :         }
    2188             :     case type__::TEGLImageDescriptor:
    2189             :         {
    2190           0 :             EGLImageDescriptor tmp = EGLImageDescriptor();
    2191           0 :             (*(v__)) = tmp;
    2192           0 :             if ((!(Read((&((v__)->get_EGLImageDescriptor())), msg__, iter__)))) {
    2193           0 :                 FatalError("Error deserializing Union type");
    2194           0 :                 return false;
    2195             :             }
    2196             :             // Sentinel = 'TEGLImageDescriptor'
    2197           0 :             if ((!((msg__)->ReadSentinel(iter__, 2680446099)))) {
    2198           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2199           0 :                 return false;
    2200             :             }
    2201           0 :             return true;
    2202             :         }
    2203             :     case type__::TSurfaceDescriptorMacIOSurface:
    2204             :         {
    2205           0 :             SurfaceDescriptorMacIOSurface tmp = SurfaceDescriptorMacIOSurface();
    2206           0 :             (*(v__)) = tmp;
    2207           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorMacIOSurface())), msg__, iter__)))) {
    2208           0 :                 FatalError("Error deserializing Union type");
    2209           0 :                 return false;
    2210             :             }
    2211             :             // Sentinel = 'TSurfaceDescriptorMacIOSurface'
    2212           0 :             if ((!((msg__)->ReadSentinel(iter__, 4267688786)))) {
    2213           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2214           0 :                 return false;
    2215             :             }
    2216           0 :             return true;
    2217             :         }
    2218             :     case type__::TSurfaceDescriptorSharedGLTexture:
    2219             :         {
    2220           0 :             SurfaceDescriptorSharedGLTexture tmp = SurfaceDescriptorSharedGLTexture();
    2221           0 :             (*(v__)) = tmp;
    2222           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorSharedGLTexture())), msg__, iter__)))) {
    2223           0 :                 FatalError("Error deserializing Union type");
    2224           0 :                 return false;
    2225             :             }
    2226             :             // Sentinel = 'TSurfaceDescriptorSharedGLTexture'
    2227           0 :             if ((!((msg__)->ReadSentinel(iter__, 4169514976)))) {
    2228           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2229           0 :                 return false;
    2230             :             }
    2231           0 :             return true;
    2232             :         }
    2233             :     case type__::TSurfaceDescriptorGPUVideo:
    2234             :         {
    2235           0 :             SurfaceDescriptorGPUVideo tmp = SurfaceDescriptorGPUVideo();
    2236           0 :             (*(v__)) = tmp;
    2237           0 :             if ((!(Read((&((v__)->get_SurfaceDescriptorGPUVideo())), msg__, iter__)))) {
    2238           0 :                 FatalError("Error deserializing Union type");
    2239           0 :                 return false;
    2240             :             }
    2241             :             // Sentinel = 'TSurfaceDescriptorGPUVideo'
    2242           0 :             if ((!((msg__)->ReadSentinel(iter__, 2406892431)))) {
    2243           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2244           0 :                 return false;
    2245             :             }
    2246           0 :             return true;
    2247             :         }
    2248             :     case type__::Tnull_t:
    2249             :         {
    2250             :             null_t tmp = null_t();
    2251           0 :             (*(v__)) = tmp;
    2252           0 :             if ((!(Read((&((v__)->get_null_t())), msg__, iter__)))) {
    2253           0 :                 FatalError("Error deserializing Union type");
    2254           0 :                 return false;
    2255             :             }
    2256             :             // Sentinel = 'Tnull_t'
    2257           0 :             if ((!((msg__)->ReadSentinel(iter__, 3731137201)))) {
    2258           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2259           0 :                 return false;
    2260             :             }
    2261           0 :             return true;
    2262             :         }
    2263             :     default:
    2264             :         {
    2265           0 :             FatalError("unknown union type");
    2266           0 :             return false;
    2267             :         }
    2268             :     }
    2269             : }
    2270             : 
    2271           1 : auto PCompositorBridgeChild::Write(
    2272             :         const PAPZChild* v__,
    2273             :         Message* msg__,
    2274             :         bool nullable__) -> void
    2275             : {
    2276             :     int32_t id;
    2277           1 :     if ((!(v__))) {
    2278           0 :         if ((!(nullable__))) {
    2279           0 :             FatalError("NULL actor value passed to non-nullable param");
    2280             :         }
    2281           0 :         id = 0;
    2282             :     }
    2283             :     else {
    2284           1 :         id = (v__)->Id();
    2285           1 :         if ((1) == (id)) {
    2286           0 :             FatalError("actor has been |delete|d");
    2287             :         }
    2288             :     }
    2289             : 
    2290           1 :     Write(id, msg__);
    2291           1 : }
    2292             : 
    2293           0 : auto PCompositorBridgeChild::Read(
    2294             :         PAPZChild** v__,
    2295             :         const Message* msg__,
    2296             :         PickleIterator* iter__,
    2297             :         bool nullable__) -> bool
    2298             : {
    2299           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PAPZ", PAPZMsgStart);
    2300           0 :     if ((actor).isNothing()) {
    2301           0 :         return false;
    2302             :     }
    2303             : 
    2304           0 :     (*(v__)) = static_cast<PAPZChild*>((actor).value());
    2305           0 :     return true;
    2306             : }
    2307             : 
    2308           0 : auto PCompositorBridgeChild::Write(
    2309             :         const nsTArray<PluginWindowData>& v__,
    2310             :         Message* msg__) -> void
    2311             : {
    2312           0 :     uint32_t length = (v__).Length();
    2313           0 :     Write(length, msg__);
    2314             :     // Sentinel = ('length', 'PluginWindowData[]')
    2315           0 :     (msg__)->WriteSentinel(3757363184);
    2316             : 
    2317           0 :     for (auto& elem : v__) {
    2318           0 :         Write(elem, msg__);
    2319             :         // Sentinel = 'PluginWindowData[]'
    2320           0 :         (msg__)->WriteSentinel(3814367271);
    2321             :     }
    2322           0 : }
    2323             : 
    2324           0 : auto PCompositorBridgeChild::Read(
    2325             :         nsTArray<PluginWindowData>* v__,
    2326             :         const Message* msg__,
    2327             :         PickleIterator* iter__) -> bool
    2328             : {
    2329           0 :     nsTArray<PluginWindowData> fa;
    2330             :     uint32_t length;
    2331           0 :     if ((!(Read((&(length)), msg__, iter__)))) {
    2332           0 :         mozilla::ipc::ArrayLengthReadError("PluginWindowData[]");
    2333           0 :         return false;
    2334             :     }
    2335             :     // Sentinel = ('length', 'PluginWindowData[]')
    2336           0 :     if ((!((msg__)->ReadSentinel(iter__, 3757363184)))) {
    2337           0 :         mozilla::ipc::SentinelReadError("PluginWindowData[]");
    2338           0 :         return false;
    2339             :     }
    2340             : 
    2341           0 :     PluginWindowData* elems = (fa).AppendElements(length);
    2342           0 :     for (uint32_t i = 0; (i) < (length); (++(i))) {
    2343           0 :         if ((!(Read((&(elems[i])), msg__, iter__)))) {
    2344           0 :             FatalError("Error deserializing 'PluginWindowData[i]'");
    2345           0 :             return false;
    2346             :         }
    2347             :         // Sentinel = 'PluginWindowData[]'
    2348           0 :         if ((!((msg__)->ReadSentinel(iter__, 3814367271)))) {
    2349           0 :             mozilla::ipc::SentinelReadError("Error deserializing 'PluginWindowData[i]'");
    2350           0 :             return false;
    2351             :         }
    2352             :     }
    2353           0 :     (v__)->SwapElements(fa);
    2354           0 :     return true;
    2355             : }
    2356             : 
    2357           0 : auto PCompositorBridgeChild::Write(
    2358             :         const PCompositorWidgetChild* v__,
    2359             :         Message* msg__,
    2360             :         bool nullable__) -> void
    2361             : {
    2362             :     int32_t id;
    2363           0 :     if ((!(v__))) {
    2364           0 :         if ((!(nullable__))) {
    2365           0 :             FatalError("NULL actor value passed to non-nullable param");
    2366             :         }
    2367           0 :         id = 0;
    2368             :     }
    2369             :     else {
    2370           0 :         id = (v__)->Id();
    2371           0 :         if ((1) == (id)) {
    2372           0 :             FatalError("actor has been |delete|d");
    2373             :         }
    2374             :     }
    2375             : 
    2376           0 :     Write(id, msg__);
    2377           0 : }
    2378             : 
    2379           0 : auto PCompositorBridgeChild::Read(
    2380             :         PCompositorWidgetChild** v__,
    2381             :         const Message* msg__,
    2382             :         PickleIterator* iter__,
    2383             :         bool nullable__) -> bool
    2384             : {
    2385           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PCompositorWidget", PCompositorWidgetMsgStart);
    2386           0 :     if ((actor).isNothing()) {
    2387           0 :         return false;
    2388             :     }
    2389             : 
    2390           0 :     (*(v__)) = static_cast<PCompositorWidgetChild*>((actor).value());
    2391           0 :     return true;
    2392             : }
    2393             : 
    2394           0 : auto PCompositorBridgeChild::Write(
    2395             :         const PCompositorBridgeChild* v__,
    2396             :         Message* msg__,
    2397             :         bool nullable__) -> void
    2398             : {
    2399             :     int32_t id;
    2400           0 :     if ((!(v__))) {
    2401           0 :         if ((!(nullable__))) {
    2402           0 :             FatalError("NULL actor value passed to non-nullable param");
    2403             :         }
    2404           0 :         id = 0;
    2405             :     }
    2406             :     else {
    2407           0 :         id = (v__)->Id();
    2408           0 :         if ((1) == (id)) {
    2409           0 :             FatalError("actor has been |delete|d");
    2410             :         }
    2411             :     }
    2412             : 
    2413           0 :     Write(id, msg__);
    2414           0 : }
    2415             : 
    2416           0 : auto PCompositorBridgeChild::Read(
    2417             :         PCompositorBridgeChild** v__,
    2418             :         const Message* msg__,
    2419             :         PickleIterator* iter__,
    2420             :         bool nullable__) -> bool
    2421             : {
    2422           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PCompositorBridge", PCompositorBridgeMsgStart);
    2423           0 :     if ((actor).isNothing()) {
    2424           0 :         return false;
    2425             :     }
    2426             : 
    2427           0 :     (*(v__)) = static_cast<PCompositorBridgeChild*>((actor).value());
    2428           0 :     return true;
    2429             : }
    2430             : 
    2431           1 : auto PCompositorBridgeChild::Write(
    2432             :         const PAPZCTreeManagerChild* v__,
    2433             :         Message* msg__,
    2434             :         bool nullable__) -> void
    2435             : {
    2436             :     int32_t id;
    2437           1 :     if ((!(v__))) {
    2438           0 :         if ((!(nullable__))) {
    2439           0 :             FatalError("NULL actor value passed to non-nullable param");
    2440             :         }
    2441           0 :         id = 0;
    2442             :     }
    2443             :     else {
    2444           1 :         id = (v__)->Id();
    2445           1 :         if ((1) == (id)) {
    2446           0 :             FatalError("actor has been |delete|d");
    2447             :         }
    2448             :     }
    2449             : 
    2450           1 :     Write(id, msg__);
    2451           1 : }
    2452             : 
    2453           0 : auto PCompositorBridgeChild::Read(
    2454             :         PAPZCTreeManagerChild** v__,
    2455             :         const Message* msg__,
    2456             :         PickleIterator* iter__,
    2457             :         bool nullable__) -> bool
    2458             : {
    2459           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PAPZCTreeManager", PAPZCTreeManagerMsgStart);
    2460           0 :     if ((actor).isNothing()) {
    2461           0 :         return false;
    2462             :     }
    2463             : 
    2464           0 :     (*(v__)) = static_cast<PAPZCTreeManagerChild*>((actor).value());
    2465           0 :     return true;
    2466             : }
    2467             : 
    2468           1 : auto PCompositorBridgeChild::Write(
    2469             :         Shmem& v__,
    2470             :         Message* msg__) -> void
    2471             : {
    2472           1 :     IPC::WriteParam(msg__, v__);
    2473           1 :     (v__).RevokeRights(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
    2474           1 :     (v__).forget(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
    2475           1 : }
    2476             : 
    2477           0 : auto PCompositorBridgeChild::Read(
    2478             :         Shmem* v__,
    2479             :         const Message* msg__,
    2480             :         PickleIterator* iter__) -> bool
    2481             : {
    2482           0 :     Shmem tmp;
    2483           0 :     if ((!(IPC::ReadParam(msg__, iter__, (&(tmp)))))) {
    2484           0 :         return false;
    2485             :     }
    2486             : 
    2487           0 :     Shmem::id_t shmemid = (tmp).Id(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
    2488           0 :     Shmem::SharedMemory* rawmem = LookupSharedMemory(shmemid);
    2489           0 :     if (rawmem) {
    2490           0 :         (*(v__)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), rawmem, shmemid);
    2491           0 :         return true;
    2492             :     }
    2493           0 :     (*(v__)) = Shmem();
    2494           0 :     return true;
    2495             : }
    2496             : 
    2497           0 : auto PCompositorBridgeChild::Write(
    2498             :         const AsyncParentMessageData& v__,
    2499             :         Message* msg__) -> void
    2500             : {
    2501             :     typedef AsyncParentMessageData type__;
    2502           0 :     Write(int((v__).type()), msg__);
    2503             :     // Sentinel = 'AsyncParentMessageData'
    2504           0 :     (msg__)->WriteSentinel(3809282103);
    2505             : 
    2506           0 :     switch ((v__).type()) {
    2507             :     case type__::TOpNotifyNotUsed:
    2508             :         {
    2509           0 :             Write((v__).get_OpNotifyNotUsed(), msg__);
    2510             :             // Sentinel = 'TOpNotifyNotUsed'
    2511           0 :             (msg__)->WriteSentinel(2920493638);
    2512           0 :             return;
    2513             :         }
    2514             :     default:
    2515             :         {
    2516           0 :             FatalError("unknown union type");
    2517           0 :             return;
    2518             :         }
    2519             :     }
    2520             : }
    2521             : 
    2522           0 : auto PCompositorBridgeChild::Read(
    2523             :         AsyncParentMessageData* v__,
    2524             :         const Message* msg__,
    2525             :         PickleIterator* iter__) -> bool
    2526             : {
    2527             :     typedef AsyncParentMessageData type__;
    2528             :     int type;
    2529           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    2530           0 :         mozilla::ipc::UnionTypeReadError("AsyncParentMessageData");
    2531           0 :         return false;
    2532             :     }
    2533             :     // Sentinel = 'AsyncParentMessageData'
    2534           0 :     if ((!((msg__)->ReadSentinel(iter__, 3809282103)))) {
    2535           0 :         mozilla::ipc::SentinelReadError("AsyncParentMessageData");
    2536           0 :         return false;
    2537             :     }
    2538             : 
    2539           0 :     switch (type) {
    2540             :     case type__::TOpNotifyNotUsed:
    2541             :         {
    2542           0 :             OpNotifyNotUsed tmp = OpNotifyNotUsed();
    2543           0 :             (*(v__)) = tmp;
    2544           0 :             if ((!(Read((&((v__)->get_OpNotifyNotUsed())), msg__, iter__)))) {
    2545           0 :                 FatalError("Error deserializing Union type");
    2546           0 :                 return false;
    2547             :             }
    2548             :             // Sentinel = 'TOpNotifyNotUsed'
    2549           0 :             if ((!((msg__)->ReadSentinel(iter__, 2920493638)))) {
    2550           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    2551           0 :                 return false;
    2552             :             }
    2553           0 :             return true;
    2554             :         }
    2555             :     default:
    2556             :         {
    2557           0 :             FatalError("unknown union type");
    2558           0 :             return false;
    2559             :         }
    2560             :     }
    2561             : }
    2562             : 
    2563           9 : auto PCompositorBridgeChild::Write(
    2564             :         const SurfaceDescriptorBuffer& v__,
    2565             :         Message* msg__) -> void
    2566             : {
    2567           9 :     Write((v__).desc(), msg__);
    2568             :     // Sentinel = 'desc'
    2569           9 :     (msg__)->WriteSentinel(3761872479);
    2570           9 :     Write((v__).data(), msg__);
    2571             :     // Sentinel = 'data'
    2572           9 :     (msg__)->WriteSentinel(843352540);
    2573           9 : }
    2574             : 
    2575           0 : auto PCompositorBridgeChild::Read(
    2576             :         SurfaceDescriptorBuffer* v__,
    2577             :         const Message* msg__,
    2578             :         PickleIterator* iter__) -> bool
    2579             : {
    2580           0 :     if ((!(Read((&((v__)->desc())), msg__, iter__)))) {
    2581           0 :         FatalError("Error deserializing 'desc' (BufferDescriptor) member of 'SurfaceDescriptorBuffer'");
    2582           0 :         return false;
    2583             :     }
    2584             :     // Sentinel = 'desc'
    2585           0 :     if ((!((msg__)->ReadSentinel(iter__, 3761872479)))) {
    2586           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'desc' (BufferDescriptor) member of 'SurfaceDescriptorBuffer'");
    2587           0 :         return false;
    2588             :     }
    2589           0 :     if ((!(Read((&((v__)->data())), msg__, iter__)))) {
    2590           0 :         FatalError("Error deserializing 'data' (MemoryOrShmem) member of 'SurfaceDescriptorBuffer'");
    2591           0 :         return false;
    2592             :     }
    2593             :     // Sentinel = 'data'
    2594           0 :     if ((!((msg__)->ReadSentinel(iter__, 843352540)))) {
    2595           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'data' (MemoryOrShmem) member of 'SurfaceDescriptorBuffer'");
    2596           0 :         return false;
    2597             :     }
    2598           0 :     return true;
    2599             : }
    2600             : 
    2601           0 : auto PCompositorBridgeChild::Write(
    2602             :         const YCbCrDescriptor& v__,
    2603             :         Message* msg__) -> void
    2604             : {
    2605           0 :     Write((v__).ySize(), msg__);
    2606             :     // Sentinel = 'ySize'
    2607           0 :     (msg__)->WriteSentinel(313512843);
    2608           0 :     Write((v__).cbCrSize(), msg__);
    2609             :     // Sentinel = 'cbCrSize'
    2610           0 :     (msg__)->WriteSentinel(2601117167);
    2611           0 :     Write((v__).yOffset(), msg__);
    2612             :     // Sentinel = 'yOffset'
    2613           0 :     (msg__)->WriteSentinel(983795183);
    2614           0 :     Write((v__).cbOffset(), msg__);
    2615             :     // Sentinel = 'cbOffset'
    2616           0 :     (msg__)->WriteSentinel(4197159602);
    2617           0 :     Write((v__).crOffset(), msg__);
    2618             :     // Sentinel = 'crOffset'
    2619           0 :     (msg__)->WriteSentinel(1739681986);
    2620           0 :     Write((v__).stereoMode(), msg__);
    2621             :     // Sentinel = 'stereoMode'
    2622           0 :     (msg__)->WriteSentinel(2234072623);
    2623           0 :     Write((v__).yUVColorSpace(), msg__);
    2624             :     // Sentinel = 'yUVColorSpace'
    2625           0 :     (msg__)->WriteSentinel(1051398544);
    2626           0 :     Write((v__).hasIntermediateBuffer(), msg__);
    2627             :     // Sentinel = 'hasIntermediateBuffer'
    2628           0 :     (msg__)->WriteSentinel(985857996);
    2629           0 : }
    2630             : 
    2631           0 : auto PCompositorBridgeChild::Read(
    2632             :         YCbCrDescriptor* v__,
    2633             :         const Message* msg__,
    2634             :         PickleIterator* iter__) -> bool
    2635             : {
    2636           0 :     if ((!(Read((&((v__)->ySize())), msg__, iter__)))) {
    2637           0 :         FatalError("Error deserializing 'ySize' (IntSize) member of 'YCbCrDescriptor'");
    2638           0 :         return false;
    2639             :     }
    2640             :     // Sentinel = 'ySize'
    2641           0 :     if ((!((msg__)->ReadSentinel(iter__, 313512843)))) {
    2642           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'ySize' (IntSize) member of 'YCbCrDescriptor'");
    2643           0 :         return false;
    2644             :     }
    2645           0 :     if ((!(Read((&((v__)->cbCrSize())), msg__, iter__)))) {
    2646           0 :         FatalError("Error deserializing 'cbCrSize' (IntSize) member of 'YCbCrDescriptor'");
    2647           0 :         return false;
    2648             :     }
    2649             :     // Sentinel = 'cbCrSize'
    2650           0 :     if ((!((msg__)->ReadSentinel(iter__, 2601117167)))) {
    2651           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'cbCrSize' (IntSize) member of 'YCbCrDescriptor'");
    2652           0 :         return false;
    2653             :     }
    2654           0 :     if ((!(Read((&((v__)->yOffset())), msg__, iter__)))) {
    2655           0 :         FatalError("Error deserializing 'yOffset' (uint32_t) member of 'YCbCrDescriptor'");
    2656           0 :         return false;
    2657             :     }
    2658             :     // Sentinel = 'yOffset'
    2659           0 :     if ((!((msg__)->ReadSentinel(iter__, 983795183)))) {
    2660           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'yOffset' (uint32_t) member of 'YCbCrDescriptor'");
    2661           0 :         return false;
    2662             :     }
    2663           0 :     if ((!(Read((&((v__)->cbOffset())), msg__, iter__)))) {
    2664           0 :         FatalError("Error deserializing 'cbOffset' (uint32_t) member of 'YCbCrDescriptor'");
    2665           0 :         return false;
    2666             :     }
    2667             :     // Sentinel = 'cbOffset'
    2668           0 :     if ((!((msg__)->ReadSentinel(iter__, 4197159602)))) {
    2669           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'cbOffset' (uint32_t) member of 'YCbCrDescriptor'");
    2670           0 :         return false;
    2671             :     }
    2672           0 :     if ((!(Read((&((v__)->crOffset())), msg__, iter__)))) {
    2673           0 :         FatalError("Error deserializing 'crOffset' (uint32_t) member of 'YCbCrDescriptor'");
    2674           0 :         return false;
    2675             :     }
    2676             :     // Sentinel = 'crOffset'
    2677           0 :     if ((!((msg__)->ReadSentinel(iter__, 1739681986)))) {
    2678           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'crOffset' (uint32_t) member of 'YCbCrDescriptor'");
    2679           0 :         return false;
    2680             :     }
    2681           0 :     if ((!(Read((&((v__)->stereoMode())), msg__, iter__)))) {
    2682           0 :         FatalError("Error deserializing 'stereoMode' (StereoMode) member of 'YCbCrDescriptor'");
    2683           0 :         return false;
    2684             :     }
    2685             :     // Sentinel = 'stereoMode'
    2686           0 :     if ((!((msg__)->ReadSentinel(iter__, 2234072623)))) {
    2687           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'stereoMode' (StereoMode) member of 'YCbCrDescriptor'");
    2688           0 :         return false;
    2689             :     }
    2690           0 :     if ((!(Read((&((v__)->yUVColorSpace())), msg__, iter__)))) {
    2691           0 :         FatalError("Error deserializing 'yUVColorSpace' (YUVColorSpace) member of 'YCbCrDescriptor'");
    2692           0 :         return false;
    2693             :     }
    2694             :     // Sentinel = 'yUVColorSpace'
    2695           0 :     if ((!((msg__)->ReadSentinel(iter__, 1051398544)))) {
    2696           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'yUVColorSpace' (YUVColorSpace) member of 'YCbCrDescriptor'");
    2697           0 :         return false;
    2698             :     }
    2699           0 :     if ((!(Read((&((v__)->hasIntermediateBuffer())), msg__, iter__)))) {
    2700           0 :         FatalError("Error deserializing 'hasIntermediateBuffer' (bool) member of 'YCbCrDescriptor'");
    2701           0 :         return false;
    2702             :     }
    2703             :     // Sentinel = 'hasIntermediateBuffer'
    2704           0 :     if ((!((msg__)->ReadSentinel(iter__, 985857996)))) {
    2705           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'hasIntermediateBuffer' (bool) member of 'YCbCrDescriptor'");
    2706           0 :         return false;
    2707             :     }
    2708           0 :     return true;
    2709             : }
    2710             : 
    2711           0 : auto PCompositorBridgeChild::Write(
    2712             :         const SurfaceDescriptorSharedGLTexture& v__,
    2713             :         Message* msg__) -> void
    2714             : {
    2715           0 :     Write((v__).texture(), msg__);
    2716             :     // Sentinel = 'texture'
    2717           0 :     (msg__)->WriteSentinel(3654462510);
    2718           0 :     Write((v__).target(), msg__);
    2719             :     // Sentinel = 'target'
    2720           0 :     (msg__)->WriteSentinel(2226365285);
    2721           0 :     Write((v__).fence(), msg__);
    2722             :     // Sentinel = 'fence'
    2723           0 :     (msg__)->WriteSentinel(1225633926);
    2724           0 :     Write((v__).size(), msg__);
    2725             :     // Sentinel = 'size'
    2726           0 :     (msg__)->WriteSentinel(931048223);
    2727           0 :     Write((v__).hasAlpha(), msg__);
    2728             :     // Sentinel = 'hasAlpha'
    2729           0 :     (msg__)->WriteSentinel(309498444);
    2730           0 : }
    2731             : 
    2732           0 : auto PCompositorBridgeChild::Read(
    2733             :         SurfaceDescriptorSharedGLTexture* v__,
    2734             :         const Message* msg__,
    2735             :         PickleIterator* iter__) -> bool
    2736             : {
    2737           0 :     if ((!(Read((&((v__)->texture())), msg__, iter__)))) {
    2738           0 :         FatalError("Error deserializing 'texture' (uint32_t) member of 'SurfaceDescriptorSharedGLTexture'");
    2739           0 :         return false;
    2740             :     }
    2741             :     // Sentinel = 'texture'
    2742           0 :     if ((!((msg__)->ReadSentinel(iter__, 3654462510)))) {
    2743           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'texture' (uint32_t) member of 'SurfaceDescriptorSharedGLTexture'");
    2744           0 :         return false;
    2745             :     }
    2746           0 :     if ((!(Read((&((v__)->target())), msg__, iter__)))) {
    2747           0 :         FatalError("Error deserializing 'target' (uint32_t) member of 'SurfaceDescriptorSharedGLTexture'");
    2748           0 :         return false;
    2749             :     }
    2750             :     // Sentinel = 'target'
    2751           0 :     if ((!((msg__)->ReadSentinel(iter__, 2226365285)))) {
    2752           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'target' (uint32_t) member of 'SurfaceDescriptorSharedGLTexture'");
    2753           0 :         return false;
    2754             :     }
    2755           0 :     if ((!(Read((&((v__)->fence())), msg__, iter__)))) {
    2756           0 :         FatalError("Error deserializing 'fence' (uintptr_t) member of 'SurfaceDescriptorSharedGLTexture'");
    2757           0 :         return false;
    2758             :     }
    2759             :     // Sentinel = 'fence'
    2760           0 :     if ((!((msg__)->ReadSentinel(iter__, 1225633926)))) {
    2761           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'fence' (uintptr_t) member of 'SurfaceDescriptorSharedGLTexture'");
    2762           0 :         return false;
    2763             :     }
    2764           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    2765           0 :         FatalError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorSharedGLTexture'");
    2766           0 :         return false;
    2767             :     }
    2768             :     // Sentinel = 'size'
    2769           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    2770           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorSharedGLTexture'");
    2771           0 :         return false;
    2772             :     }
    2773           0 :     if ((!(Read((&((v__)->hasAlpha())), msg__, iter__)))) {
    2774           0 :         FatalError("Error deserializing 'hasAlpha' (bool) member of 'SurfaceDescriptorSharedGLTexture'");
    2775           0 :         return false;
    2776             :     }
    2777             :     // Sentinel = 'hasAlpha'
    2778           0 :     if ((!((msg__)->ReadSentinel(iter__, 309498444)))) {
    2779           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'hasAlpha' (bool) member of 'SurfaceDescriptorSharedGLTexture'");
    2780           0 :         return false;
    2781             :     }
    2782           0 :     return true;
    2783             : }
    2784             : 
    2785           0 : auto PCompositorBridgeChild::Write(
    2786             :         const SurfaceDescriptorGPUVideo& v__,
    2787             :         Message* msg__) -> void
    2788             : {
    2789           0 :     Write((v__).handle(), msg__);
    2790             :     // Sentinel = 'handle'
    2791           0 :     (msg__)->WriteSentinel(453975108);
    2792           0 : }
    2793             : 
    2794           0 : auto PCompositorBridgeChild::Read(
    2795             :         SurfaceDescriptorGPUVideo* v__,
    2796             :         const Message* msg__,
    2797             :         PickleIterator* iter__) -> bool
    2798             : {
    2799           0 :     if ((!(Read((&((v__)->handle())), msg__, iter__)))) {
    2800           0 :         FatalError("Error deserializing 'handle' (uint64_t) member of 'SurfaceDescriptorGPUVideo'");
    2801           0 :         return false;
    2802             :     }
    2803             :     // Sentinel = 'handle'
    2804           0 :     if ((!((msg__)->ReadSentinel(iter__, 453975108)))) {
    2805           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'handle' (uint64_t) member of 'SurfaceDescriptorGPUVideo'");
    2806           0 :         return false;
    2807             :     }
    2808           0 :     return true;
    2809             : }
    2810             : 
    2811           0 : auto PCompositorBridgeChild::Write(
    2812             :         const SurfaceDescriptorD3D10& v__,
    2813             :         Message* msg__) -> void
    2814             : {
    2815           0 :     Write((v__).handle(), msg__);
    2816             :     // Sentinel = 'handle'
    2817           0 :     (msg__)->WriteSentinel(453975108);
    2818           0 :     Write((v__).format(), msg__);
    2819             :     // Sentinel = 'format'
    2820           0 :     (msg__)->WriteSentinel(2052265543);
    2821           0 :     Write((v__).size(), msg__);
    2822             :     // Sentinel = 'size'
    2823           0 :     (msg__)->WriteSentinel(931048223);
    2824           0 : }
    2825             : 
    2826           0 : auto PCompositorBridgeChild::Read(
    2827             :         SurfaceDescriptorD3D10* v__,
    2828             :         const Message* msg__,
    2829             :         PickleIterator* iter__) -> bool
    2830             : {
    2831           0 :     if ((!(Read((&((v__)->handle())), msg__, iter__)))) {
    2832           0 :         FatalError("Error deserializing 'handle' (WindowsHandle) member of 'SurfaceDescriptorD3D10'");
    2833           0 :         return false;
    2834             :     }
    2835             :     // Sentinel = 'handle'
    2836           0 :     if ((!((msg__)->ReadSentinel(iter__, 453975108)))) {
    2837           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'handle' (WindowsHandle) member of 'SurfaceDescriptorD3D10'");
    2838           0 :         return false;
    2839             :     }
    2840           0 :     if ((!(Read((&((v__)->format())), msg__, iter__)))) {
    2841           0 :         FatalError("Error deserializing 'format' (SurfaceFormat) member of 'SurfaceDescriptorD3D10'");
    2842           0 :         return false;
    2843             :     }
    2844             :     // Sentinel = 'format'
    2845           0 :     if ((!((msg__)->ReadSentinel(iter__, 2052265543)))) {
    2846           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'format' (SurfaceFormat) member of 'SurfaceDescriptorD3D10'");
    2847           0 :         return false;
    2848             :     }
    2849           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    2850           0 :         FatalError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorD3D10'");
    2851           0 :         return false;
    2852             :     }
    2853             :     // Sentinel = 'size'
    2854           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    2855           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorD3D10'");
    2856           0 :         return false;
    2857             :     }
    2858           0 :     return true;
    2859             : }
    2860             : 
    2861           0 : auto PCompositorBridgeChild::Write(
    2862             :         const nsTArray<AsyncParentMessageData>& v__,
    2863             :         Message* msg__) -> void
    2864             : {
    2865           0 :     uint32_t length = (v__).Length();
    2866           0 :     Write(length, msg__);
    2867             :     // Sentinel = ('length', 'AsyncParentMessageData[]')
    2868           0 :     (msg__)->WriteSentinel(3866187970);
    2869             : 
    2870           0 :     for (auto& elem : v__) {
    2871           0 :         Write(elem, msg__);
    2872             :         // Sentinel = 'AsyncParentMessageData[]'
    2873           0 :         (msg__)->WriteSentinel(4194735789);
    2874             :     }
    2875           0 : }
    2876             : 
    2877           0 : auto PCompositorBridgeChild::Read(
    2878             :         nsTArray<AsyncParentMessageData>* v__,
    2879             :         const Message* msg__,
    2880             :         PickleIterator* iter__) -> bool
    2881             : {
    2882           0 :     nsTArray<AsyncParentMessageData> fa;
    2883             :     uint32_t length;
    2884           0 :     if ((!(Read((&(length)), msg__, iter__)))) {
    2885           0 :         mozilla::ipc::ArrayLengthReadError("AsyncParentMessageData[]");
    2886           0 :         return false;
    2887             :     }
    2888             :     // Sentinel = ('length', 'AsyncParentMessageData[]')
    2889           0 :     if ((!((msg__)->ReadSentinel(iter__, 3866187970)))) {
    2890           0 :         mozilla::ipc::SentinelReadError("AsyncParentMessageData[]");
    2891           0 :         return false;
    2892             :     }
    2893             : 
    2894           0 :     AsyncParentMessageData* elems = (fa).AppendElements(length);
    2895           0 :     for (uint32_t i = 0; (i) < (length); (++(i))) {
    2896           0 :         if ((!(Read((&(elems[i])), msg__, iter__)))) {
    2897           0 :             FatalError("Error deserializing 'AsyncParentMessageData[i]'");
    2898           0 :             return false;
    2899             :         }
    2900             :         // Sentinel = 'AsyncParentMessageData[]'
    2901           0 :         if ((!((msg__)->ReadSentinel(iter__, 4194735789)))) {
    2902           0 :             mozilla::ipc::SentinelReadError("Error deserializing 'AsyncParentMessageData[i]'");
    2903           0 :             return false;
    2904             :         }
    2905             :     }
    2906           0 :     (v__)->SwapElements(fa);
    2907           0 :     return true;
    2908             : }
    2909             : 
    2910           0 : auto PCompositorBridgeChild::Write(
    2911             :         const OpNotifyNotUsed& v__,
    2912             :         Message* msg__) -> void
    2913             : {
    2914           0 :     Write((v__).TextureId(), msg__);
    2915             :     // Sentinel = 'TextureId'
    2916           0 :     (msg__)->WriteSentinel(2545498075);
    2917           0 :     Write((v__).fwdTransactionId(), msg__);
    2918             :     // Sentinel = 'fwdTransactionId'
    2919           0 :     (msg__)->WriteSentinel(2023976742);
    2920           0 : }
    2921             : 
    2922           0 : auto PCompositorBridgeChild::Read(
    2923             :         OpNotifyNotUsed* v__,
    2924             :         const Message* msg__,
    2925             :         PickleIterator* iter__) -> bool
    2926             : {
    2927           0 :     if ((!(Read((&((v__)->TextureId())), msg__, iter__)))) {
    2928           0 :         FatalError("Error deserializing 'TextureId' (uint64_t) member of 'OpNotifyNotUsed'");
    2929           0 :         return false;
    2930             :     }
    2931             :     // Sentinel = 'TextureId'
    2932           0 :     if ((!((msg__)->ReadSentinel(iter__, 2545498075)))) {
    2933           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'TextureId' (uint64_t) member of 'OpNotifyNotUsed'");
    2934           0 :         return false;
    2935             :     }
    2936           0 :     if ((!(Read((&((v__)->fwdTransactionId())), msg__, iter__)))) {
    2937           0 :         FatalError("Error deserializing 'fwdTransactionId' (uint64_t) member of 'OpNotifyNotUsed'");
    2938           0 :         return false;
    2939             :     }
    2940             :     // Sentinel = 'fwdTransactionId'
    2941           0 :     if ((!((msg__)->ReadSentinel(iter__, 2023976742)))) {
    2942           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'fwdTransactionId' (uint64_t) member of 'OpNotifyNotUsed'");
    2943           0 :         return false;
    2944             :     }
    2945           0 :     return true;
    2946             : }
    2947             : 
    2948           0 : auto PCompositorBridgeChild::Write(
    2949             :         const SurfaceDescriptorFileMapping& v__,
    2950             :         Message* msg__) -> void
    2951             : {
    2952           0 :     Write((v__).handle(), msg__);
    2953             :     // Sentinel = 'handle'
    2954           0 :     (msg__)->WriteSentinel(453975108);
    2955           0 :     Write((v__).format(), msg__);
    2956             :     // Sentinel = 'format'
    2957           0 :     (msg__)->WriteSentinel(2052265543);
    2958           0 :     Write((v__).size(), msg__);
    2959             :     // Sentinel = 'size'
    2960           0 :     (msg__)->WriteSentinel(931048223);
    2961           0 : }
    2962             : 
    2963           0 : auto PCompositorBridgeChild::Read(
    2964             :         SurfaceDescriptorFileMapping* v__,
    2965             :         const Message* msg__,
    2966             :         PickleIterator* iter__) -> bool
    2967             : {
    2968           0 :     if ((!(Read((&((v__)->handle())), msg__, iter__)))) {
    2969           0 :         FatalError("Error deserializing 'handle' (WindowsHandle) member of 'SurfaceDescriptorFileMapping'");
    2970           0 :         return false;
    2971             :     }
    2972             :     // Sentinel = 'handle'
    2973           0 :     if ((!((msg__)->ReadSentinel(iter__, 453975108)))) {
    2974           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'handle' (WindowsHandle) member of 'SurfaceDescriptorFileMapping'");
    2975           0 :         return false;
    2976             :     }
    2977           0 :     if ((!(Read((&((v__)->format())), msg__, iter__)))) {
    2978           0 :         FatalError("Error deserializing 'format' (SurfaceFormat) member of 'SurfaceDescriptorFileMapping'");
    2979           0 :         return false;
    2980             :     }
    2981             :     // Sentinel = 'format'
    2982           0 :     if ((!((msg__)->ReadSentinel(iter__, 2052265543)))) {
    2983           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'format' (SurfaceFormat) member of 'SurfaceDescriptorFileMapping'");
    2984           0 :         return false;
    2985             :     }
    2986           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    2987           0 :         FatalError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorFileMapping'");
    2988           0 :         return false;
    2989             :     }
    2990             :     // Sentinel = 'size'
    2991           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    2992           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorFileMapping'");
    2993           0 :         return false;
    2994             :     }
    2995           0 :     return true;
    2996             : }
    2997             : 
    2998           0 : auto PCompositorBridgeChild::Write(
    2999             :         const SurfaceDescriptorDIB& v__,
    3000             :         Message* msg__) -> void
    3001             : {
    3002           0 :     Write((v__).surface(), msg__);
    3003             :     // Sentinel = 'surface'
    3004           0 :     (msg__)->WriteSentinel(2386836878);
    3005           0 : }
    3006             : 
    3007           0 : auto PCompositorBridgeChild::Read(
    3008             :         SurfaceDescriptorDIB* v__,
    3009             :         const Message* msg__,
    3010             :         PickleIterator* iter__) -> bool
    3011             : {
    3012           0 :     if ((!(Read((&((v__)->surface())), msg__, iter__)))) {
    3013           0 :         FatalError("Error deserializing 'surface' (uintptr_t) member of 'SurfaceDescriptorDIB'");
    3014           0 :         return false;
    3015             :     }
    3016             :     // Sentinel = 'surface'
    3017           0 :     if ((!((msg__)->ReadSentinel(iter__, 2386836878)))) {
    3018           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'surface' (uintptr_t) member of 'SurfaceDescriptorDIB'");
    3019           0 :         return false;
    3020             :     }
    3021           0 :     return true;
    3022             : }
    3023             : 
    3024           2 : auto PCompositorBridgeChild::Write(
    3025             :         const PLayerTransactionChild* v__,
    3026             :         Message* msg__,
    3027             :         bool nullable__) -> void
    3028             : {
    3029             :     int32_t id;
    3030           2 :     if ((!(v__))) {
    3031           0 :         if ((!(nullable__))) {
    3032           0 :             FatalError("NULL actor value passed to non-nullable param");
    3033             :         }
    3034           0 :         id = 0;
    3035             :     }
    3036             :     else {
    3037           2 :         id = (v__)->Id();
    3038           2 :         if ((1) == (id)) {
    3039           0 :             FatalError("actor has been |delete|d");
    3040             :         }
    3041             :     }
    3042             : 
    3043           2 :     Write(id, msg__);
    3044           2 : }
    3045             : 
    3046           0 : auto PCompositorBridgeChild::Read(
    3047             :         PLayerTransactionChild** v__,
    3048             :         const Message* msg__,
    3049             :         PickleIterator* iter__,
    3050             :         bool nullable__) -> bool
    3051             : {
    3052           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PLayerTransaction", PLayerTransactionMsgStart);
    3053           0 :     if ((actor).isNothing()) {
    3054           0 :         return false;
    3055             :     }
    3056             : 
    3057           0 :     (*(v__)) = static_cast<PLayerTransactionChild*>((actor).value());
    3058           0 :     return true;
    3059             : }
    3060             : 
    3061           0 : auto PCompositorBridgeChild::Write(
    3062             :         const PWebRenderBridgeChild* v__,
    3063             :         Message* msg__,
    3064             :         bool nullable__) -> void
    3065             : {
    3066             :     int32_t id;
    3067           0 :     if ((!(v__))) {
    3068           0 :         if ((!(nullable__))) {
    3069           0 :             FatalError("NULL actor value passed to non-nullable param");
    3070             :         }
    3071           0 :         id = 0;
    3072             :     }
    3073             :     else {
    3074           0 :         id = (v__)->Id();
    3075           0 :         if ((1) == (id)) {
    3076           0 :             FatalError("actor has been |delete|d");
    3077             :         }
    3078             :     }
    3079             : 
    3080           0 :     Write(id, msg__);
    3081           0 : }
    3082             : 
    3083           0 : auto PCompositorBridgeChild::Read(
    3084             :         PWebRenderBridgeChild** v__,
    3085             :         const Message* msg__,
    3086             :         PickleIterator* iter__,
    3087             :         bool nullable__) -> bool
    3088             : {
    3089           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PWebRenderBridge", PWebRenderBridgeMsgStart);
    3090           0 :     if ((actor).isNothing()) {
    3091           0 :         return false;
    3092             :     }
    3093             : 
    3094           0 :     (*(v__)) = static_cast<PWebRenderBridgeChild*>((actor).value());
    3095           0 :     return true;
    3096             : }
    3097             : 
    3098           0 : auto PCompositorBridgeChild::Write(
    3099             :         const EGLImageDescriptor& v__,
    3100             :         Message* msg__) -> void
    3101             : {
    3102           0 :     Write((v__).image(), msg__);
    3103             :     // Sentinel = 'image'
    3104           0 :     (msg__)->WriteSentinel(103190282);
    3105           0 :     Write((v__).fence(), msg__);
    3106             :     // Sentinel = 'fence'
    3107           0 :     (msg__)->WriteSentinel(1225633926);
    3108           0 :     Write((v__).size(), msg__);
    3109             :     // Sentinel = 'size'
    3110           0 :     (msg__)->WriteSentinel(931048223);
    3111           0 :     Write((v__).hasAlpha(), msg__);
    3112             :     // Sentinel = 'hasAlpha'
    3113           0 :     (msg__)->WriteSentinel(309498444);
    3114           0 : }
    3115             : 
    3116           0 : auto PCompositorBridgeChild::Read(
    3117             :         EGLImageDescriptor* v__,
    3118             :         const Message* msg__,
    3119             :         PickleIterator* iter__) -> bool
    3120             : {
    3121           0 :     if ((!(Read((&((v__)->image())), msg__, iter__)))) {
    3122           0 :         FatalError("Error deserializing 'image' (uintptr_t) member of 'EGLImageDescriptor'");
    3123           0 :         return false;
    3124             :     }
    3125             :     // Sentinel = 'image'
    3126           0 :     if ((!((msg__)->ReadSentinel(iter__, 103190282)))) {
    3127           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'image' (uintptr_t) member of 'EGLImageDescriptor'");
    3128           0 :         return false;
    3129             :     }
    3130           0 :     if ((!(Read((&((v__)->fence())), msg__, iter__)))) {
    3131           0 :         FatalError("Error deserializing 'fence' (uintptr_t) member of 'EGLImageDescriptor'");
    3132           0 :         return false;
    3133             :     }
    3134             :     // Sentinel = 'fence'
    3135           0 :     if ((!((msg__)->ReadSentinel(iter__, 1225633926)))) {
    3136           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'fence' (uintptr_t) member of 'EGLImageDescriptor'");
    3137           0 :         return false;
    3138             :     }
    3139           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    3140           0 :         FatalError("Error deserializing 'size' (IntSize) member of 'EGLImageDescriptor'");
    3141           0 :         return false;
    3142             :     }
    3143             :     // Sentinel = 'size'
    3144           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    3145           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (IntSize) member of 'EGLImageDescriptor'");
    3146           0 :         return false;
    3147             :     }
    3148           0 :     if ((!(Read((&((v__)->hasAlpha())), msg__, iter__)))) {
    3149           0 :         FatalError("Error deserializing 'hasAlpha' (bool) member of 'EGLImageDescriptor'");
    3150           0 :         return false;
    3151             :     }
    3152             :     // Sentinel = 'hasAlpha'
    3153           0 :     if ((!((msg__)->ReadSentinel(iter__, 309498444)))) {
    3154           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'hasAlpha' (bool) member of 'EGLImageDescriptor'");
    3155           0 :         return false;
    3156             :     }
    3157           0 :     return true;
    3158             : }
    3159             : 
    3160           9 : auto PCompositorBridgeChild::Write(
    3161             :         const RGBDescriptor& v__,
    3162             :         Message* msg__) -> void
    3163             : {
    3164           9 :     Write((v__).size(), msg__);
    3165             :     // Sentinel = 'size'
    3166           9 :     (msg__)->WriteSentinel(931048223);
    3167           9 :     Write((v__).format(), msg__);
    3168             :     // Sentinel = 'format'
    3169           9 :     (msg__)->WriteSentinel(2052265543);
    3170           9 :     Write((v__).hasIntermediateBuffer(), msg__);
    3171             :     // Sentinel = 'hasIntermediateBuffer'
    3172           9 :     (msg__)->WriteSentinel(985857996);
    3173           9 : }
    3174             : 
    3175           0 : auto PCompositorBridgeChild::Read(
    3176             :         RGBDescriptor* v__,
    3177             :         const Message* msg__,
    3178             :         PickleIterator* iter__) -> bool
    3179             : {
    3180           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    3181           0 :         FatalError("Error deserializing 'size' (IntSize) member of 'RGBDescriptor'");
    3182           0 :         return false;
    3183             :     }
    3184             :     // Sentinel = 'size'
    3185           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    3186           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (IntSize) member of 'RGBDescriptor'");
    3187           0 :         return false;
    3188             :     }
    3189           0 :     if ((!(Read((&((v__)->format())), msg__, iter__)))) {
    3190           0 :         FatalError("Error deserializing 'format' (SurfaceFormat) member of 'RGBDescriptor'");
    3191           0 :         return false;
    3192             :     }
    3193             :     // Sentinel = 'format'
    3194           0 :     if ((!((msg__)->ReadSentinel(iter__, 2052265543)))) {
    3195           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'format' (SurfaceFormat) member of 'RGBDescriptor'");
    3196           0 :         return false;
    3197             :     }
    3198           0 :     if ((!(Read((&((v__)->hasIntermediateBuffer())), msg__, iter__)))) {
    3199           0 :         FatalError("Error deserializing 'hasIntermediateBuffer' (bool) member of 'RGBDescriptor'");
    3200           0 :         return false;
    3201             :     }
    3202             :     // Sentinel = 'hasIntermediateBuffer'
    3203           0 :     if ((!((msg__)->ReadSentinel(iter__, 985857996)))) {
    3204           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'hasIntermediateBuffer' (bool) member of 'RGBDescriptor'");
    3205           0 :         return false;
    3206             :     }
    3207           0 :     return true;
    3208             : }
    3209             : 
    3210           0 : auto PCompositorBridgeChild::Write(
    3211             :         const SurfaceDescriptorDXGIYCbCr& v__,
    3212             :         Message* msg__) -> void
    3213             : {
    3214           0 :     Write((v__).handleY(), msg__);
    3215             :     // Sentinel = 'handleY'
    3216           0 :     (msg__)->WriteSentinel(2719705368);
    3217           0 :     Write((v__).handleCb(), msg__);
    3218             :     // Sentinel = 'handleCb'
    3219           0 :     (msg__)->WriteSentinel(2777335333);
    3220           0 :     Write((v__).handleCr(), msg__);
    3221             :     // Sentinel = 'handleCr'
    3222           0 :     (msg__)->WriteSentinel(2777335349);
    3223           0 :     Write((v__).size(), msg__);
    3224             :     // Sentinel = 'size'
    3225           0 :     (msg__)->WriteSentinel(931048223);
    3226           0 :     Write((v__).sizeY(), msg__);
    3227             :     // Sentinel = 'sizeY'
    3228           0 :     (msg__)->WriteSentinel(886619725);
    3229           0 :     Write((v__).sizeCbCr(), msg__);
    3230             :     // Sentinel = 'sizeCbCr'
    3231           0 :     (msg__)->WriteSentinel(2196484423);
    3232           0 : }
    3233             : 
    3234           0 : auto PCompositorBridgeChild::Read(
    3235             :         SurfaceDescriptorDXGIYCbCr* v__,
    3236             :         const Message* msg__,
    3237             :         PickleIterator* iter__) -> bool
    3238             : {
    3239           0 :     if ((!(Read((&((v__)->handleY())), msg__, iter__)))) {
    3240           0 :         FatalError("Error deserializing 'handleY' (WindowsHandle) member of 'SurfaceDescriptorDXGIYCbCr'");
    3241           0 :         return false;
    3242             :     }
    3243             :     // Sentinel = 'handleY'
    3244           0 :     if ((!((msg__)->ReadSentinel(iter__, 2719705368)))) {
    3245           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'handleY' (WindowsHandle) member of 'SurfaceDescriptorDXGIYCbCr'");
    3246           0 :         return false;
    3247             :     }
    3248           0 :     if ((!(Read((&((v__)->handleCb())), msg__, iter__)))) {
    3249           0 :         FatalError("Error deserializing 'handleCb' (WindowsHandle) member of 'SurfaceDescriptorDXGIYCbCr'");
    3250           0 :         return false;
    3251             :     }
    3252             :     // Sentinel = 'handleCb'
    3253           0 :     if ((!((msg__)->ReadSentinel(iter__, 2777335333)))) {
    3254           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'handleCb' (WindowsHandle) member of 'SurfaceDescriptorDXGIYCbCr'");
    3255           0 :         return false;
    3256             :     }
    3257           0 :     if ((!(Read((&((v__)->handleCr())), msg__, iter__)))) {
    3258           0 :         FatalError("Error deserializing 'handleCr' (WindowsHandle) member of 'SurfaceDescriptorDXGIYCbCr'");
    3259           0 :         return false;
    3260             :     }
    3261             :     // Sentinel = 'handleCr'
    3262           0 :     if ((!((msg__)->ReadSentinel(iter__, 2777335349)))) {
    3263           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'handleCr' (WindowsHandle) member of 'SurfaceDescriptorDXGIYCbCr'");
    3264           0 :         return false;
    3265             :     }
    3266           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    3267           0 :         FatalError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorDXGIYCbCr'");
    3268           0 :         return false;
    3269             :     }
    3270             :     // Sentinel = 'size'
    3271           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    3272           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (IntSize) member of 'SurfaceDescriptorDXGIYCbCr'");
    3273           0 :         return false;
    3274             :     }
    3275           0 :     if ((!(Read((&((v__)->sizeY())), msg__, iter__)))) {
    3276           0 :         FatalError("Error deserializing 'sizeY' (IntSize) member of 'SurfaceDescriptorDXGIYCbCr'");
    3277           0 :         return false;
    3278             :     }
    3279             :     // Sentinel = 'sizeY'
    3280           0 :     if ((!((msg__)->ReadSentinel(iter__, 886619725)))) {
    3281           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'sizeY' (IntSize) member of 'SurfaceDescriptorDXGIYCbCr'");
    3282           0 :         return false;
    3283             :     }
    3284           0 :     if ((!(Read((&((v__)->sizeCbCr())), msg__, iter__)))) {
    3285           0 :         FatalError("Error deserializing 'sizeCbCr' (IntSize) member of 'SurfaceDescriptorDXGIYCbCr'");
    3286           0 :         return false;
    3287             :     }
    3288             :     // Sentinel = 'sizeCbCr'
    3289           0 :     if ((!((msg__)->ReadSentinel(iter__, 2196484423)))) {
    3290           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'sizeCbCr' (IntSize) member of 'SurfaceDescriptorDXGIYCbCr'");
    3291           0 :         return false;
    3292             :     }
    3293           0 :     return true;
    3294             : }
    3295             : 
    3296           9 : auto PCompositorBridgeChild::Write(
    3297             :         const MemoryOrShmem& v__,
    3298             :         Message* msg__) -> void
    3299             : {
    3300             :     typedef MemoryOrShmem type__;
    3301           9 :     Write(int((v__).type()), msg__);
    3302             :     // Sentinel = 'MemoryOrShmem'
    3303           9 :     (msg__)->WriteSentinel(3227621763);
    3304             : 
    3305           9 :     switch ((v__).type()) {
    3306             :     case type__::Tuintptr_t:
    3307             :         {
    3308           8 :             Write((v__).get_uintptr_t(), msg__);
    3309             :             // Sentinel = 'Tuintptr_t'
    3310           8 :             (msg__)->WriteSentinel(3218141805);
    3311           8 :             return;
    3312             :         }
    3313             :     case type__::TShmem:
    3314             :         {
    3315           1 :             Write((v__).get_Shmem(), msg__);
    3316             :             // Sentinel = 'TShmem'
    3317           1 :             (msg__)->WriteSentinel(3517971266);
    3318           1 :             return;
    3319             :         }
    3320             :     default:
    3321             :         {
    3322           0 :             FatalError("unknown union type");
    3323           0 :             return;
    3324             :         }
    3325             :     }
    3326             : }
    3327             : 
    3328           0 : auto PCompositorBridgeChild::Read(
    3329             :         MemoryOrShmem* v__,
    3330             :         const Message* msg__,
    3331             :         PickleIterator* iter__) -> bool
    3332             : {
    3333             :     typedef MemoryOrShmem type__;
    3334             :     int type;
    3335           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    3336           0 :         mozilla::ipc::UnionTypeReadError("MemoryOrShmem");
    3337           0 :         return false;
    3338             :     }
    3339             :     // Sentinel = 'MemoryOrShmem'
    3340           0 :     if ((!((msg__)->ReadSentinel(iter__, 3227621763)))) {
    3341           0 :         mozilla::ipc::SentinelReadError("MemoryOrShmem");
    3342           0 :         return false;
    3343             :     }
    3344             : 
    3345           0 :     switch (type) {
    3346             :     case type__::Tuintptr_t:
    3347             :         {
    3348           0 :             uintptr_t tmp = uintptr_t();
    3349           0 :             (*(v__)) = tmp;
    3350           0 :             if ((!(Read((&((v__)->get_uintptr_t())), msg__, iter__)))) {
    3351           0 :                 FatalError("Error deserializing Union type");
    3352           0 :                 return false;
    3353             :             }
    3354             :             // Sentinel = 'Tuintptr_t'
    3355           0 :             if ((!((msg__)->ReadSentinel(iter__, 3218141805)))) {
    3356           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    3357           0 :                 return false;
    3358             :             }
    3359           0 :             return true;
    3360             :         }
    3361             :     case type__::TShmem:
    3362             :         {
    3363           0 :             Shmem tmp = Shmem();
    3364           0 :             (*(v__)) = tmp;
    3365           0 :             if ((!(Read((&((v__)->get_Shmem())), msg__, iter__)))) {
    3366           0 :                 FatalError("Error deserializing Union type");
    3367           0 :                 return false;
    3368             :             }
    3369             :             // Sentinel = 'TShmem'
    3370           0 :             if ((!((msg__)->ReadSentinel(iter__, 3517971266)))) {
    3371           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    3372           0 :                 return false;
    3373             :             }
    3374           0 :             return true;
    3375             :         }
    3376             :     default:
    3377             :         {
    3378           0 :             FatalError("unknown union type");
    3379           0 :             return false;
    3380             :         }
    3381             :     }
    3382             : }
    3383             : 
    3384           0 : auto PCompositorBridgeChild::Write(
    3385             :         const PluginWindowData& v__,
    3386             :         Message* msg__) -> void
    3387             : {
    3388           0 :     Write((v__).windowId(), msg__);
    3389             :     // Sentinel = 'windowId'
    3390           0 :     (msg__)->WriteSentinel(719502035);
    3391           0 :     Write((v__).clip(), msg__);
    3392             :     // Sentinel = 'clip'
    3393           0 :     (msg__)->WriteSentinel(3899292550);
    3394           0 :     Write((v__).bounds(), msg__);
    3395             :     // Sentinel = 'bounds'
    3396           0 :     (msg__)->WriteSentinel(809584493);
    3397           0 :     Write((v__).visible(), msg__);
    3398             :     // Sentinel = 'visible'
    3399           0 :     (msg__)->WriteSentinel(1037099281);
    3400           0 : }
    3401             : 
    3402           0 : auto PCompositorBridgeChild::Read(
    3403             :         PluginWindowData* v__,
    3404             :         const Message* msg__,
    3405             :         PickleIterator* iter__) -> bool
    3406             : {
    3407           0 :     if ((!(Read((&((v__)->windowId())), msg__, iter__)))) {
    3408           0 :         FatalError("Error deserializing 'windowId' (uintptr_t) member of 'PluginWindowData'");
    3409           0 :         return false;
    3410             :     }
    3411             :     // Sentinel = 'windowId'
    3412           0 :     if ((!((msg__)->ReadSentinel(iter__, 719502035)))) {
    3413           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'windowId' (uintptr_t) member of 'PluginWindowData'");
    3414           0 :         return false;
    3415             :     }
    3416           0 :     if ((!(Read((&((v__)->clip())), msg__, iter__)))) {
    3417           0 :         FatalError("Error deserializing 'clip' (LayoutDeviceIntRect[]) member of 'PluginWindowData'");
    3418           0 :         return false;
    3419             :     }
    3420             :     // Sentinel = 'clip'
    3421           0 :     if ((!((msg__)->ReadSentinel(iter__, 3899292550)))) {
    3422           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'clip' (LayoutDeviceIntRect[]) member of 'PluginWindowData'");
    3423           0 :         return false;
    3424             :     }
    3425           0 :     if ((!(Read((&((v__)->bounds())), msg__, iter__)))) {
    3426           0 :         FatalError("Error deserializing 'bounds' (LayoutDeviceIntRect) member of 'PluginWindowData'");
    3427           0 :         return false;
    3428             :     }
    3429             :     // Sentinel = 'bounds'
    3430           0 :     if ((!((msg__)->ReadSentinel(iter__, 809584493)))) {
    3431           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'bounds' (LayoutDeviceIntRect) member of 'PluginWindowData'");
    3432           0 :         return false;
    3433             :     }
    3434           0 :     if ((!(Read((&((v__)->visible())), msg__, iter__)))) {
    3435           0 :         FatalError("Error deserializing 'visible' (bool) member of 'PluginWindowData'");
    3436           0 :         return false;
    3437             :     }
    3438             :     // Sentinel = 'visible'
    3439           0 :     if ((!((msg__)->ReadSentinel(iter__, 1037099281)))) {
    3440           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'visible' (bool) member of 'PluginWindowData'");
    3441           0 :         return false;
    3442             :     }
    3443           0 :     return true;
    3444             : }
    3445             : 
    3446           0 : auto PCompositorBridgeChild::Write(
    3447             :         const CompositorWidgetInitData& v__,
    3448             :         Message* msg__) -> void
    3449             : {
    3450           0 :     Write((v__).XWindow(), msg__);
    3451             :     // Sentinel = 'XWindow'
    3452           0 :     (msg__)->WriteSentinel(2152554075);
    3453           0 :     Write((v__).XDisplayString(), msg__);
    3454             :     // Sentinel = 'XDisplayString'
    3455           0 :     (msg__)->WriteSentinel(545931363);
    3456           0 :     Write((v__).InitialClientSize(), msg__);
    3457             :     // Sentinel = 'InitialClientSize'
    3458           0 :     (msg__)->WriteSentinel(3343771687);
    3459           0 : }
    3460             : 
    3461           0 : auto PCompositorBridgeChild::Read(
    3462             :         CompositorWidgetInitData* v__,
    3463             :         const Message* msg__,
    3464             :         PickleIterator* iter__) -> bool
    3465             : {
    3466           0 :     if ((!(Read((&((v__)->XWindow())), msg__, iter__)))) {
    3467           0 :         FatalError("Error deserializing 'XWindow' (uintptr_t) member of 'CompositorWidgetInitData'");
    3468           0 :         return false;
    3469             :     }
    3470             :     // Sentinel = 'XWindow'
    3471           0 :     if ((!((msg__)->ReadSentinel(iter__, 2152554075)))) {
    3472           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'XWindow' (uintptr_t) member of 'CompositorWidgetInitData'");
    3473           0 :         return false;
    3474             :     }
    3475           0 :     if ((!(Read((&((v__)->XDisplayString())), msg__, iter__)))) {
    3476           0 :         FatalError("Error deserializing 'XDisplayString' (nsCString) member of 'CompositorWidgetInitData'");
    3477           0 :         return false;
    3478             :     }
    3479             :     // Sentinel = 'XDisplayString'
    3480           0 :     if ((!((msg__)->ReadSentinel(iter__, 545931363)))) {
    3481           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'XDisplayString' (nsCString) member of 'CompositorWidgetInitData'");
    3482           0 :         return false;
    3483             :     }
    3484           0 :     if ((!(Read((&((v__)->InitialClientSize())), msg__, iter__)))) {
    3485           0 :         FatalError("Error deserializing 'InitialClientSize' (LayoutDeviceIntSize) member of 'CompositorWidgetInitData'");
    3486           0 :         return false;
    3487             :     }
    3488             :     // Sentinel = 'InitialClientSize'
    3489           0 :     if ((!((msg__)->ReadSentinel(iter__, 3343771687)))) {
    3490           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'InitialClientSize' (LayoutDeviceIntSize) member of 'CompositorWidgetInitData'");
    3491           0 :         return false;
    3492             :     }
    3493           0 :     return true;
    3494             : }
    3495             : 
    3496           0 : auto PCompositorBridgeChild::Write(
    3497             :         const SurfaceTextureDescriptor& v__,
    3498             :         Message* msg__) -> void
    3499             : {
    3500           0 :     Write((v__).handle(), msg__);
    3501             :     // Sentinel = 'handle'
    3502           0 :     (msg__)->WriteSentinel(453975108);
    3503           0 :     Write((v__).size(), msg__);
    3504             :     // Sentinel = 'size'
    3505           0 :     (msg__)->WriteSentinel(931048223);
    3506           0 :     Write((v__).continuous(), msg__);
    3507             :     // Sentinel = 'continuous'
    3508           0 :     (msg__)->WriteSentinel(2103626571);
    3509           0 : }
    3510             : 
    3511           0 : auto PCompositorBridgeChild::Read(
    3512             :         SurfaceTextureDescriptor* v__,
    3513             :         const Message* msg__,
    3514             :         PickleIterator* iter__) -> bool
    3515             : {
    3516           0 :     if ((!(Read((&((v__)->handle())), msg__, iter__)))) {
    3517           0 :         FatalError("Error deserializing 'handle' (uint64_t) member of 'SurfaceTextureDescriptor'");
    3518           0 :         return false;
    3519             :     }
    3520             :     // Sentinel = 'handle'
    3521           0 :     if ((!((msg__)->ReadSentinel(iter__, 453975108)))) {
    3522           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'handle' (uint64_t) member of 'SurfaceTextureDescriptor'");
    3523           0 :         return false;
    3524             :     }
    3525           0 :     if ((!(Read((&((v__)->size())), msg__, iter__)))) {
    3526           0 :         FatalError("Error deserializing 'size' (IntSize) member of 'SurfaceTextureDescriptor'");
    3527           0 :         return false;
    3528             :     }
    3529             :     // Sentinel = 'size'
    3530           0 :     if ((!((msg__)->ReadSentinel(iter__, 931048223)))) {
    3531           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'size' (IntSize) member of 'SurfaceTextureDescriptor'");
    3532           0 :         return false;
    3533             :     }
    3534           0 :     if ((!(Read((&((v__)->continuous())), msg__, iter__)))) {
    3535           0 :         FatalError("Error deserializing 'continuous' (bool) member of 'SurfaceTextureDescriptor'");
    3536           0 :         return false;
    3537             :     }
    3538             :     // Sentinel = 'continuous'
    3539           0 :     if ((!((msg__)->ReadSentinel(iter__, 2103626571)))) {
    3540           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'continuous' (bool) member of 'SurfaceTextureDescriptor'");
    3541           0 :         return false;
    3542             :     }
    3543           0 :     return true;
    3544             : }
    3545             : 
    3546           0 : auto PCompositorBridgeChild::Write(
    3547             :         const SurfaceDescriptorMacIOSurface& v__,
    3548             :         Message* msg__) -> void
    3549             : {
    3550           0 :     Write((v__).surfaceId(), msg__);
    3551             :     // Sentinel = 'surfaceId'
    3552           0 :     (msg__)->WriteSentinel(4108848731);
    3553           0 :     Write((v__).scaleFactor(), msg__);
    3554             :     // Sentinel = 'scaleFactor'
    3555           0 :     (msg__)->WriteSentinel(1184637148);
    3556           0 :     Write((v__).isOpaque(), msg__);
    3557             :     // Sentinel = 'isOpaque'
    3558           0 :     (msg__)->WriteSentinel(3519081617);
    3559           0 : }
    3560             : 
    3561           0 : auto PCompositorBridgeChild::Read(
    3562             :         SurfaceDescriptorMacIOSurface* v__,
    3563             :         const Message* msg__,
    3564             :         PickleIterator* iter__) -> bool
    3565             : {
    3566           0 :     if ((!(Read((&((v__)->surfaceId())), msg__, iter__)))) {
    3567           0 :         FatalError("Error deserializing 'surfaceId' (uint32_t) member of 'SurfaceDescriptorMacIOSurface'");
    3568           0 :         return false;
    3569             :     }
    3570             :     // Sentinel = 'surfaceId'
    3571           0 :     if ((!((msg__)->ReadSentinel(iter__, 4108848731)))) {
    3572           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'surfaceId' (uint32_t) member of 'SurfaceDescriptorMacIOSurface'");
    3573           0 :         return false;
    3574             :     }
    3575           0 :     if ((!(Read((&((v__)->scaleFactor())), msg__, iter__)))) {
    3576           0 :         FatalError("Error deserializing 'scaleFactor' (double) member of 'SurfaceDescriptorMacIOSurface'");
    3577           0 :         return false;
    3578             :     }
    3579             :     // Sentinel = 'scaleFactor'
    3580           0 :     if ((!((msg__)->ReadSentinel(iter__, 1184637148)))) {
    3581           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'scaleFactor' (double) member of 'SurfaceDescriptorMacIOSurface'");
    3582           0 :         return false;
    3583             :     }
    3584           0 :     if ((!(Read((&((v__)->isOpaque())), msg__, iter__)))) {
    3585           0 :         FatalError("Error deserializing 'isOpaque' (bool) member of 'SurfaceDescriptorMacIOSurface'");
    3586           0 :         return false;
    3587             :     }
    3588             :     // Sentinel = 'isOpaque'
    3589           0 :     if ((!((msg__)->ReadSentinel(iter__, 3519081617)))) {
    3590           0 :         mozilla::ipc::SentinelReadError("Error deserializing 'isOpaque' (bool) member of 'SurfaceDescriptorMacIOSurface'");
    3591           0 :         return false;
    3592             :     }
    3593           0 :     return true;
    3594             : }
    3595             : 
    3596           9 : auto PCompositorBridgeChild::Write(
    3597             :         const BufferDescriptor& v__,
    3598             :         Message* msg__) -> void
    3599             : {
    3600             :     typedef BufferDescriptor type__;
    3601           9 :     Write(int((v__).type()), msg__);
    3602             :     // Sentinel = 'BufferDescriptor'
    3603           9 :     (msg__)->WriteSentinel(764535685);
    3604             : 
    3605           9 :     switch ((v__).type()) {
    3606             :     case type__::TRGBDescriptor:
    3607             :         {
    3608           9 :             Write((v__).get_RGBDescriptor(), msg__);
    3609             :             // Sentinel = 'TRGBDescriptor'
    3610           9 :             (msg__)->WriteSentinel(2888062100);
    3611           9 :             return;
    3612             :         }
    3613             :     case type__::TYCbCrDescriptor:
    3614             :         {
    3615           0 :             Write((v__).get_YCbCrDescriptor(), msg__);
    3616             :             // Sentinel = 'TYCbCrDescriptor'
    3617           0 :             (msg__)->WriteSentinel(3533945878);
    3618           0 :             return;
    3619             :         }
    3620             :     default:
    3621             :         {
    3622           0 :             FatalError("unknown union type");
    3623           0 :             return;
    3624             :         }
    3625             :     }
    3626             : }
    3627             : 
    3628           0 : auto PCompositorBridgeChild::Read(
    3629             :         BufferDescriptor* v__,
    3630             :         const Message* msg__,
    3631             :         PickleIterator* iter__) -> bool
    3632             : {
    3633             :     typedef BufferDescriptor type__;
    3634             :     int type;
    3635           0 :     if ((!(Read((&(type)), msg__, iter__)))) {
    3636           0 :         mozilla::ipc::UnionTypeReadError("BufferDescriptor");
    3637           0 :         return false;
    3638             :     }
    3639             :     // Sentinel = 'BufferDescriptor'
    3640           0 :     if ((!((msg__)->ReadSentinel(iter__, 764535685)))) {
    3641           0 :         mozilla::ipc::SentinelReadError("BufferDescriptor");
    3642           0 :         return false;
    3643             :     }
    3644             : 
    3645           0 :     switch (type) {
    3646             :     case type__::TRGBDescriptor:
    3647             :         {
    3648           0 :             RGBDescriptor tmp = RGBDescriptor();
    3649           0 :             (*(v__)) = tmp;
    3650           0 :             if ((!(Read((&((v__)->get_RGBDescriptor())), msg__, iter__)))) {
    3651           0 :                 FatalError("Error deserializing Union type");
    3652           0 :                 return false;
    3653             :             }
    3654             :             // Sentinel = 'TRGBDescriptor'
    3655           0 :             if ((!((msg__)->ReadSentinel(iter__, 2888062100)))) {
    3656           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    3657           0 :                 return false;
    3658             :             }
    3659           0 :             return true;
    3660             :         }
    3661             :     case type__::TYCbCrDescriptor:
    3662             :         {
    3663           0 :             YCbCrDescriptor tmp = YCbCrDescriptor();
    3664           0 :             (*(v__)) = tmp;
    3665           0 :             if ((!(Read((&((v__)->get_YCbCrDescriptor())), msg__, iter__)))) {
    3666           0 :                 FatalError("Error deserializing Union type");
    3667           0 :                 return false;
    3668             :             }
    3669             :             // Sentinel = 'TYCbCrDescriptor'
    3670           0 :             if ((!((msg__)->ReadSentinel(iter__, 3533945878)))) {
    3671           0 :                 mozilla::ipc::SentinelReadError("Error deserializing Union type");
    3672           0 :                 return false;
    3673             :             }
    3674           0 :             return true;
    3675             :         }
    3676             :     default:
    3677             :         {
    3678           0 :             FatalError("unknown union type");
    3679           0 :             return false;
    3680             :         }
    3681             :     }
    3682             : }
    3683             : 
    3684           9 : auto PCompositorBridgeChild::Write(
    3685             :         const PTextureChild* v__,
    3686             :         Message* msg__,
    3687             :         bool nullable__) -> void
    3688             : {
    3689             :     int32_t id;
    3690           9 :     if ((!(v__))) {
    3691           0 :         if ((!(nullable__))) {
    3692           0 :             FatalError("NULL actor value passed to non-nullable param");
    3693             :         }
    3694           0 :         id = 0;
    3695             :     }
    3696             :     else {
    3697           9 :         id = (v__)->Id();
    3698           9 :         if ((1) == (id)) {
    3699           0 :             FatalError("actor has been |delete|d");
    3700             :         }
    3701             :     }
    3702             : 
    3703           9 :     Write(id, msg__);
    3704           9 : }
    3705             : 
    3706           0 : auto PCompositorBridgeChild::Read(
    3707             :         PTextureChild** v__,
    3708             :         const Message* msg__,
    3709             :         PickleIterator* iter__,
    3710             :         bool nullable__) -> bool
    3711             : {
    3712           0 :     Maybe<mozilla::ipc::IProtocol*> actor = ReadActor(msg__, iter__, nullable__, "PTexture", PTextureMsgStart);
    3713           0 :     if ((actor).isNothing()) {
    3714           0 :         return false;
    3715             :     }
    3716             : 
    3717           0 :     (*(v__)) = static_cast<PTextureChild*>((actor).value());
    3718           0 :     return true;
    3719             : }
    3720             : 
    3721             : 
    3722             : 
    3723             : } // namespace layers
    3724             : } // namespace mozilla

Generated by: LCOV version 1.13