public static class ExtensionSet
Methods for managing ExtensionSet<TTarget>s with null checking.
Most users will not use this class directly and its API is experimental and subject to change.
Inheritance
object >
ExtensionSet
Namespace
Google.Protobuf
Assembly
Google.Protobuf.dll
Methods
Clear<TTarget, TValue>(ref ExtensionSet<TTarget>, Extension<TTarget, TValue>)
public static void Clear<TTarget, TValue>(ref ExtensionSet<TTarget> set, Extension<TTarget, TValue> extension) where TTarget : IExtendableMessage<TTarget>
Clears the value of the specified extension
Type Parameters |
Name |
Description |
TTarget |
|
TValue |
|
Clear<TTarget, TValue>(ref ExtensionSet<TTarget>, RepeatedExtension<TTarget, TValue>)
public static void Clear<TTarget, TValue>(ref ExtensionSet<TTarget> set, RepeatedExtension<TTarget, TValue> extension) where TTarget : IExtendableMessage<TTarget>
Clears the value of the specified extension
Type Parameters |
Name |
Description |
TTarget |
|
TValue |
|
Clone<TTarget>(ExtensionSet<TTarget>)
public static ExtensionSet<TTarget> Clone<TTarget>(ExtensionSet<TTarget> set) where TTarget : IExtendableMessage<TTarget>
Clones the set into a new set. If the set is null, this returns null
Type Parameter |
Name |
Description |
TTarget |
|
GetOrInitialize<TTarget, TValue>(ref ExtensionSet<TTarget>, RepeatedExtension<TTarget, TValue>)
public static RepeatedField<TValue> GetOrInitialize<TTarget, TValue>(ref ExtensionSet<TTarget> set, RepeatedExtension<TTarget, TValue> extension) where TTarget : IExtendableMessage<TTarget>
Gets the value of the specified repeated extension, registering it if it doesn't exist
Type Parameters |
Name |
Description |
TTarget |
|
TValue |
|
Get<TTarget, TValue>(ref ExtensionSet<TTarget>, Extension<TTarget, TValue>)
public static TValue Get<TTarget, TValue>(ref ExtensionSet<TTarget> set, Extension<TTarget, TValue> extension) where TTarget : IExtendableMessage<TTarget>
Gets the value of the specified extension
Returns |
Type |
Description |
TValue |
|
Type Parameters |
Name |
Description |
TTarget |
|
TValue |
|
Get<TTarget, TValue>(ref ExtensionSet<TTarget>, RepeatedExtension<TTarget, TValue>)
public static RepeatedField<TValue> Get<TTarget, TValue>(ref ExtensionSet<TTarget> set, RepeatedExtension<TTarget, TValue> extension) where TTarget : IExtendableMessage<TTarget>
Gets the value of the specified repeated extension or null if it doesn't exist in this set
Type Parameters |
Name |
Description |
TTarget |
|
TValue |
|
Has<TTarget, TValue>(ref ExtensionSet<TTarget>, Extension<TTarget, TValue>)
public static bool Has<TTarget, TValue>(ref ExtensionSet<TTarget> set, Extension<TTarget, TValue> extension) where TTarget : IExtendableMessage<TTarget>
Gets whether the value of the specified extension is set
Returns |
Type |
Description |
bool |
|
Type Parameters |
Name |
Description |
TTarget |
|
TValue |
|
MergeFrom<TTarget>(ref ExtensionSet<TTarget>, ExtensionSet<TTarget>)
public static void MergeFrom<TTarget>(ref ExtensionSet<TTarget> first, ExtensionSet<TTarget> second) where TTarget : IExtendableMessage<TTarget>
Merges the second set into the first set, creating a new instance if first is null
Type Parameter |
Name |
Description |
TTarget |
|
Set<TTarget, TValue>(ref ExtensionSet<TTarget>, Extension<TTarget, TValue>, TValue)
public static void Set<TTarget, TValue>(ref ExtensionSet<TTarget> set, Extension<TTarget, TValue> extension, TValue value) where TTarget : IExtendableMessage<TTarget>
Sets the value of the specified extension. This will make a new instance of ExtensionSet if the set is null.
Type Parameters |
Name |
Description |
TTarget |
|
TValue |
|
public static bool TryMergeFieldFrom<TTarget>(ref ExtensionSet<TTarget> set, CodedInputStream stream) where TTarget : IExtendableMessage<TTarget>
Tries to merge a field from the coded input, returning true if the field was merged.
If the set is null or the field was not otherwise merged, this returns false.
Returns |
Type |
Description |
bool |
|
Type Parameter |
Name |
Description |
TTarget |
|
TryMergeFieldFrom<TTarget>(ref ExtensionSet<TTarget>, ref ParseContext)
public static bool TryMergeFieldFrom<TTarget>(ref ExtensionSet<TTarget> set, ref ParseContext ctx) where TTarget : IExtendableMessage<TTarget>
Tries to merge a field from the coded input, returning true if the field was merged.
If the set is null or the field was not otherwise merged, this returns false.
Returns |
Type |
Description |
bool |
|
Type Parameter |
Name |
Description |
TTarget |
|