1 #ifndef SIMDJSON_PADDED_STRING_VIEW_INL_H
2 #define SIMDJSON_PADDED_STRING_VIEW_INL_H
4 #include "simdjson/padded_string_view.h"
5 #include "simdjson/error-inl.h"
12 : std::string_view(s, len), _capacity(capacity)
14 if(_capacity < len) { _capacity = len; }
28 : std::string_view(s), _capacity(s.capacity())
33 : std::string_view(s), _capacity(capacity)
35 if(_capacity < s.length()) { _capacity = s.length(); }
43 if(length() < 3) {
return false; }
44 if (std::memcmp(data(),
"\xEF\xBB\xBF", 3) == 0) {
52 #if SIMDJSON_EXCEPTIONS
57 const auto len = s.size();
User-provided string that promises it has extra padded bytes at the end for use with parser::parse().
bool remove_utf8_bom() noexcept
Remove the UTF-8 Byte Order Mark (BOM) if it exists.
size_t padding() const noexcept
The amount of padding on the string (capacity() - length())
size_t capacity() const noexcept
The number of allocated bytes.
padded_string_view() noexcept=default
Create an empty padded_string_view.
The top level simdjson namespace, containing everything the library provides.
std::ostream & operator<<(std::ostream &out, error_code error) noexcept
Write the error message to the output stream.
padded_string_view pad(std::string &s) noexcept
Create a padded_string_view from a string.
constexpr size_t SIMDJSON_PADDING
The amount of padding needed in a buffer to parse JSON.
The result of a simdjson operation that could fail.