Show / Hide Table of Contents

Interface IExtendableMessage<T>

Generic interface for a Protocol Buffers message containing one or more extensions, where the type parameter is expected to be the same type as the implementation class. This interface is experiemental and is subject to change.

Inherited Members
IMessage<T>.MergeFrom(T)
IMessage.MergeFrom(CodedInputStream)
IMessage.WriteTo(CodedOutputStream)
IMessage.CalculateSize()
IMessage.Descriptor
System.IEquatable<T>.Equals(T)
IDeepCloneable<T>.Clone()
Namespace: Google.Protobuf
Assembly: Google.Protobuf.dll
Syntax
public interface IExtendableMessage<T> : IMessage<T>, IMessage, IEquatable<T>, IDeepCloneable<T> where T : IExtendableMessage<T>
Type Parameters
Name Description
T

Methods

ClearExtension<TValue>(Extension<T, TValue>)

Clears the value of the specified extension

Declaration
void ClearExtension<TValue>(Extension<T, TValue> extension)
Parameters
Type Name Description
Extension<T, TValue> extension
Type Parameters
Name Description
TValue

ClearExtension<TValue>(RepeatedExtension<T, TValue>)

Clears the value of the specified repeated extension

Declaration
void ClearExtension<TValue>(RepeatedExtension<T, TValue> extension)
Parameters
Type Name Description
RepeatedExtension<T, TValue> extension
Type Parameters
Name Description
TValue

GetExtension<TValue>(Extension<T, TValue>)

Gets the value of the specified extension

Declaration
TValue GetExtension<TValue>(Extension<T, TValue> extension)
Parameters
Type Name Description
Extension<T, TValue> extension
Returns
Type Description
TValue
Type Parameters
Name Description
TValue

GetExtension<TValue>(RepeatedExtension<T, TValue>)

Gets the value of the specified repeated extension or null if the extension isn't registered in this set. For a version of this method that never returns null, use GetOrInitializeExtension<TValue>(RepeatedExtension<T, TValue>)

Declaration
RepeatedField<TValue> GetExtension<TValue>(RepeatedExtension<T, TValue> extension)
Parameters
Type Name Description
RepeatedExtension<T, TValue> extension
Returns
Type Description
RepeatedField<TValue>
Type Parameters
Name Description
TValue

GetOrInitializeExtension<TValue>(RepeatedExtension<T, TValue>)

Gets the value of the specified repeated extension, registering it if it hasn't already been registered.

Declaration
RepeatedField<TValue> GetOrInitializeExtension<TValue>(RepeatedExtension<T, TValue> extension)
Parameters
Type Name Description
RepeatedExtension<T, TValue> extension
Returns
Type Description
RepeatedField<TValue>
Type Parameters
Name Description
TValue

HasExtension<TValue>(Extension<T, TValue>)

Gets whether the value of the specified extension is set

Declaration
bool HasExtension<TValue>(Extension<T, TValue> extension)
Parameters
Type Name Description
Extension<T, TValue> extension
Returns
Type Description
System.Boolean
Type Parameters
Name Description
TValue

SetExtension<TValue>(Extension<T, TValue>, TValue)

Sets the value of the specified extension

Declaration
void SetExtension<TValue>(Extension<T, TValue> extension, TValue value)
Parameters
Type Name Description
Extension<T, TValue> extension
TValue value
Type Parameters
Name Description
TValue

Extension Methods

MessageExtensions.MergeFrom(IMessage, Byte[])
MessageExtensions.MergeFrom(IMessage, Byte[], Int32, Int32)
MessageExtensions.MergeFrom(IMessage, ByteString)
MessageExtensions.MergeFrom(IMessage, Stream)
MessageExtensions.MergeDelimitedFrom(IMessage, Stream)
MessageExtensions.ToByteArray(IMessage)
MessageExtensions.WriteTo(IMessage, Stream)
MessageExtensions.WriteDelimitedTo(IMessage, Stream)
MessageExtensions.ToByteString(IMessage)
MessageExtensions.IsInitialized(IMessage)
Back to top