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

     1  // Test proto for oneofs.
     2  
     3  syntax = "proto2";
     4  
     5  package proto_kythe_test;
     6  
     7  //- @Container defines/binding ContainerMessage
     8  message Container {
     9    //- @normal_field defines/binding NormalField
    10    //- NormalField childof ContainerMessage
    11    //- !{ NormalField childof NamedVariantType }
    12    optional bool normal_field = 1;
    13  
    14    //- @variant_name defines/binding NamedVariantType
    15    //- NamedVariantType.node/kind sum
    16    //- NamedVariantType code NVRoot
    17    //- NVRoot child.0 NVContext
    18    //- NVRoot child.1 NVIdent
    19    //- NVIdent.pre_text "variant_name"
    20    //- NVIdent link NamedVariantType
    21    //- NVContext child.0 NVContext0
    22    //- NVContext child.1 NVContext1
    23    //- NVContext0.pre_text "proto_kythe_test"
    24    //- NVContext1.pre_text "Container"
    25    oneof variant_name {
    26      //- @text defines/binding TextVariant
    27      //- TextVariant childof ContainerMessage
    28      //- TextVariant childof NamedVariantType
    29      //- TextVariant code TVRoot
    30      //- TVRoot child.0 TVType
    31      //- TVType.kind "TYPE"
    32      //- TVType.pre_text "string"
    33      //- TVRoot child.1 TVName
    34      //- TVName child.0 TVContext
    35      //- TVName child.1 TVIdent
    36      //- TVIdent.pre_text "text"
    37      //- TVContext child.0 TVContext0
    38      //- TVContext child.1 TVContext1
    39      //- TVContext child.2 TVContext2
    40      //- TVContext0.pre_text "proto_kythe_test"
    41      //- TVContext1.pre_text "Container"
    42      //- TVContext2.pre_text "variant_name"
    43      string text = 2;
    44  
    45      //- @number defines/binding NumberVariant
    46      //- NumberVariant childof ContainerMessage
    47      //- NumberVariant childof NamedVariantType
    48      int64 number = 3;
    49    }
    50  }