// Generated by ProtoGen, Version=2.3.0.277, Culture=neutral, PublicKeyToken=17b3b1f090c3ea48.  DO NOT EDIT!
#pragma warning disable 1591, 0612
#region Designer generated code

using pb = global::Google.ProtocolBuffers;
using pbc = global::Google.ProtocolBuffers.Collections;
using pbd = global::Google.ProtocolBuffers.Descriptors;
using scg = global::System.Collections.Generic;
namespace com.tencent.mars.sample.proto {
  
  namespace Proto {
    
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
    public static partial class ConversationListRequest {
    
      #region Extension registration
      public static void RegisterAllExtensions(pb::ExtensionRegistry registry) {
      }
      #endregion
      #region Static variables
      #endregion
      #region Extensions
      internal static readonly object Descriptor;
      static ConversationListRequest() {
        Descriptor = null;
      }
      #endregion
      
    }
  }
  #region Messages
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
  public sealed partial class ConversationListRequest : pb::GeneratedMessageLite<ConversationListRequest, ConversationListRequest.Builder> {
    private ConversationListRequest() { }
    private static readonly ConversationListRequest defaultInstance = new ConversationListRequest().MakeReadOnly();
    private static readonly string[] _conversationListRequestFieldNames = new string[] { "access_token", "type" };
    private static readonly uint[] _conversationListRequestFieldTags = new uint[] { 10, 16 };
    public static ConversationListRequest DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override ConversationListRequest DefaultInstanceForType {
      get { return DefaultInstance; }
    }
    
    protected override ConversationListRequest ThisMessage {
      get { return this; }
    }
    
    public const int AccessTokenFieldNumber = 1;
    private bool hasAccessToken;
    private string accessToken_ = "";
    public string AccessToken {
      get { return accessToken_; }
    }
    
    public const int TypeFieldNumber = 2;
    private bool hasType;
    private int type_;
    public int Type {
      get { return type_; }
    }
    
    public override bool IsInitialized {
      get {
        if (!hasAccessToken) return false;
        if (!hasType) return false;
        return true;
      }
    }
    
    public override void WriteTo(pb::ICodedOutputStream output) {
      int size = SerializedSize;
      string[] field_names = _conversationListRequestFieldNames;
      if (hasAccessToken) {
        output.WriteString(1, field_names[0], AccessToken);
      }
      if (hasType) {
        output.WriteInt32(2, field_names[1], Type);
      }
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
        if (hasAccessToken) {
          size += pb::CodedOutputStream.ComputeStringSize(1, AccessToken);
        }
        if (hasType) {
          size += pb::CodedOutputStream.ComputeInt32Size(2, Type);
        }
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    #region Lite runtime methods
    public override int GetHashCode() {
      int hash = GetType().GetHashCode();
      if (hasAccessToken) hash ^= accessToken_.GetHashCode();
      if (hasType) hash ^= type_.GetHashCode();
      return hash;
    }
    
    public override bool Equals(object obj) {
      ConversationListRequest other = obj as ConversationListRequest;
      if (other == null) return false;
      if (hasAccessToken != other.hasAccessToken || (hasAccessToken && !accessToken_.Equals(other.accessToken_))) return false;
      if (hasType != other.hasType || (hasType && !type_.Equals(other.type_))) return false;
      return true;
    }
    
    public override void PrintTo(global::System.IO.TextWriter writer) {
      PrintField("access_token", hasAccessToken, accessToken_, writer);
      PrintField("type", hasType, type_, writer);
    }
    #endregion
    
    public static ConversationListRequest ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    private ConversationListRequest MakeReadOnly() {
      return this;
    }
    
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(ConversationListRequest prototype) {
      return new Builder(prototype);
    }
    
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
    public sealed partial class Builder : pb::GeneratedBuilderLite<ConversationListRequest, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
      public Builder() {
        result = DefaultInstance;
        resultIsReadOnly = true;
      }
      internal Builder(ConversationListRequest cloneFrom) {
        result = cloneFrom;
        resultIsReadOnly = true;
      }
      
      private bool resultIsReadOnly;
      private ConversationListRequest result;
      
      private ConversationListRequest PrepareBuilder() {
        if (resultIsReadOnly) {
          ConversationListRequest original = result;
          result = new ConversationListRequest();
          resultIsReadOnly = false;
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
      
      protected override ConversationListRequest MessageBeingBuilt {
        get { return PrepareBuilder(); }
      }
      
      public override Builder Clear() {
        result = DefaultInstance;
        resultIsReadOnly = true;
        return this;
      }
      
      public override Builder Clone() {
        if (resultIsReadOnly) {
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
      }
      
      public override ConversationListRequest DefaultInstanceForType {
        get { return global::com.tencent.mars.sample.proto.ConversationListRequest.DefaultInstance; }
      }
      
      public override ConversationListRequest BuildPartial() {
        if (resultIsReadOnly) {
          return result;
        }
        resultIsReadOnly = true;
        return result.MakeReadOnly();
      }
      
      public override Builder MergeFrom(pb::IMessageLite other) {
        if (other is ConversationListRequest) {
          return MergeFrom((ConversationListRequest) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(ConversationListRequest other) {
      return this;
      }
      
      public override Builder MergeFrom(pb::ICodedInputStream input) {
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
        PrepareBuilder();
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_conversationListRequestFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _conversationListRequestFieldTags[field_ordinal];
            else {
              ParseUnknownField(input, extensionRegistry, tag, field_name);
              continue;
            }
          }
          switch (tag) {
            case 0: {
              throw pb::InvalidProtocolBufferException.InvalidTag();
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                return this;
              }
              ParseUnknownField(input, extensionRegistry, tag, field_name);
              break;
            }
            case 10: {
              result.hasAccessToken = input.ReadString(ref result.accessToken_);
              break;
            }
            case 16: {
              result.hasType = input.ReadInt32(ref result.type_);
              break;
            }
          }
        }
        
        return this;
        }
        
        
        public string AccessToken {
          get { return result.AccessToken; }
          set { SetAccessToken(value); }
        }
        public Builder SetAccessToken(string value) {
          pb::ThrowHelper.ThrowIfNull(value, "value");
          PrepareBuilder();
          result.hasAccessToken = true;
          result.accessToken_ = value;
          return this;
        }
        public Builder ClearAccessToken() {
          PrepareBuilder();
          result.hasAccessToken = false;
          result.accessToken_ = "";
          return this;
        }
        
        public int Type {
          get { return result.Type; }
          set { SetType(value); }
        }
        public Builder SetType(int value) {
          PrepareBuilder();
          result.hasType = true;
          result.type_ = value;
          return this;
        }
        public Builder ClearType() {
          PrepareBuilder();
          result.hasType = false;
          result.type_ = 0;
          return this;
        }
      }
      static ConversationListRequest() {
        object.ReferenceEquals(global::com.tencent.mars.sample.proto.Proto.ConversationListRequest.Descriptor, null);
      }
    }
    
    #endregion
    
  }
  
  #endregion Designer generated code
