// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements.  See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership.  The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License.  You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied.  See the License for the
// specific language governing permissions and limitations
// under the License.

syntax="proto2";
package proto;

enum CompressType {
    CompressTypeNone = 0;
    CompressTypeGzip = 1;
    CompressTypeZlib = 2;
    CompressTypeSnappy = 3;
    CompressTypeLZ4 = 4;
}

message Misc {
  required CompressType required_enum = 1;
  optional CompressType optional_enum = 2;
  repeated CompressType repeated_enum = 3;
  required uint64 required_uint64 = 4;
  optional uint64 optional_uint64 = 5;
  repeated uint64 repeated_uint64 = 6;
  required string required_string = 7;
  optional string optional_string = 8;
  repeated string repeated_string = 9;
  required bool required_bool = 10;
  optional bool optional_bool = 11;
  repeated bool repeated_bool = 12;
  required int32 required_int32 = 13;
  optional int32 optional_int32 = 14;
  repeated int32 repeated_int32 = 15;
}