namespace ProtoBuf { /// /// Indicates that the implementing type has support for protocol-buffer /// extensions. /// /// Can be implemented by deriving from Extensible. public interface IExtensible { /// /// Retrieves the extension object for the current /// instance, optionally creating it if it does not already exist. /// /// Should a new extension object be /// created if it does not already exist? /// The extension object if it exists (or was created), or null /// if the extension object does not exist or is not available. /// The createIfMissing argument is false during serialization, /// and true during deserialization upon encountering unexpected fields. IExtension GetExtensionObject(bool createIfMissing); } }