Class DescriptorProtos.SourceCodeInfo

All Implemented Interfaces:
DescriptorProtos.SourceCodeInfoOrBuilder, Message, MessageLite, MessageLiteOrBuilder, MessageOrBuilder, Serializable
Enclosing class:
DescriptorProtos

public static final class DescriptorProtos.SourceCodeInfo extends GeneratedMessage implements DescriptorProtos.SourceCodeInfoOrBuilder
Protobuf type google.protobuf.SourceCodeInfo
 Encapsulates information about the original source file from which a
 FileDescriptorProto was generated.
 
See Also:
  • Field Details

  • Method Details

    • getDefaultInstance

      public static DescriptorProtos.SourceCodeInfo getDefaultInstance()
    • getDefaultInstanceForType

      public DescriptorProtos.SourceCodeInfo getDefaultInstanceForType()
      Description copied from interface: MessageLiteOrBuilder
      Get an instance of the type with no fields set. Because no fields are set, all getters for singular fields will return default values and repeated fields will appear empty. This may or may not be a singleton. This differs from the getDefaultInstance() method of generated message classes in that this method is an abstract method of the MessageLite interface whereas getDefaultInstance() is a static method of a specific class. They return the same thing.
      Specified by:
      getDefaultInstanceForType in interface MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface MessageOrBuilder
    • getUnknownFields

      public final UnknownFieldSet getUnknownFields()
      Description copied from interface: MessageOrBuilder
      Get the UnknownFieldSet for this message.
      Specified by:
      getUnknownFields in interface MessageOrBuilder
      Overrides:
      getUnknownFields in class GeneratedMessage
    • getDescriptor

      public static final Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Description copied from class: GeneratedMessage
      Get the FieldAccessorTable for this type. We can't have the message class pass this in to the constructor because of bootstrapping trouble with DescriptorProtos.
      Specified by:
      internalGetFieldAccessorTable in class GeneratedMessage
    • getParserForType

      public Parser<DescriptorProtos.SourceCodeInfo> getParserForType()
      Description copied from interface: MessageLite
      Gets the parser for a message of the same type as this message.
      Specified by:
      getParserForType in interface Message
      Specified by:
      getParserForType in interface MessageLite
      Overrides:
      getParserForType in class GeneratedMessage
    • getLocationList

      repeated .google.protobuf.SourceCodeInfo.Location location = 1;
       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 descendent.  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.
       
      Specified by:
      getLocationList in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • getLocationOrBuilderList

      public List<? extends DescriptorProtos.SourceCodeInfo.LocationOrBuilder> getLocationOrBuilderList()
      repeated .google.protobuf.SourceCodeInfo.Location location = 1;
       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 descendent.  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.
       
      Specified by:
      getLocationOrBuilderList in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • getLocationCount

      public int getLocationCount()
      repeated .google.protobuf.SourceCodeInfo.Location location = 1;
       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 descendent.  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.
       
      Specified by:
      getLocationCount in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • getLocation

      public DescriptorProtos.SourceCodeInfo.Location getLocation(int index)
      repeated .google.protobuf.SourceCodeInfo.Location location = 1;
       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 descendent.  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.
       
      Specified by:
      getLocation in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • getLocationOrBuilder

      public DescriptorProtos.SourceCodeInfo.LocationOrBuilder getLocationOrBuilder(int index)
      repeated .google.protobuf.SourceCodeInfo.Location location = 1;
       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 descendent.  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.
       
      Specified by:
      getLocationOrBuilder in interface DescriptorProtos.SourceCodeInfoOrBuilder
    • isInitialized

      public final boolean isInitialized()
      Description copied from interface: MessageLiteOrBuilder
      Returns true if all required fields in the message and all embedded messages are set, false otherwise.

      See also: MessageOrBuilder.getInitializationErrorString()

      Specified by:
      isInitialized in interface MessageLiteOrBuilder
      Overrides:
      isInitialized in class GeneratedMessage
    • writeTo

      public void writeTo(CodedOutputStream output) throws IOException
      Description copied from interface: MessageLite
      Serializes the message and writes it to output. This does not flush or close the stream.
      Specified by:
      writeTo in interface MessageLite
      Overrides:
      writeTo in class AbstractMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Description copied from interface: MessageLite
      Get the number of bytes required to encode this message. The result is only computed on the first call and memoized after that.
      Specified by:
      getSerializedSize in interface MessageLite
      Overrides:
      getSerializedSize in class AbstractMessage
    • writeReplace

      protected Object writeReplace() throws ObjectStreamException
      Description copied from class: GeneratedMessage
      Replaces this object in the output stream with a serialized form. Part of Java's serialization magic. Generated sub-classes must override this method by calling return super.writeReplace();
      Overrides:
      writeReplace in class GeneratedMessage
      Returns:
      a SerializedForm of this message
      Throws:
      ObjectStreamException
    • parseFrom

      Throws:
      InvalidProtocolBufferException
    • parseFrom

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

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

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

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

      public static DescriptorProtos.SourceCodeInfo parseFrom(InputStream input, 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, ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

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

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

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

      public DescriptorProtos.SourceCodeInfo.Builder newBuilderForType()
      Description copied from interface: MessageLite
      Constructs a new builder for a message of the same type as this message.
      Specified by:
      newBuilderForType in interface Message
      Specified by:
      newBuilderForType in interface MessageLite
    • newBuilder

    • toBuilder

      Description copied from interface: MessageLite
      Constructs a builder initialized with the current message. Use this to derive a new message from the current one.
      Specified by:
      toBuilder in interface Message
      Specified by:
      toBuilder in interface MessageLite
    • newBuilderForType

      Specified by:
      newBuilderForType in class GeneratedMessage