// Copyright 2018 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

syntax = "proto2";

// COMMENT: package goproto.protoc.comments;
package goproto.protoc.comments;

option go_package = "github.com/golang/protobuf/v2/cmd/protoc-gen-go/testdata/comments";

// COMMENT: Message1
message Message1 {
  // COMMENT: Message1A
  message Message1A {
  }

  // COMMENT: Message1B
  message Message1B {
  }

  // COMMENT: Field1A
  optional string Field1A = 1;

  // COMMENT: Oneof1A
  oneof Oneof1a {
    // COMMENT: Oneof1AField1
    string Oneof1AField1 = 2;
  }
}

// COMMENT: Message2
message Message2 {
  // COMMENT: Message2A
  message Message2A {
  }

  // COMMENT: Message2B
  message Message2B {
  }
}
