simdjson  3.11.0
Ridiculously Fast JSON
implementation.h
1 #ifndef SIMDJSON_ICELAKE_IMPLEMENTATION_H
2 #define SIMDJSON_ICELAKE_IMPLEMENTATION_H
3 
4 #ifndef SIMDJSON_CONDITIONAL_INCLUDE
5 #include "simdjson/icelake/base.h"
6 #include "simdjson/implementation.h"
7 #include "simdjson/internal/instruction_set.h"
8 #endif // SIMDJSON_CONDITIONAL_INCLUDE
9 
10 // The constructor may be executed on any host, so we take care not to use SIMDJSON_TARGET_ICELAKE
11 namespace simdjson {
12 namespace icelake {
13 
17 class implementation final : public simdjson::implementation {
18 public:
19  simdjson_inline implementation() : simdjson::implementation(
20  "icelake",
21  "Intel/AMD AVX512",
22  internal::instruction_set::AVX2 | internal::instruction_set::PCLMULQDQ | internal::instruction_set::BMI1 | internal::instruction_set::BMI2 | internal::instruction_set::AVX512F | internal::instruction_set::AVX512DQ | internal::instruction_set::AVX512CD | internal::instruction_set::AVX512BW | internal::instruction_set::AVX512VL | internal::instruction_set::AVX512VBMI2
23  ) {}
24  simdjson_warn_unused error_code create_dom_parser_implementation(
25  size_t capacity,
26  size_t max_length,
27  std::unique_ptr<internal::dom_parser_implementation>& dst
28  ) const noexcept final;
29  simdjson_warn_unused error_code minify(const uint8_t *buf, size_t len, uint8_t *dst, size_t &dst_len) const noexcept final;
30  simdjson_warn_unused bool validate_utf8(const char *buf, size_t len) const noexcept final;
31 };
32 
33 } // namespace icelake
34 } // namespace simdjson
35 
36 #endif // SIMDJSON_ICELAKE_IMPLEMENTATION_H
An implementation of simdjson for a particular CPU architecture.
The top level simdjson namespace, containing everything the library provides.
Definition: base.h:8
simdjson_warn_unused bool validate_utf8(const char *buf, size_t len) noexcept
Validate the UTF-8 string.
error_code
All possible errors returned by simdjson.
Definition: error.h:19
std::string minify(T x)
Minifies a JSON element or document, printing the smallest possible valid JSON.