Skip to content

Commit 14e4d6b

Browse files
committed
Bug 1754037 - Part 2: Forward declare Message{Reader,Writer} where Message is forward declared, r=ipc-reviewers,mccr8
This will allow the types to be more easily automatically substituted in place of `IPC::Message`, as the type will already be declared in places it is used. Differential Revision: https://phabricator.services.mozilla.com/D140000
1 parent e1a369d commit 14e4d6b

File tree

18 files changed

+43
-7
lines changed

18 files changed

+43
-7
lines changed

docshell/base/BrowsingContext.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ class PickleIterator;
4343

4444
namespace IPC {
4545
class Message;
46+
class MessageReader;
47+
class MessageWriter;
4648
} // namespace IPC
4749

4850
namespace mozilla {

docshell/base/SyncedContext.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ class PickleIterator;
2323

2424
namespace IPC {
2525
class Message;
26+
class MessageReader;
27+
class MessageWriter;
2628
} // namespace IPC
2729

2830
namespace mozilla {

dom/base/nsContentUtils.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,9 @@ class nsRefPtrHashKey;
128128

129129
namespace IPC {
130130
class Message;
131-
}
131+
class MessageReader;
132+
class MessageWriter;
133+
} // namespace IPC
132134

133135
namespace JS {
134136
class Value;

dom/base/nsDOMNavigationTiming.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ using DOMHighResTimeStamp = double;
2323
class PickleIterator;
2424
namespace IPC {
2525
class Message;
26+
class MessageReader;
27+
class MessageWriter;
2628
} // namespace IPC
2729
namespace mozilla {
2830
namespace ipc {

dom/bindings/ErrorResult.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@
4343

4444
namespace IPC {
4545
class Message;
46+
class MessageReader;
47+
class MessageWriter;
4648
template <typename>
4749
struct ParamTraits;
4850
} // namespace IPC

dom/events/Event.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ class nsPresContext;
3333

3434
namespace IPC {
3535
class Message;
36+
class MessageReader;
37+
class MessageWriter;
3638
} // namespace IPC
3739

3840
namespace mozilla {

dom/ipc/StructuredCloneData.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@
1515

1616
namespace IPC {
1717
class Message;
18-
}
18+
class MessageReader;
19+
class MessageWriter;
20+
} // namespace IPC
1921
class PickleIterator;
2022

2123
namespace mozilla {

dom/media/webrtc/transport/mediapacket.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ class PickleIterator;
1616

1717
namespace IPC {
1818
class Message;
19-
}
19+
class MessageReader;
20+
class MessageWriter;
21+
} // namespace IPC
2022

2123
namespace mozilla {
2224

dom/security/featurepolicy/FeaturePolicyUtils.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ class PickleIterator;
1616

1717
namespace IPC {
1818
class Message;
19-
}
19+
class MessageReader;
20+
class MessageWriter;
21+
} // namespace IPC
2022

2123
namespace mozilla {
2224
namespace dom {

ipc/chromium/src/chrome/common/ipc_channel.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
namespace IPC {
2424

2525
class Message;
26+
class MessageReader;
27+
class MessageWriter;
2628

2729
//------------------------------------------------------------------------------
2830

ipc/chromium/src/chrome/common/ipc_message.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ const char* StringFromIPCMessageType(uint32_t aMessageType);
3838

3939
class Channel;
4040
class Message;
41+
class MessageReader;
42+
class MessageWriter;
4143
#ifdef FUZZING
4244
class Faulty;
4345
#endif

ipc/chromium/src/mojo/core/ports/name.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,8 @@ namespace IPC {
100100
template <typename T>
101101
struct ParamTraits;
102102
class Message;
103+
class MessageReader;
104+
class MessageWriter;
103105

104106
template <>
105107
struct ParamTraits<mojo::core::ports::PortName> {

ipc/glue/EnumSerializer.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@ class PickleIterator;
2020

2121
namespace IPC {
2222
class Message;
23-
}
23+
class MessageReader;
24+
class MessageWriter;
25+
} // namespace IPC
2426

2527
#ifdef _MSC_VER
2628
# pragma warning(disable : 4800)

ipc/glue/MessageLink.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@
1818

1919
namespace IPC {
2020
class Message;
21-
}
21+
class MessageReader;
22+
class MessageWriter;
23+
} // namespace IPC
2224

2325
namespace mozilla {
2426
namespace ipc {

ipc/glue/ProtocolMessageUtils.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ struct IPDLParamTraits;
3232
namespace IPC {
3333

3434
class Message;
35+
class MessageReader;
36+
class MessageWriter;
3537

3638
template <>
3739
struct ParamTraits<Channel::Mode>

netwerk/protocol/websocket/WebSocketFrame.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ using DOMHighResTimeStamp = double;
2020

2121
namespace IPC {
2222
class Message;
23+
class MessageReader;
24+
class MessageWriter;
2325
template <class P>
2426
struct ParamTraits;
2527
} // namespace IPC

tools/fuzzing/faulty/Faulty.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@
3030
namespace IPC {
3131
// Needed for blacklisting messages.
3232
class Message;
33+
class MessageReader;
34+
class MessageWriter;
3335
} // namespace IPC
3436

3537
namespace mozilla {

xpcom/threads/nsThreadUtils.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1745,7 +1745,9 @@ extern "C" nsresult NS_CreateBackgroundTaskQueue(
17451745
// Predeclaration for logging function below
17461746
namespace IPC {
17471747
class Message;
1748-
}
1748+
class MessageReader;
1749+
class MessageWriter;
1750+
} // namespace IPC
17491751

17501752
class nsTimerImpl;
17511753

0 commit comments

Comments
 (0)