template <size_t RequestedSpace>
class MicroStringExtraImpl
Defined at line 566 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
MicroStringExtra lays out the memory as:
[ MicroString ] [ extra char buffer ]
which in little endian ends up as
[ char size/tag ] [ MicroStrings's inline space ] [ extra char buffer ]
so from the inline_head() position we can access all the normal and extra
buffer bytes.
This does not work on bigendian so we disable Extra for now there.
Public Members
static const size_t kInlineCapacity
Public Methods
void MicroStringExtraImpl<RequestedSpace> ()
Defined at line 579 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void MicroStringExtraImpl<RequestedSpace> (Arena * arena, const MicroStringExtraImpl<RequestedSpace> & other)
Defined at line 585 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void Set (const MicroStringExtraImpl<RequestedSpace> & other, Arena * arena)
Redefine the setters, passing the extended inline capacity.
Defined at line 590 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void Set (absl::string_view data, Arena * arena)
Defined at line 593 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void Set (const std::string & data, Arena * arena)
Defined at line 596 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void Set (const char * data, Arena * arena)
Defined at line 599 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void Set (std::string && str, Arena * arena)
Defined at line 602 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void SetAlias (absl::string_view data, Arena * arena)
Defined at line 606 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
size_t Capacity ()
Defined at line 612 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
void InternalSwap (MicroStringExtraImpl<RequestedSpace> * other)
Defined at line 616 of file ../../third_party/protobuf/src/src/google/protobuf/micro_string.h
Friends
template <size_t RequestedSpace>
class MicroString