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

     1  // Test proto for message type fields.
     2  
     3  syntax = "proto2";
     4  
     5  package proto_kythe_test;
     6  option java_package = "io.kythe";
     7  
     8  //- @MessageFields defines/binding MessageFieldsNode
     9  //- MessageFieldsNode childof FileNode
    10  //- MessageFieldsNode.node/kind record
    11  message MessageFields {
    12    //- @Type1 ref Type1Node
    13    //- @field_name defines/binding FieldNameNode
    14    //- FieldNameNode childof MessageFieldsNode
    15    //- FieldNameNode.node/kind variable
    16    //- FieldNameNode.subkind field
    17    //- FieldNameNode typed Type1Node
    18    //- FieldNameNode code FNRoot
    19    //- FNRoot child.0 FNLabel
    20    //- FNLabel.kind "MODIFIER"
    21    //- FNLabel.pre_text "optional"
    22    //- FNRoot child.1 FNType
    23    //- FNType.kind "TYPE"
    24    //- FNType child.0 FNTypeName
    25    //- FNTypeName child.1 FNTypeIdent
    26    //- FNTypeIdent.pre_text "Type1"
    27    //- FNTypeIdent link Type1Node
    28    //- FNRoot child.2 FNName
    29    //- FNName child.0 FNQualName
    30    //- FNName child.1 FNIdent
    31    //- FNIdent.pre_text field_name
    32    //- FNIdent.kind "IDENTIFIER"
    33    //- FNIdent link FieldNameNode
    34    //- FNQualName.kind "CONTEXT"
    35    //- FNQualName.post_child_text "."
    36    //- FNQualName.add_final_list_token true
    37    //- FNQualName child.0 FNQualName0
    38    //- FNQualName0.kind "IDENTIFIER"
    39    //- FNQualName0.pre_text "proto_kythe_test"
    40    //- FNQualName child.1 FNQualName1
    41    //- FNQualName1.kind "IDENTIFIER"
    42    //- FNQualName1.pre_text "MessageFields"
    43    optional Type1 field_name = 1;
    44  
    45    //- @Type1 ref Type1Node
    46    //- @repeated_field_name defines/binding RepeatedNode
    47    //- RepeatedNode childof MessageFieldsNode
    48    //- RepeatedNode.node/kind variable
    49    //- RepeatedNode.subkind field
    50    //- FieldNameNode typed Type1Node
    51    repeated Type1 repeated_field_name = 2;
    52  }
    53  
    54  //- @Type1 defines/binding Type1Node
    55  //- Type1Node childof FileNode
    56  //- Type1Node.node/kind record
    57  message Type1 {
    58    //- @test defines/binding TestNode
    59    //- TestNode childof Type1Node
    60    //- TestNode.node/kind variable
    61    //- TestNode.subkind field
    62    //- !{ TestNode typed _AnyTypeNode }
    63    required string test = 1;
    64  }