syntax = "proto3";

message Message {}

service Foo {
  rpc One(Message) returns (Message) {
    /* C-style comment in the middle */
  }
  rpc Two(Message) returns (Message);
  rpc Three(Message) returns (Message) {
    // Body comment.
  }

  // Leading comment on '}'.
}

service Bar {
  /* inline body comment */
}

service Baz {
  // Normal comment in the middle
}

service Qux {
  // Body comment after blank line.
}

message Outer {
  // Outer comment.
  message Inner {
    // Inner comment.
    string value = 1;
  }
}

enum Status {
  // Unspecified.
  STATUS_UNSPECIFIED = 0;
  /* Block
  comment. */
  STATUS_ACTIVE = 1;
}

message /* A */ B /* C */ {}

// Issue 5: Comment before } inside enum should be indented with no
// extra blank line.
enum TrailingEnum {
  TRAILING_ENUM_UNSPECIFIED = 0;
  // Comment before close brace.
}
