public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
                    break;

                case 10: {
                    Filter = input.ReadString();
                    break;
                }

                case 18: {
                    path_.AddEntriesFrom(input, _repeated_path_codec);
                    break;
                }

                case 26: {
                    if (value_ == null)
                    {
                        Value = new global::Envoy.Type.Matcher.ValueMatcher();
                    }
                    input.ReadMessage(Value);
                    break;
                }
                }
            }
        }
        public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
                    break;

                case 10: {
                    global::Envoy.Type.Matcher.ValueMatcher subBuilder = new global::Envoy.Type.Matcher.ValueMatcher();
                    if (matchPatternCase_ == MatchPatternOneofCase.OneOf)
                    {
                        subBuilder.MergeFrom(OneOf);
                    }
                    input.ReadMessage(subBuilder);
                    OneOf = subBuilder;
                    break;
                }
                }
            }
        }
        public void MergeFrom(ListMatcher other)
        {
            if (other == null)
            {
                return;
            }
            switch (other.MatchPatternCase)
            {
            case MatchPatternOneofCase.OneOf:
                if (OneOf == null)
                {
                    OneOf = new global::Envoy.Type.Matcher.ValueMatcher();
                }
                OneOf.MergeFrom(other.OneOf);
                break;
            }

            _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
        }
 public void MergeFrom(MetadataMatcher other)
 {
     if (other == null)
     {
         return;
     }
     if (other.Filter.Length != 0)
     {
         Filter = other.Filter;
     }
     path_.Add(other.path_);
     if (other.value_ != null)
     {
         if (value_ == null)
         {
             Value = new global::Envoy.Type.Matcher.ValueMatcher();
         }
         Value.MergeFrom(other.Value);
     }
     _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
 }