Package com.google.protobuf

# Class TextFormatParseInfoTree

java.lang.Object
com.google.protobuf.TextFormatParseInfoTree

public class TextFormatParseInfoTree extends Object
Data structure which is populated with the locations of each field value parsed from the text.

The locations of primary fields values are retrieved by `getLocation` or `getLocations`. The locations of sub message values are within nested `TextFormatParseInfoTree`s and are retrieve by `getNestedTree` or `getNestedTrees`.

The `TextFormatParseInfoTree` is created by a Builder.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`TextFormatParseInfoTree.Builder`
Builder for a `TextFormatParseInfoTree`.

## Method Summary

Modifier and Type
Method
Description
`static TextFormatParseInfoTree.Builder`
`builder()`
Create a builder for a `ParseInfoTree`.
`TextFormatParseLocation`
`getLocation(Descriptors.FieldDescriptor fieldDescriptor, int index)`
Get the location in the source of a field's value.
`List<TextFormatParseLocation>`
`getLocations(Descriptors.FieldDescriptor fieldDescriptor)`
Retrieve all the locations of a field.
`TextFormatParseInfoTree`
`getNestedTree(Descriptors.FieldDescriptor fieldDescriptor, int index)`
Returns the parse info tree for the given field, which must be a message type.
`List<TextFormatParseInfoTree>`
`getNestedTrees(Descriptors.FieldDescriptor fieldDescriptor)`
Retrieve a list of all the location information trees for a sub message field.

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### getLocations

public List<TextFormatParseLocation> getLocations(Descriptors.FieldDescriptor fieldDescriptor)
Retrieve all the locations of a field.

Parameters:
  `fieldDescriptor` - the `Descriptors.FieldDescriptor` of the desired field
Returns:
  a list of the locations of values of the field. If there are not values or the field doesn't exist, an empty list is returned.

### getLocation

public TextFormatParseLocation getLocation(Descriptors.FieldDescriptor fieldDescriptor, int index)
Get the location in the source of a field's value.

Returns the `TextFormatParseLocation` for index-th value of the field in the parsed text.

Parameters:
  `fieldDescriptor` - the `Descriptors.FieldDescriptor` of the desired field
  `index` - the index of the value.
Returns:
  the `TextFormatParseLocation` of the value
Throws:
  `IllegalArgumentException` - index is out of range

### getNestedTrees

public List<TextFormatParseInfoTree> getNestedTrees(Descriptors.FieldDescriptor fieldDescriptor)
Retrieve a list of all the location information trees for a sub message field.

Parameters:
  `fieldDescriptor` - the `Descriptors.FieldDescriptor` of the desired field
Returns:
  A list of `TextFormatParseInfoTree`

### getNestedTree

public TextFormatParseInfoTree getNestedTree(Descriptors.FieldDescriptor fieldDescriptor, int index)
Returns the parse info tree for the given field, which must be a message type.

Parameters:
  `fieldDescriptor` - the `Descriptors.FieldDescriptor` of the desired sub message
  `index` - the index of message value.
Returns:
  the `ParseInfoTree` of the message value. `null` is returned if the field doesn't exist or the index is out of range.
Throws:
  `IllegalArgumentException` - if index is out of range

### builder

public static TextFormatParseInfoTree.Builder builder()
Create a builder for a `ParseInfoTree`.

Returns:
  the builder