using System; namespace ProtoBuf { /// /// Specifies the method used to infer field tags for members of the type /// under consideration. Tags are deduced using the invariant alphabetic /// sequence of the members' names; this makes implicit field tags very brittle, /// and susceptible to changes such as field names (normally an isolated /// change). /// public enum ImplicitFields { /// /// No members are serialized implicitly; all members require a suitable /// attribute such as [ProtoMember]. This is the recmomended mode for /// most scenarios. /// None = 0, /// /// Public properties and fields are eligible for implicit serialization; /// this treats the public API as a contract. Ordering beings from ImplicitFirstTag. /// AllPublic = 1, /// /// Public and non-public fields are eligible for implicit serialization; /// this acts as a state/implementation serializer. Ordering beings from ImplicitFirstTag. /// AllFields = 2 } }