From d9c59e66131b34833f04c591fa8fe8719afa0b47 Mon Sep 17 00:00:00 2001 From: csharptest Date: Thu, 4 Nov 2010 19:36:28 -0500 Subject: First pass at interface breakup --- src/ProtocolBuffers/IMessageLite.cs | 78 ++++--------------------------------- 1 file changed, 8 insertions(+), 70 deletions(-) (limited to 'src/ProtocolBuffers/IMessageLite.cs') diff --git a/src/ProtocolBuffers/IMessageLite.cs b/src/ProtocolBuffers/IMessageLite.cs index ec955c6d..cb64e021 100644 --- a/src/ProtocolBuffers/IMessageLite.cs +++ b/src/ProtocolBuffers/IMessageLite.cs @@ -35,7 +35,6 @@ using System; using System.Collections.Generic; using System.IO; -using Google.ProtocolBuffers.Descriptors; namespace Google.ProtocolBuffers { @@ -43,68 +42,7 @@ namespace Google.ProtocolBuffers { /// Non-generic interface used for all parts of the API which don't require /// any type knowledge. /// - public interface IMessage { - /// - /// Returns the message's type's descriptor. This differs from the - /// Descriptor property of each generated message class in that this - /// method is an abstract method of IMessage whereas Descriptor is - /// a static property of a specific class. They return the same thing. - /// - MessageDescriptor DescriptorForType { get; } - /// - /// Returns a collection of all the fields in this message which are set - /// and their corresponding values. A singular ("required" or "optional") - /// field is set iff HasField() returns true for that field. A "repeated" - /// field is set iff GetRepeatedFieldSize() is greater than zero. The - /// values are exactly what would be returned by calling - /// GetField(FieldDescriptor) for each field. The map - /// is guaranteed to be a sorted map, so iterating over it will return fields - /// in order by field number. - /// - IDictionary AllFields { get; } - - /// - /// Returns true if the given field is set. This is exactly equivalent - /// to calling the generated "Has" property corresponding to the field. - /// - /// the field is a repeated field, - /// or it's not a field of this type - bool HasField(FieldDescriptor field); - - /// - /// Obtains the value of the given field, or the default value if - /// it isn't set. For value type fields, the boxed value is returned. - /// For enum fields, the EnumValueDescriptor for the enum is returned. - /// For embedded message fields, the sub-message - /// is returned. For repeated fields, an IList<T> is returned. - /// - object this[FieldDescriptor field] { get; } - - /// - /// Returns the number of elements of a repeated field. This is - /// exactly equivalent to calling the generated "Count" property - /// corresponding to the field. - /// - /// the field is not a repeated field, - /// or it's not a field of this type - int GetRepeatedFieldCount(FieldDescriptor field); - - /// - /// Gets an element of a repeated field. For value type fields - /// excluding enums, the boxed value is returned. For embedded - /// message fields, the sub-message is returned. For enums, the - /// relevant EnumValueDescriptor is returned. - /// - /// the field is not a repeated field, - /// or it's not a field of this type - /// the index is out of - /// range for the repeated field's value - object this[FieldDescriptor field, int index] { get; } - - /// - /// Returns the unknown fields for this message. - /// - UnknownFieldSet UnknownFields { get; } + public interface IMessageLite { /// /// Returns true iff all required fields in the message and all embedded @@ -191,19 +129,19 @@ namespace Google.ProtocolBuffers { /// is typically implemented by strongly typed messages by just returning /// the result of CreateBuilderForType. /// - IBuilder WeakCreateBuilderForType(); + IBuilderLite WeakCreateBuilderForType(); /// /// Creates a builder with the same contents as this message. This /// is typically implemented by strongly typed messages by just returning /// the result of ToBuilder. /// - IBuilder WeakToBuilder(); + IBuilderLite WeakToBuilder(); - IMessage WeakDefaultInstanceForType { get; } + IMessageLite WeakDefaultInstanceForType { get; } } - public interface IMessage : IMessage { + public interface IMessageLite : IMessageLite { /// /// Returns an instance of this message type with all fields set to /// their default values. This may or may not be a singleton. This differs @@ -217,9 +155,9 @@ namespace Google.ProtocolBuffers { /// /// Type-safe interface for all generated messages to implement. /// - public interface IMessage : IMessage - where TMessage : IMessage - where TBuilder : IBuilder { + public interface IMessageLite : IMessageLite + where TMessage : IMessageLite + where TBuilder : IBuilderLite { #region Builders /// /// Constructs a new builder for a message of the same type as this message. -- cgit v1.2.3