| // Protocol Buffers - Google's data interchange format |
| // Copyright 2026 Google LLC. All rights reserved. |
| // |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file or at |
| // https://developers.google.com/open-source/licenses/bsd |
| |
| edition = "2024"; |
| |
| package third_party_protobuf_rust_test; |
| |
| message TestExtensions { |
| extensions 1 to max; |
| |
| extend TestExtensions { |
| int32 nested_extension = 500; |
| } |
| } |
| |
| message SimpleSubmessage { |
| int32 i32_field = 1 [default = 123]; |
| } |
| |
| extend TestExtensions { |
| int32 i32_extension = 1; |
| string str_extension = 2; |
| |
| SimpleSubmessage submessage_extension = 20; |
| |
| int32 i32_extension_with_default = 100 [default = 100]; |
| |
| repeated int32 repeated_i32_extension = 801; |
| repeated string repeated_str_extension = 802; |
| repeated SimpleSubmessage repeated_submessage_extension = 803; |
| |
| int64 i64_extension = 11; |
| uint32 u32_extension = 12; |
| uint64 u64_extension = 13; |
| float f32_extension = 14; |
| double f64_extension = 15; |
| bool bool_extension = 16; |
| |
| repeated int64 repeated_i64_extension = 811; |
| repeated uint32 repeated_u32_extension = 812; |
| repeated uint64 repeated_u64_extension = 813; |
| repeated float repeated_f32_extension = 814; |
| repeated double repeated_f64_extension = 815; |
| repeated bool repeated_bool_extension = 816; |
| |
| TestEnum enum_extension = 30; |
| repeated TestEnum repeated_enum_extension = 830; |
| } |
| |
| enum TestEnum { |
| FOO = 0; |
| BAR = 1; |
| } |
| |
| enum ClosedEnum { |
| option features.enum_type = CLOSED; |
| |
| CLOSED_ZERO = 0; |
| CLOSED_ONE = 1; |
| } |
| |
| extend TestExtensions { |
| ClosedEnum closed_enum_extension = 31; |
| } |