kythe.io@v0.0.68-0.20240422202219-7225dbc01741/kythe/cxx/indexer/proto/testdata/basic/extend.proto (about)

     1  // Test proto to test proto extensions.
     2  
     3  syntax = "proto2";
     4  
     5  //- @"package proto_kythe_test;" ref MainPackage
     6  package proto_kythe_test;
     7  
     8  import "kythe/cxx/indexer/proto/testdata/other-package.proto";
     9  
    10  //- @Extendee defines/binding ExtendeeMessage
    11  message Extendee {
    12    extensions 999 to max;
    13  }
    14  
    15  //- @Extendee ref ExtendeeMessage
    16  extend Extendee {
    17    // extendee_ext comment.
    18    //- @extendee_ext defines/binding ExtField
    19    //- ExtField childof MainPackage
    20    //- ExtField extends ExtendeeMessage
    21    optional string extendee_ext = 1001;
    22  }
    23  
    24  //- @"itsapackage.Foo" ref FooMessage
    25  extend itsapackage.Foo {
    26    //- @Bar ref BarMessage
    27    //- @other_package_ext defines/binding OtherExtField
    28    //- OtherExtField childof MainPackage
    29    //- OtherExtField extends FooMessage
    30    optional itsapackage.Bar other_package_ext = 1001;
    31  }
    32  
    33  //- @Nested defines/binding NestedMessage
    34  //- NestedMessage childof MainPackage
    35  message Nested {
    36    //- @Extendee ref ExtendeeMessage
    37    extend Extendee {
    38      //- @nested_extendee_ext defines/binding NestedExtField
    39      //- NestedExtField childof NestedMessage
    40      //- NestedExtField extends ExtendeeMessage
    41      optional string nested_extendee_ext = 1002;
    42    }
    43  
    44    //- @"itsapackage.Foo" ref FooMessage
    45    extend itsapackage.Foo {
    46      //- @Bar ref BarMessage
    47      //- @nested_other_package_ext defines/binding NestedOtherField
    48      //- NestedOtherField childof NestedMessage
    49      //- NestedOtherField extends FooMessage
    50      optional itsapackage.Bar nested_other_package_ext = 1002;
    51    }
    52  }