Go to the documentation of this file.
20 #include "absl/strings/internal/cord_internal.h"
25 namespace cord_internal {
45 if (
n == 0)
return nullptr;
110 size_t length = edge_offset +
n;
114 assert(edge_offset < edge->
length);
116 if (length < edge->
length) {
117 return {Substring(edge, edge_offset,
n),
length};
125 size_t subtree_end = 1;
132 if (
length == 0)
return {subtree, 0};
156 node = edge->
btree();
165 subtree->
edges_[subtree_end++] = right;
178 subtree->
edges_[subtree_end++] = Substring(edge, 0,
length);
CordRep * edges_[kMaxCapacity]
static void Unref(CordRep *rep)
CordRepBtree * node_[CordRepBtree::kMaxDepth]
#define ABSL_NAMESPACE_END
static CordRepBtree * New(int height=0)
#define ABSL_NAMESPACE_BEGIN
constexpr bool IsFlat() const
ReadResult Read(size_t edge_offset, size_t n)
CordRepBtreeNavigator::ReadResult ReadResult
constexpr bool IsExternal() const
uint8_t index_[CordRepBtree::kMaxDepth]
CordRep * Edge(size_t index) const
static CordRep * Ref(CordRep *rep)
bool IsDataEdge(const CordRep *edge)
CordRepSubstring * substring()
grpc
Author(s):
autogenerated on Fri May 16 2025 02:58:03