MCPcopy Create free account
hub / github.com/KDE/labplot / ParseStringView

Function ParseStringView

src/3rdparty/mcap/include/mcap/internal.hpp:104–116  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

102}
103
104inline Status ParseStringView(const std::byte* data, uint64_t maxSize, std::string_view* output) {
105 uint32_t size = 0;
106 if (auto status = ParseUint32(data, maxSize, &size); !status.ok()) {
107 const auto msg = StrCat("cannot read string size: ", status.message);
108 return Status{StatusCode::InvalidRecord, msg};
109 }
110 if (uint64_t(size) > (maxSize - 4)) {
111 const auto msg = StrCat("string size ", size, " exceeds remaining bytes ", (maxSize - 4));
112 return Status(StatusCode::InvalidRecord, msg);
113 }
114 *output = std::string_view(reinterpret_cast<const char*>(data + 4), size);
115 return StatusCode::Success;
116}
117
118inline Status ParseString(const std::byte* data, uint64_t maxSize, std::string* output) {
119 uint32_t size = 0;

Callers 1

ParseKeyValueMapFunction · 0.85

Calls 4

ParseUint32Function · 0.85
StrCatFunction · 0.85
okMethod · 0.80
StatusClass · 0.70

Tested by

no test coverage detected