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

Generated by: LCOV version 1.13