Class DescriptorProtos.SourceCodeInfo

java.lang.Object
com.google.protobuf.AbstractMessageLite<MessageType,BuilderType>
com.google.protobuf.GeneratedMessageLite<DescriptorProtos.SourceCodeInfo,DescriptorProtos.SourceCodeInfo.Builder>
com.google.protobuf.DescriptorProtos.SourceCodeInfo
All Implemented Interfaces:
DescriptorProtos.SourceCodeInfoOrBuilder, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder
Enclosing class:
DescriptorProtos

public static final class DescriptorProtos.SourceCodeInfo extends com.google.protobuf.GeneratedMessageLite<DescriptorProtos.SourceCodeInfo,DescriptorProtos.SourceCodeInfo.Builder> implements DescriptorProtos.SourceCodeInfoOrBuilder
 Encapsulates information about the original source file from which a
 FileDescriptorProto was generated.
 
Protobuf type google.protobuf.SourceCodeInfo
  • Field Details

  • Method Details

    • getLocationList

       A Location identifies a piece of source code in a .proto file which
       corresponds to a particular definition.  This information is intended
       to be useful to IDEs, code indexers, documentation generators, and similar
       tools.
      
       For example, say we have a file like:
       message Foo {
       optional string foo = 1;
       }
       Let's look at just the field definition:
       optional string foo = 1;
       ^       ^^     ^^  ^  ^^^
       a       bc     de  f  ghi
       We have the following locations:
       span   path               represents
       [a,i)  [ 4, 0, 2, 0 ]     The whole field definition.
       [a,b)  [ 4, 0, 2, 0, 4 ]  The label (optional).
       [c,d)  [ 4, 0, 2, 0, 5 ]  The type (string).
       [e,f)  [ 4, 0, 2, 0, 1 ]  The name (foo).
       [g,h)  [ 4, 0, 2, 0, 3 ]  The number (1).
      
       Notes:
       - A location may refer to a repeated field itself (i.e. not to any
       particular index within it).  This is used whenever a set of elements are
       logically enclosed in a single code segment.  For example, an entire
       extend block (possibly containing multiple extension definitions) will
       have an outer location whose path refers to the "extensions" repeated
       field without an index.
       - Multiple locations may have the same path.  This happens when a single
       logical declaration is spread out across multiple places.  The most
       obvious example is the "extend" block again -- there may be multiple
       extend blocks in the same scope, each of which will have the same path.
       - A location's span is not always a subset of its parent's span.  For
       example, the "extendee" of an extension declaration appears at the
       beginning of the "extend" block and is shared by all extensions within
       the block.
       - Just because a location's span is a subset of some other location's span
       does not mean that it is a descendant.  For example, a "group" defines
       both a type and a field in a single declaration.  Thus, the locations
       corresponding to the type and field and their components will overlap.
       - Code which tries to interpret locations should probably be designed to
       ignore those that it doesn't understand, as more types of locations could
       be recorded in the future.
       
      repeated .google.protobuf.SourceCodeInfo.Location location = 1 [json_name = "location"];
      Specified by:
      getLocationList in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • getLocationOrBuilderList

      public List<? extends DescriptorProtos.SourceCodeInfo.LocationOrBuilder> getLocationOrBuilderList()
       A Location identifies a piece of source code in a .proto file which
       corresponds to a particular definition.  This information is intended
       to be useful to IDEs, code indexers, documentation generators, and similar
       tools.
      
       For example, say we have a file like:
       message Foo {
       optional string foo = 1;
       }
       Let's look at just the field definition:
       optional string foo = 1;
       ^       ^^     ^^  ^  ^^^
       a       bc     de  f  ghi
       We have the following locations:
       span   path               represents
       [a,i)  [ 4, 0, 2, 0 ]     The whole field definition.
       [a,b)  [ 4, 0, 2, 0, 4 ]  The label (optional).
       [c,d)  [ 4, 0, 2, 0, 5 ]  The type (string).
       [e,f)  [ 4, 0, 2, 0, 1 ]  The name (foo).
       [g,h)  [ 4, 0, 2, 0, 3 ]  The number (1).
      
       Notes:
       - A location may refer to a repeated field itself (i.e. not to any
       particular index within it).  This is used whenever a set of elements are
       logically enclosed in a single code segment.  For example, an entire
       extend block (possibly containing multiple extension definitions) will
       have an outer location whose path refers to the "extensions" repeated
       field without an index.
       - Multiple locations may have the same path.  This happens when a single
       logical declaration is spread out across multiple places.  The most
       obvious example is the "extend" block again -- there may be multiple
       extend blocks in the same scope, each of which will have the same path.
       - A location's span is not always a subset of its parent's span.  For
       example, the "extendee" of an extension declaration appears at the
       beginning of the "extend" block and is shared by all extensions within
       the block.
       - Just because a location's span is a subset of some other location's span
       does not mean that it is a descendant.  For example, a "group" defines
       both a type and a field in a single declaration.  Thus, the locations
       corresponding to the type and field and their components will overlap.
       - Code which tries to interpret locations should probably be designed to
       ignore those that it doesn't understand, as more types of locations could
       be recorded in the future.
       
      repeated .google.protobuf.SourceCodeInfo.Location location = 1 [json_name = "location"];
    • getLocationCount

      public int getLocationCount()
       A Location identifies a piece of source code in a .proto file which
       corresponds to a particular definition.  This information is intended
       to be useful to IDEs, code indexers, documentation generators, and similar
       tools.
      
       For example, say we have a file like:
       message Foo {
       optional string foo = 1;
       }
       Let's look at just the field definition:
       optional string foo = 1;
       ^       ^^     ^^  ^  ^^^
       a       bc     de  f  ghi
       We have the following locations:
       span   path               represents
       [a,i)  [ 4, 0, 2, 0 ]     The whole field definition.
       [a,b)  [ 4, 0, 2, 0, 4 ]  The label (optional).
       [c,d)  [ 4, 0, 2, 0, 5 ]  The type (string).
       [e,f)  [ 4, 0, 2, 0, 1 ]  The name (foo).
       [g,h)  [ 4, 0, 2, 0, 3 ]  The number (1).
      
       Notes:
       - A location may refer to a repeated field itself (i.e. not to any
       particular index within it).  This is used whenever a set of elements are
       logically enclosed in a single code segment.  For example, an entire
       extend block (possibly containing multiple extension definitions) will
       have an outer location whose path refers to the "extensions" repeated
       field without an index.
       - Multiple locations may have the same path.  This happens when a single
       logical declaration is spread out across multiple places.  The most
       obvious example is the "extend" block again -- there may be multiple
       extend blocks in the same scope, each of which will have the same path.
       - A location's span is not always a subset of its parent's span.  For
       example, the "extendee" of an extension declaration appears at the
       beginning of the "extend" block and is shared by all extensions within
       the block.
       - Just because a location's span is a subset of some other location's span
       does not mean that it is a descendant.  For example, a "group" defines
       both a type and a field in a single declaration.  Thus, the locations
       corresponding to the type and field and their components will overlap.
       - Code which tries to interpret locations should probably be designed to
       ignore those that it doesn't understand, as more types of locations could
       be recorded in the future.
       
      repeated .google.protobuf.SourceCodeInfo.Location location = 1 [json_name = "location"];
      Specified by:
      getLocationCount in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • getLocation

      public DescriptorProtos.SourceCodeInfo.Location getLocation(int index)
       A Location identifies a piece of source code in a .proto file which
       corresponds to a particular definition.  This information is intended
       to be useful to IDEs, code indexers, documentation generators, and similar
       tools.
      
       For example, say we have a file like:
       message Foo {
       optional string foo = 1;
       }
       Let's look at just the field definition:
       optional string foo = 1;
       ^       ^^     ^^  ^  ^^^
       a       bc     de  f  ghi
       We have the following locations:
       span   path               represents
       [a,i)  [ 4, 0, 2, 0 ]     The whole field definition.
       [a,b)  [ 4, 0, 2, 0, 4 ]  The label (optional).
       [c,d)  [ 4, 0, 2, 0, 5 ]  The type (string).
       [e,f)  [ 4, 0, 2, 0, 1 ]  The name (foo).
       [g,h)  [ 4, 0, 2, 0, 3 ]  The number (1).
      
       Notes:
       - A location may refer to a repeated field itself (i.e. not to any
       particular index within it).  This is used whenever a set of elements are
       logically enclosed in a single code segment.  For example, an entire
       extend block (possibly containing multiple extension definitions) will
       have an outer location whose path refers to the "extensions" repeated
       field without an index.
       - Multiple locations may have the same path.  This happens when a single
       logical declaration is spread out across multiple places.  The most
       obvious example is the "extend" block again -- there may be multiple
       extend blocks in the same scope, each of which will have the same path.
       - A location's span is not always a subset of its parent's span.  For
       example, the "extendee" of an extension declaration appears at the
       beginning of the "extend" block and is shared by all extensions within
       the block.
       - Just because a location's span is a subset of some other location's span
       does not mean that it is a descendant.  For example, a "group" defines
       both a type and a field in a single declaration.  Thus, the locations
       corresponding to the type and field and their components will overlap.
       - Code which tries to interpret locations should probably be designed to
       ignore those that it doesn't understand, as more types of locations could
       be recorded in the future.
       
      repeated .google.protobuf.SourceCodeInfo.Location location = 1 [json_name = "location"];
      Specified by:
      getLocation in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • getLocationOrBuilder

      public DescriptorProtos.SourceCodeInfo.LocationOrBuilder getLocationOrBuilder(int index)
       A Location identifies a piece of source code in a .proto file which
       corresponds to a particular definition.  This information is intended
       to be useful to IDEs, code indexers, documentation generators, and similar
       tools.
      
       For example, say we have a file like:
       message Foo {
       optional string foo = 1;
       }
       Let's look at just the field definition:
       optional string foo = 1;
       ^       ^^     ^^  ^  ^^^
       a       bc     de  f  ghi
       We have the following locations:
       span   path               represents
       [a,i)  [ 4, 0, 2, 0 ]     The whole field definition.
       [a,b)  [ 4, 0, 2, 0, 4 ]  The label (optional).
       [c,d)  [ 4, 0, 2, 0, 5 ]  The type (string).
       [e,f)  [ 4, 0, 2, 0, 1 ]  The name (foo).
       [g,h)  [ 4, 0, 2, 0, 3 ]  The number (1).
      
       Notes:
       - A location may refer to a repeated field itself (i.e. not to any
       particular index within it).  This is used whenever a set of elements are
       logically enclosed in a single code segment.  For example, an entire
       extend block (possibly containing multiple extension definitions) will
       have an outer location whose path refers to the "extensions" repeated
       field without an index.
       - Multiple locations may have the same path.  This happens when a single
       logical declaration is spread out across multiple places.  The most
       obvious example is the "extend" block again -- there may be multiple
       extend blocks in the same scope, each of which will have the same path.
       - A location's span is not always a subset of its parent's span.  For
       example, the "extendee" of an extension declaration appears at the
       beginning of the "extend" block and is shared by all extensions within
       the block.
       - Just because a location's span is a subset of some other location's span
       does not mean that it is a descendant.  For example, a "group" defines
       both a type and a field in a single declaration.  Thus, the locations
       corresponding to the type and field and their components will overlap.
       - Code which tries to interpret locations should probably be designed to
       ignore those that it doesn't understand, as more types of locations could
       be recorded in the future.
       
      repeated .google.protobuf.SourceCodeInfo.Location location = 1 [json_name = "location"];
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static DescriptorProtos.SourceCodeInfo parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static DescriptorProtos.SourceCodeInfo parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static DescriptorProtos.SourceCodeInfo parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilder

      public static DescriptorProtos.SourceCodeInfo.Builder newBuilder()
    • newBuilder

    • dynamicMethod

      protected final Object dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1)
      Specified by:
      dynamicMethod in class com.google.protobuf.GeneratedMessageLite<DescriptorProtos.SourceCodeInfo,DescriptorProtos.SourceCodeInfo.Builder>
    • getDefaultInstance

      public static DescriptorProtos.SourceCodeInfo getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<DescriptorProtos.SourceCodeInfo> parser()