Public Member Functions | Private Member Functions | Private Attributes | List of all members
com.google.protobuf.RopeByteString.PieceIterator Class Reference
Inheritance diagram for com.google.protobuf.RopeByteString.PieceIterator:
Inheritance graph
[legend]

Public Member Functions

boolean hasNext ()
 
boolean hasNext ()
 
LeafByteString next ()
 
LeafByteString next ()
 
void remove ()
 
void remove ()
 

Private Member Functions

LeafByteString getLeafByLeft (ByteString root)
 
LeafByteString getLeafByLeft (ByteString root)
 
LeafByteString getNextNonEmptyLeaf ()
 
LeafByteString getNextNonEmptyLeaf ()
 
 PieceIterator (ByteString root)
 
 PieceIterator (ByteString root)
 

Private Attributes

final ArrayDeque< RopeByteString > breadCrumbs
 
LeafByteString next
 

Detailed Description

This class is a continuable tree traversal, which keeps the state information which would exist on the stack in a recursive traversal instead on a stack of "Bread Crumbs". The maximum depth of the stack in this iterator is the same as the depth of the tree being traversed.

This iterator is used to implement RopeByteString#equalsFragments(ByteString).

Definition at line 715 of file bloaty/third_party/protobuf/java/core/src/main/java/com/google/protobuf/RopeByteString.java.

Constructor & Destructor Documentation

◆ PieceIterator() [1/2]

com.google.protobuf.RopeByteString.PieceIterator.PieceIterator ( ByteString  root)
inlineprivate

◆ PieceIterator() [2/2]

com.google.protobuf.RopeByteString.PieceIterator.PieceIterator ( ByteString  root)
inlineprivate

Member Function Documentation

◆ getLeafByLeft() [1/2]

LeafByteString com.google.protobuf.RopeByteString.PieceIterator.getLeafByLeft ( ByteString  root)
inlineprivate

◆ getLeafByLeft() [2/2]

LeafByteString com.google.protobuf.RopeByteString.PieceIterator.getLeafByLeft ( ByteString  root)
inlineprivate

◆ getNextNonEmptyLeaf() [1/2]

LeafByteString com.google.protobuf.RopeByteString.PieceIterator.getNextNonEmptyLeaf ( )
inlineprivate

◆ getNextNonEmptyLeaf() [2/2]

LeafByteString com.google.protobuf.RopeByteString.PieceIterator.getNextNonEmptyLeaf ( )
inlineprivate

◆ hasNext() [1/2]

boolean com.google.protobuf.RopeByteString.PieceIterator.hasNext ( )
inline

◆ hasNext() [2/2]

boolean com.google.protobuf.RopeByteString.PieceIterator.hasNext ( )
inline

◆ next() [1/2]

LeafByteString com.google.protobuf.RopeByteString.PieceIterator.next ( )
inline

Returns the next item and advances one com.google.protobuf.ByteString.LeafByteString.

Returns
next non-empty LeafByteString or
null

Definition at line 767 of file bloaty/third_party/protobuf/java/core/src/main/java/com/google/protobuf/RopeByteString.java.

◆ next() [2/2]

LeafByteString com.google.protobuf.RopeByteString.PieceIterator.next ( )
inline

Returns the next item and advances one com.google.protobuf.ByteString.LeafByteString.

Returns
next non-empty LeafByteString or
null

Definition at line 788 of file protobuf/java/core/src/main/java/com/google/protobuf/RopeByteString.java.

◆ remove() [1/2]

void com.google.protobuf.RopeByteString.PieceIterator.remove ( )
inline

◆ remove() [2/2]

void com.google.protobuf.RopeByteString.PieceIterator.remove ( )
inline

Member Data Documentation

◆ breadCrumbs

final ArrayDeque< RopeByteString > com.google.protobuf.RopeByteString.PieceIterator.breadCrumbs
private

◆ next

LeafByteString com.google.protobuf.RopeByteString.PieceIterator.next
private

The documentation for this class was generated from the following file:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:07