From 98c01858f2db05a9eea000b407d63cde7f86d79a Mon Sep 17 00:00:00 2001 From: Thomas Van Lenten Date: Mon, 31 Oct 2016 10:43:46 -0400 Subject: Add note about extension use and Coding support. --- objectivec/GPBMessage.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'objectivec/GPBMessage.h') diff --git a/objectivec/GPBMessage.h b/objectivec/GPBMessage.h index 0cb74f9f..c07ec888 100644 --- a/objectivec/GPBMessage.h +++ b/objectivec/GPBMessage.h @@ -65,9 +65,18 @@ CF_EXTERN_C_END /** * Base class that each generated message subclasses from. + * + * @note While the class support NSSecureCoding, if the message has any + * extensions, they will end up reloaded in @c unknownFields as there is + * no way for the @c NSCoding plumbing to pass through a + * @c GPBExtensionRegistry. To support extensions, instead of passing the + * calls off to the Message, simple store the result of @c data, and then + * when loading, fetch the data and use + * @c +parseFromData:extensionRegistry:error: to provide an extension + * registry. **/ @interface GPBMessage : NSObject - + // If you add an instance method/property to this class that may conflict with // fields declared in protos, you need to update objective_helpers.cc. The main // cases are methods that take no arguments, or setFoo:/hasFoo: type methods. -- cgit v1.2.3