Package com.google.protobuf

## Class DescriptorProtos.SourceCodeInfo.Location

- java.lang.Object
- - com.google.protobuf.AbstractMessageLite
  - - com.google.protobuf.AbstractMessage
    - - com.google.protobuf.GeneratedMessage
      - - com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location

All Implemented Interfaces:
  `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`, `Message`, `MessageLite`, `MessageLiteOrBuilder`, `MessageOrBuilder`, `java.io.Serializable`

Enclosing class:
  DescriptorProtos.SourceCodeInfo

    public static final class DescriptorProtos.SourceCodeInfo.Location
    extends GeneratedMessage
    implements DescriptorProtos.SourceCodeInfo.LocationOrBuilder

Protobuf type `google.protobuf.SourceCodeInfo.Location`

See Also:
  Serialized Form

### Nested Class Summary

Nested Classes
`static class` `DescriptorProtos.SourceCodeInfo.Location.Builder` Protobuf type `google.protobuf.SourceCodeInfo.Location`

### Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage

`GeneratedMessage.BuilderParent, GeneratedMessage.ExtendableBuilder<MessageType extends GeneratedMessage.ExtendableMessage,​BuilderType extends GeneratedMessage.ExtendableBuilder>, GeneratedMessage.ExtendableMessage<MessageType extends GeneratedMessage.ExtendableMessage>, GeneratedMessage.ExtendableMessageOrBuilder<MessageType extends GeneratedMessage.ExtendableMessage>, GeneratedMessage.FieldAccessorTable, GeneratedMessage.GeneratedExtension<ContainingType extends Message,​Type>`

### Field Summary

Fields
`static int` `LEADING_COMMENTS_FIELD_NUMBER`
`static Parser<DescriptorProtos.SourceCodeInfo.Location>` `PARSER`
`static int` `PATH_FIELD_NUMBER`
`static int` `SPAN_FIELD_NUMBER`
`static int` `TRAILING_COMMENTS_FIELD_NUMBER`

### Fields inherited from class com.google.protobuf.GeneratedMessage

`alwaysUseFieldBuilders`

### Fields inherited from class com.google.protobuf.AbstractMessageLite

