aboutsummaryrefslogtreecommitdiffhomepage
path: root/objectivec/GPBRootObject.m
diff options
context:
space:
mode:
authorGravatar Adam Cozzette <acozzette@google.com>2017-12-01 10:05:19 -0800
committerGravatar Adam Cozzette <acozzette@google.com>2017-12-01 10:05:19 -0800
commit0ba8eea655a5e40d19ab95c773192b5d908c5a61 (patch)
tree4c2c97ade1ab197d361c146bacae5adde55986bf /objectivec/GPBRootObject.m
parent92a7e778e7394386f413cec28d67a07630f784b1 (diff)
parenta711e3d5b4ee1dd7f9d21197dca8432a5819a64e (diff)
Merge branch 'master' into down-integrate
Diffstat (limited to 'objectivec/GPBRootObject.m')
-rw-r--r--objectivec/GPBRootObject.m8
1 files changed, 8 insertions, 0 deletions
diff --git a/objectivec/GPBRootObject.m b/objectivec/GPBRootObject.m
index 585d205a..bad2f9a7 100644
--- a/objectivec/GPBRootObject.m
+++ b/objectivec/GPBRootObject.m
@@ -43,6 +43,14 @@
- (const char *)singletonNameC;
@end
+// We need some object to conform to the MessageSignatureProtocol to make sure
+// the selectors in it are recorded in our Objective C runtime information.
+// GPBMessage is arguably the more "obvious" choice, but given that all messages
+// inherit from GPBMessage, conflicts seem likely, so we are using GPBRootObject
+// instead.
+@interface GPBRootObject () <GPBMessageSignatureProtocol>
+@end
+
@implementation GPBRootObject
// Taken from http://www.burtleburtle.net/bob/hash/doobs.html