Google.Protobuf.Reflection.FeatureSet
public sealed class FeatureSet : IExtendableMessage<FeatureSet>, IMessage<FeatureSet>, IMessage, IEquatable<FeatureSet>, IDeepCloneable<FeatureSet>, IBufferMessage
TODO Enums in C++ gencode (and potentially other languages) are
not well scoped. This means that each of the feature enums below can clash
with each other. The short names we've chosen maximize call-site
readability, but leave us very open to this scenario. A future feature will
be designed and implemented to handle this, hopefully before we ever hit a
conflict here.
namespace Google.Protobuf.Reflection
{
public sealed class FeatureSet : IExtendableMessage<FeatureSet>, IMessage<FeatureSet>, IMessage, IEquatable<FeatureSet>, IDeepCloneable<FeatureSet>, IBufferMessage
{
public static class Types
{
public enum FieldPresence
{
[OriginalName("FIELD_PRESENCE_UNKNOWN")]
Unknown,
[OriginalName("EXPLICIT")]
Explicit,
[OriginalName("IMPLICIT")]
Implicit,
[OriginalName("LEGACY_REQUIRED")]
LegacyRequired
}
public enum EnumType
{
[OriginalName("ENUM_TYPE_UNKNOWN")]
Unknown,
[OriginalName("OPEN")]
Open,
[OriginalName("CLOSED")]
Closed
}
public enum RepeatedFieldEncoding
{
[OriginalName("REPEATED_FIELD_ENCODING_UNKNOWN")]
Unknown,
[OriginalName("PACKED")]
Packed,
[OriginalName("EXPANDED")]
Expanded
}
public enum Utf8Validation
{
[OriginalName("UTF8_VALIDATION_UNKNOWN")]
Unknown = 0,
[OriginalName("VERIFY")]
Verify = 2,
[OriginalName("NONE")]
None = 3
}
public enum MessageEncoding
{
[OriginalName("MESSAGE_ENCODING_UNKNOWN")]
Unknown,
[OriginalName("LENGTH_PREFIXED")]
LengthPrefixed,
[OriginalName("DELIMITED")]
Delimited
}
public enum JsonFormat
{
[OriginalName("JSON_FORMAT_UNKNOWN")]
Unknown,
[OriginalName("ALLOW")]
Allow,
[OriginalName("LEGACY_BEST_EFFORT")]
LegacyBestEffort
}
public enum EnforceNamingStyle
{
[OriginalName("ENFORCE_NAMING_STYLE_UNKNOWN")]
Unknown,
[OriginalName("STYLE2024")]
Style2024,
[OriginalName("STYLE_LEGACY")]
StyleLegacy,
[OriginalName("STYLE2026")]
Style2026
}
public sealed class VisibilityFeature : IMessage<VisibilityFeature>, IMessage, IEquatable<VisibilityFeature>, IDeepCloneable<VisibilityFeature>, IBufferMessage
{
public static class Types
{
public enum DefaultSymbolVisibility
{
[OriginalName("DEFAULT_SYMBOL_VISIBILITY_UNKNOWN")]
Unknown,
[OriginalName("EXPORT_ALL")]
ExportAll,
[OriginalName("EXPORT_TOP_LEVEL")]
ExportTopLevel,
[OriginalName("LOCAL_ALL")]
LocalAll,
[OriginalName("STRICT")]
Strict
}
}
public static MessageParser<VisibilityFeature> Parser { get; }
public static MessageDescriptor Descriptor { get; }
public VisibilityFeature();
public VisibilityFeature(VisibilityFeature other);
public VisibilityFeature Clone();
public bool Equals(VisibilityFeature other);
public void WriteTo(CodedOutputStream output);
public int CalculateSize();
public void MergeFrom(VisibilityFeature other);
public void MergeFrom(CodedInputStream input);
}
}
public const int FieldPresenceFieldNumber = 1;
public const int EnumTypeFieldNumber = 2;
public const int RepeatedFieldEncodingFieldNumber = 3;
public const int Utf8ValidationFieldNumber = 4;
public const int MessageEncodingFieldNumber = 5;
public const int JsonFormatFieldNumber = 6;
public const int EnforceNamingStyleFieldNumber = 7;
public const int DefaultSymbolVisibilityFieldNumber = 8;
public static MessageParser<FeatureSet> Parser { get; }
public static MessageDescriptor Descriptor { get; }
public Types.FieldPresence FieldPresence { get; set; }
public bool HasFieldPresence { get; }
public Types.EnumType EnumType { get; set; }
public bool HasEnumType { get; }
public Types.RepeatedFieldEncoding RepeatedFieldEncoding { get; set; }
public bool HasRepeatedFieldEncoding { get; }
public Types.Utf8Validation Utf8Validation { get; set; }
public bool HasUtf8Validation { get; }
public Types.MessageEncoding MessageEncoding { get; set; }
public bool HasMessageEncoding { get; }
public Types.JsonFormat JsonFormat { get; set; }
public bool HasJsonFormat { get; }
public Types.EnforceNamingStyle EnforceNamingStyle { get; set; }
public bool HasEnforceNamingStyle { get; }
public Types.VisibilityFeature.Types.DefaultSymbolVisibility DefaultSymbolVisibility { get; set; }
public bool HasDefaultSymbolVisibility { get; }
public FeatureSet();
public FeatureSet(FeatureSet other);
public FeatureSet Clone();
public void ClearFieldPresence();
public void ClearEnumType();
public void ClearRepeatedFieldEncoding();
public void ClearUtf8Validation();
public void ClearMessageEncoding();
public void ClearJsonFormat();
public void ClearEnforceNamingStyle();
public void ClearDefaultSymbolVisibility();
public bool Equals(FeatureSet other);
public void WriteTo(CodedOutputStream output);
public int CalculateSize();
public void MergeFrom(FeatureSet other);
public void MergeFrom(CodedInputStream input);
public TValue GetExtension<TValue>(Extension<FeatureSet, TValue> extension);
public RepeatedField<TValue> GetExtension<TValue>(RepeatedExtension<FeatureSet, TValue> extension);
public RepeatedField<TValue> GetOrInitializeExtension<TValue>(RepeatedExtension<FeatureSet, TValue> extension);
public void SetExtension<TValue>(Extension<FeatureSet, TValue> extension, TValue value);
public bool HasExtension<TValue>(Extension<FeatureSet, TValue> extension);
public void ClearExtension<TValue>(Extension<FeatureSet, TValue> extension);
public void ClearExtension<TValue>(RepeatedExtension<FeatureSet, TValue> extension);
}
}