`memoizedHashCode`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static DescriptorProtos.SourceCodeInfo.Location` `getDefaultInstance()`
`DescriptorProtos.SourceCodeInfo.Location` `getDefaultInstanceForType()` Get an instance of the type with no fields set.
`static Descriptors.Descriptor` `getDescriptor()`
`java.lang.String` `getLeadingComments()` `optional string leading_comments = 3;`
`ByteString` `getLeadingCommentsBytes()` `optional string leading_comments = 3;`
`Parser<DescriptorProtos.SourceCodeInfo.Location>` `getParserForType()` Gets the parser for a message of the same type as this message.
`int` `getPath​(int index)` `repeated int32 path = 1 [packed = true];`
`int` `getPathCount()` `repeated int32 path = 1 [packed = true];`
`java.util.List<java.lang.Integer>` `getPathList()` `repeated int32 path = 1 [packed = true];`
`int` `getSerializedSize()` Get the number of bytes required to encode this message.
`int` `getSpan​(int index)` `repeated int32 span = 2 [packed = true];`
`int` `getSpanCount()` `repeated int32 span = 2 [packed = true];`
`java.util.List<java.lang.Integer>` `getSpanList()` `repeated int32 span = 2 [packed = true];`
`java.lang.String` `getTrailingComments()` `optional string trailing_comments = 4;`
`ByteString` `getTrailingCommentsBytes()` `optional string trailing_comments = 4;`
`UnknownFieldSet` `getUnknownFields()` Get the `UnknownFieldSet` for this message.
`boolean` `hasLeadingComments()` `optional string leading_comments = 3;`
`boolean` `hasTrailingComments()` `optional string trailing_comments = 4;`
`protected GeneratedMessage.FieldAccessorTable` `internalGetFieldAccessorTable()` Get the FieldAccessorTable for this type.
`boolean` `isInitialized()` Returns true if all required fields in the message and all embedded messages are set, false otherwise.
`static DescriptorProtos.SourceCodeInfo.Location.Builder` `newBuilder()`
`static DescriptorProtos.SourceCodeInfo.Location.Builder` `newBuilder​(DescriptorProtos.SourceCodeInfo.Location prototype)`
`DescriptorProtos.SourceCodeInfo.Location.Builder` `newBuilderForType()` Constructs a new builder for a message of the same type as this message.
`protected DescriptorProtos.SourceCodeInfo.Location.Builder` `newBuilderForType​(GeneratedMessage.BuilderParent parent)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseDelimitedFrom​(java.io.InputStream input)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseDelimitedFrom​(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(byte[] data)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(byte[] data, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(ByteString data)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(ByteString data, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(CodedInputStream input)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(CodedInputStream input, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(java.io.InputStream input)`
`static DescriptorProtos.SourceCodeInfo.Location` `parseFrom​(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)`
`DescriptorProtos.SourceCodeInfo.Location.Builder` `toBuilder()` Constructs a builder initialized with the current message.
`protected java.lang.Object` `writeReplace()` Replaces this object in the output stream with a serialized form.
`void` `writeTo​(CodedOutputStream output)` Serializes the message and writes it to `output`.

### Methods inherited from class com.google.protobuf.GeneratedMessage

`getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, makeExtensionsImmutable, newFileScopedGeneratedExtension, newFileScopedGeneratedExtension, newMessageScopedGeneratedExtension, newMessageScopedGeneratedExtension, parseUnknownField`

### Methods inherited from class com.google.protobuf.AbstractMessage

`equals, findInitializationErrors, getInitializationErrorString, hashCode, hashFields, toString`

### Methods inherited from class com.google.protobuf.AbstractMessageLite

`checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface com.google.protobuf.MessageLite

`toByteArray, toByteString, writeDelimitedTo, writeTo`

### Methods inherited from interface com.google.protobuf.MessageOrBuilder

`findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof`

### Field Detail

#### PARSER

    public static Parser<DescriptorProtos.SourceCodeInfo.Location> PARSER

#### PATH_FIELD_NUMBER

    public static final int PATH_FIELD_NUMBER

See Also:
  Constant Field Values

#### SPAN_FIELD_NUMBER

    public static final int SPAN_FIELD_NUMBER

See Also:
  Constant Field Values

#### LEADING_COMMENTS_FIELD_NUMBER

    public static final int LEADING_COMMENTS_FIELD_NUMBER

See Also:
  Constant Field Values

#### TRAILING_COMMENTS_FIELD_NUMBER

    public static final int TRAILING_COMMENTS_FIELD_NUMBER

See Also:
  Constant Field Values

### Method Detail

#### getDefaultInstance

    public static DescriptorProtos.SourceCodeInfo.Location getDefaultInstance()

#### getDefaultInstanceForType

    public DescriptorProtos.SourceCodeInfo.Location 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.Location> 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`

#### getPathList

    public java.util.List<java.lang.Integer> getPathList()

`repeated int32 path = 1 [packed = true];`

     Identifies which part of the FileDescriptorProto was defined at this
     location.
     Each element is a field number or an index.  They form a path from
     the root FileDescriptorProto to the place where the definition.  For
     example, this path:
       [ 4, 3, 2, 7, 1 ]
     refers to:
       file.message_type(3)  // 4, 3
           .field(7)         // 2, 7
           .name()           // 1
     This is because FileDescriptorProto.message_type has field number 4:
       repeated DescriptorProto message_type = 4;
     and DescriptorProto.field has field number 2:
       repeated FieldDescriptorProto field = 2;
     and FieldDescriptorProto.name has field number 1:
       optional string name = 1;
     Thus, the above path gives the location of a field name.  If we removed
     the last element:
       [ 4, 3, 2, 7 ]
     this path refers to the whole field declaration (from the beginning
     of the label to the terminating semicolon).

Specified by:
  `getPathList` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getPathCount

    public int getPathCount()

`repeated int32 path = 1 [packed = true];`

     Identifies which part of the FileDescriptorProto was defined at this
     location.
     Each element is a field number or an index.  They form a path from
     the root FileDescriptorProto to the place where the definition.  For
     example, this path:
       [ 4, 3, 2, 7, 1 ]
     refers to:
       file.message_type(3)  // 4, 3
           .field(7)         // 2, 7
           .name()           // 1
     This is because FileDescriptorProto.message_type has field number 4:
       repeated DescriptorProto message_type = 4;
     and DescriptorProto.field has field number 2:
       repeated FieldDescriptorProto field = 2;
     and FieldDescriptorProto.name has field number 1:
       optional string name = 1;
     Thus, the above path gives the location of a field name.  If we removed
     the last element:
       [ 4, 3, 2, 7 ]
     this path refers to the whole field declaration (from the beginning
     of the label to the terminating semicolon).

Specified by:
  `getPathCount` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getPath

    public int getPath​(int index)

`repeated int32 path = 1 [packed = true];`

     Identifies which part of the FileDescriptorProto was defined at this
     location.
     Each element is a field number or an index.  They form a path from
     the root FileDescriptorProto to the place where the definition.  For
     example, this path:
       [ 4, 3, 2, 7, 1 ]
     refers to:
       file.message_type(3)  // 4, 3
           .field(7)         // 2, 7
           .name()           // 1
     This is because FileDescriptorProto.message_type has field number 4:
       repeated DescriptorProto message_type = 4;
     and DescriptorProto.field has field number 2:
       repeated FieldDescriptorProto field = 2;
     and FieldDescriptorProto.name has field number 1:
       optional string name = 1;
     Thus, the above path gives the location of a field name.  If we removed
     the last element:
       [ 4, 3, 2, 7 ]
     this path refers to the whole field declaration (from the beginning
     of the label to the terminating semicolon).

Specified by:
  `getPath` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getSpanList

    public java.util.List<java.lang.Integer> getSpanList()

`repeated int32 span = 2 [packed = true];`

     Always has exactly three or four elements: start line, start column,
     end line (optional, otherwise assumed same as start line), end column.
     These are packed into a single field for efficiency.  Note that line
     and column numbers are zero-based -- typically you will want to add
     1 to each before displaying to a user.

Specified by:
  `getSpanList` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getSpanCount

    public int getSpanCount()

`repeated int32 span = 2 [packed = true];`

     Always has exactly three or four elements: start line, start column,
     end line (optional, otherwise assumed same as start line), end column.
     These are packed into a single field for efficiency.  Note that line
     and column numbers are zero-based -- typically you will want to add
     1 to each before displaying to a user.

Specified by:
  `getSpanCount` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getSpan

    public int getSpan​(int index)

`repeated int32 span = 2 [packed = true];`

     Always has exactly three or four elements: start line, start column,
     end line (optional, otherwise assumed same as start line), end column.
     These are packed into a single field for efficiency.  Note that line
     and column numbers are zero-based -- typically you will want to add
     1 to each before displaying to a user.

Specified by:
  `getSpan` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### hasLeadingComments

    public boolean hasLeadingComments()

`optional string leading_comments = 3;`

     If this SourceCodeInfo represents a complete declaration, these are any
     comments appearing before and after the declaration which appear to be
     attached to the declaration.
     A series of line comments appearing on consecutive lines, with no other
     tokens appearing on those lines, will be treated as a single comment.
     Only the comment content is provided; comment markers (e.g. //) are
     stripped out.  For block comments, leading whitespace and an asterisk
     will be stripped from the beginning of each line other than the first.
     Newlines are included in the output.
     Examples:
       optional int32 foo = 1;  // Comment attached to foo.
       // Comment attached to bar.
       optional int32 bar = 2;
       optional string baz = 3;
       // Comment attached to baz.
       // Another line attached to baz.
       // Comment attached to qux.
       //
       // Another line attached to qux.
       optional double qux = 4;
       optional string corge = 5;
       /* Block comment attached
        * to corge.  Leading asterisks
        * will be removed. */
       /* Block comment attached to
        * grault. */
       optional int32 grault = 6;

Specified by:
  `hasLeadingComments` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getLeadingComments

    public java.lang.String getLeadingComments()

`optional string leading_comments = 3;`

     If this SourceCodeInfo represents a complete declaration, these are any
     comments appearing before and after the declaration which appear to be
     attached to the declaration.
     A series of line comments appearing on consecutive lines, with no other
     tokens appearing on those lines, will be treated as a single comment.
     Only the comment content is provided; comment markers (e.g. //) are
     stripped out.  For block comments, leading whitespace and an asterisk
     will be stripped from the beginning of each line other than the first.
     Newlines are included in the output.
     Examples:
       optional int32 foo = 1;  // Comment attached to foo.
       // Comment attached to bar.
       optional int32 bar = 2;
       optional string baz = 3;
       // Comment attached to baz.
       // Another line attached to baz.
       // Comment attached to qux.
       //
       // Another line attached to qux.
       optional double qux = 4;
       optional string corge = 5;
       /* Block comment attached
        * to corge.  Leading asterisks
        * will be removed. */
       /* Block comment attached to
        * grault. */
       optional int32 grault = 6;

Specified by:
  `getLeadingComments` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getLeadingCommentsBytes

    public ByteString getLeadingCommentsBytes()

`optional string leading_comments = 3;`

     If this SourceCodeInfo represents a complete declaration, these are any
     comments appearing before and after the declaration which appear to be
     attached to the declaration.
     A series of line comments appearing on consecutive lines, with no other
     tokens appearing on those lines, will be treated as a single comment.
     Only the comment content is provided; comment markers (e.g. //) are
     stripped out.  For block comments, leading whitespace and an asterisk
     will be stripped from the beginning of each line other than the first.
     Newlines are included in the output.
     Examples:
       optional int32 foo = 1;  // Comment attached to foo.
       // Comment attached to bar.
       optional int32 bar = 2;
       optional string baz = 3;
       // Comment attached to baz.
       // Another line attached to baz.
       // Comment attached to qux.
       //
       // Another line attached to qux.
       optional double qux = 4;
       optional string corge = 5;
       /* Block comment attached
        * to corge.  Leading asterisks
        * will be removed. */
       /* Block comment attached to
        * grault. */
       optional int32 grault = 6;

Specified by:
  `getLeadingCommentsBytes` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### hasTrailingComments

    public boolean hasTrailingComments()

`optional string trailing_comments = 4;`

Specified by:
  `hasTrailingComments` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getTrailingComments

    public java.lang.String getTrailingComments()

`optional string trailing_comments = 4;`

Specified by:
  `getTrailingComments` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### getTrailingCommentsBytes

    public ByteString getTrailingCommentsBytes()

`optional string trailing_comments = 4;`

Specified by:
  `getTrailingCommentsBytes` in interface `DescriptorProtos.SourceCodeInfo.LocationOrBuilder`

#### 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 java.io.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:
  `java.io.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 java.lang.Object writeReplace()
                                     throws java.io.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:
  `java.io.ObjectStreamException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(ByteString data)
                                                              throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(ByteString data,
                                                                     ExtensionRegistryLite extensionRegistry)
                                                              throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(byte[] data)
                                                              throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(byte[] data,
                                                                     ExtensionRegistryLite extensionRegistry)
                                                              throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(java.io.InputStream input)
                                                              throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(java.io.InputStream input,
                                                                     ExtensionRegistryLite extensionRegistry)
                                                              throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseDelimitedFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseDelimitedFrom​(java.io.InputStream input)
                                                                       throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseDelimitedFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseDelimitedFrom​(java.io.InputStream input,
                                                                              ExtensionRegistryLite extensionRegistry)
                                                                       throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(CodedInputStream input)
                                                              throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseFrom

    public static DescriptorProtos.SourceCodeInfo.Location parseFrom​(CodedInputStream input,
                                                                     ExtensionRegistryLite extensionRegistry)
                                                              throws java.io.IOException

Throws:
  `java.io.IOException`

#### newBuilder

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

#### newBuilderForType

    public DescriptorProtos.SourceCodeInfo.Location.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

    public static DescriptorProtos.SourceCodeInfo.Location.Builder newBuilder​(DescriptorProtos.SourceCodeInfo.Location prototype)

#### toBuilder

    public DescriptorProtos.SourceCodeInfo.Location.Builder 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

    protected DescriptorProtos.SourceCodeInfo.Location.Builder newBuilderForType​(GeneratedMessage.BuilderParent parent)

Specified by:
  `newBuilderForType` in class `GeneratedMessage`