Jsonifier

A few classes for parsing and serializing objects from/into JSON, in C++ - very rapidly.

MIT License

Stars
28

Bot releases are hidden (Show)

Jsonifier - Release v0.9.95 Latest Release

Published by RealTimeChris 6 months ago

Hey everyone, just a new release with the following changes being primary:

  • Modified some lines to correct cleanliness.
  • Updated the raw_json_data class to remove superfluous functions.
  • Updated some of the error_codes.
  • Modified the parser, validator, serializer, and minifier classes to reduce function call overhead.
  • Refactored the usage of ascii_classes to instead utilize the json_structural_type enumeration.
Jsonifier - Release v0.9.95

Published by RealTimeChris 8 months ago

Testing.

Jsonifier - Release v0.9.94

Published by RealTimeChris 10 months ago

Hey everyone, just a new release with the following changes being primary:

  • Implemented a prettify function that utilizes simd instructions.
  • Implemented a minify function that utilizes simd instructions.
  • Implemented a validate function that utilizes simd instructions.
  • Implemented a function for parsing/serializing into std::variant types.
  • Implemented a fix to a buffer-overflow.
Jsonifier - Release v0.9.94

Published by RealTimeChris 10 months ago

Hey everyone, just a new release with the following changes being primary:

  • Implemented a prettify function that utilizes simd instructions.
  • Implemented a minify function that utilizes simd instructions.
  • Implemented a validate function that utilizes simd instructions.
  • Implemented a function for parsing/serializing into std::variant types.
  • Implemented a fix to a buffer-overflow.
Jsonifier - Release v0.9.94

Published by RealTimeChris 10 months ago

Hey everyone, just a new release with the following changes being primary:

  • Implemented a prettify function that utilizes simd instructions.
  • Implemented a minify function that utilizes simd instructions.
  • Implemented a validate function that utilizes simd instructions.
  • Implemented a function for parsing/serializing into std::variant types.
  • Implemented a fix to a buffer-overflow.
Jsonifier - Release v0.9.93

Published by RealTimeChris 10 months ago

Hey everyone, just a new release with the following changes being primary:

  • Refactored the simd_base classes' functions to use perfect forwarding.
  • Updated some types.
  • Fixed an issue related to parsing/serializing raw array types.
  • Implemented a jsonifier_value_t for parsing/serializing single values.
  • Updated the parsing and serializing string functions to utilize a fuller range of simd-types.
Jsonifier - Release v0.9.92

Published by RealTimeChris 11 months ago

Hey everyone, just a new release with the following changes being primary:

  • Refactored the number-parsing functions to use lookup tables instead of subtraction operations.
  • Refactored the simd_string_reader class.
  • Refactored some functions with fold-expressions for manual loop unrolliing.
  • Refactored the toChars and parseNumber functions.
  • Removed some superfluous typedefs.
  • Testing new simd logic for string parsing.
  • Renamed some types to snake_case.
  • Refactored the jsonifier_core, parser, and serializer classes to utilize the CRTP.
  • Refactored the simd_structural_iterator and serialization_iterator classes to remain contained.
Jsonifier - Release v0.9.92

Published by RealTimeChris 11 months ago

Hey everyone, just a new release with the following changes being primary:

  • Refactored the number-parsing functions to use lookup tables instead of subtraction operations.
  • Refactored the simd_string_reader class.
  • Refactored some functions with fold-expressions for manual loop unrolliing.
  • Refactored the toChars and parseNumber functions.
  • Removed some superfluous typedefs.
  • Testing new simd logic for string parsing.
  • Renamed some types to snake_case.
  • Refactored the jsonifier_core, parser, and serializer classes to utilize the CRTP.
  • Refactored the simd_structural_iterator and serialization_iterator classes to remain contained.
Jsonifier - Release v0.9.92

Published by RealTimeChris 11 months ago

Hey everyone, just a new release with the following changes being primary:

  • Refactored the number-parsing functions to use lookup tables instead of subtraction operations.
  • Refactored the simd_string_reader class.
  • Refactored some functions with fold-expressions for manual loop unrolliing.
  • Refactored the toChars and parseNumber functions.
  • Removed some superfluous typedefs.
  • Testing new simd logic for string parsing.
  • Renamed some types to snake_case.
  • Refactored the jsonifier_core, parser, and serializer classes to utilize the CRTP.
Jsonifier - Release v0.9.91

Published by RealTimeChris 12 months ago

Hey everyone, just a new release with the following changes being primary:

  • Removed store and storeu functions from being class-contained to free-standing.
  • Removed unnecessary branch statements from serialize_impl functions.
  • Improved some of the preprocessor macros for setting architecture.
  • Replaced a function that uses intrinsics with a non-intrinsic (but more rapid) version.
  • Renamed parsestring to parseString,.
  • Fixed a heap-buffer-overflow issue on two of the comparison functions.
  • Added more implementation to the raw_json_data class.
  • Added a dedicated concepts namespace.
  • Added some string-to-number functions.
  • Split the parseNumber function into multiple specializations to improve performance.
  • Refactored the jsonifier_object_t and jsonifier_array_t related functions.
  • Refactored the AVX-types into a statically-operating class instead of a containing one, to improve performance.
  • Renamed a bunch of things.
  • Added the structural_index_vector and buffer_string classes for parsing performance.
  • Improved error output - for debugging the indices.
  • Implemented new serialization logic for strings.
  • New subtraction logic.
  • Reorganized some of the headers.
Jsonifier - Release v0.9.91

Published by RealTimeChris 12 months ago

Hey everyone, just a new release with the following changes being primary:

  • Removed store and storeu functions from being class-contained to free-standing.
  • Removed unnecessary branch statements from serialize_impl functions.
  • Improved some of the preprocessor macros for setting architecture.
  • Replaced a function that uses intrinsics with a non-intrinsic (but more rapid) version.
  • Renamed parsestring to parseString,.
  • Fixed a heap-buffer-overflow issue on two of the comparison functions.
  • Added more implementation to the raw_json_data class.
  • Added a dedicated concepts namespace.
  • Added some string-to-number functions.
  • Split the parseNumber function into multiple specializations to improve performance.
  • Refactored the jsonifier_object_t and jsonifier_array_t related functions.
  • Refactored the AVX-types into a statically-operating class instead of a containing one, to improve performance.
  • Renamed a bunch of things.
  • Added the structural_index_vector and buffer_string classes for parsing performance.
  • Improved error output - for debugging the indices.
  • Implemented new serialization logic for strings.
  • New subtraction logic.
  • Reorganized some of the headers.
Jsonifier - Release v0.9.91

Published by RealTimeChris 12 months ago

Hey everyone just another release with the following changes being primary:

  • Renamed parsestring to parseString,.
  • Fixed a heap-buffer-overflow issue on two of the comparison functions.
  • Added more implementation to the raw_json_data class.
  • Added a dedicated concepts namespace.
  • Added some string-to-number functions.
  • Split the parseNumber function into multiple specializations to improve performance.
  • Refactored the jsonifier_object_t and jsonifier_array_t related functions.
  • Refactored the AVX-types into a statically-operating class instead of a containing one, to improve performance.
  • Renamed a bunch of things.
  • Added the structural_index_vector and buffer_string classes for parsing performance.
  • Improved error output - for debugging the indices.
  • Implemented new serialization logic for strings.
  • New subtraction logic.
  • Reorganized some of the headers.
Jsonifier - Release v0.9.91

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Renamed parsestring to parseString,.
-Fixed a heap-buffer-overflow issue on two of the comparison functions.
-Added more implementation to the raw_json_data class.
-Adding a dedicated concepts namespace.
-Added some string-to-number functions.
-Split the parseNumber function into multiple specializations to improve performance.
-Implementing a Result type based on expected for controlling error-reporting.
-Refactored the jsonifier_object_t and jsonifier_array_t related functions.

Jsonifier - Release v0.9.9

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Modified some concepts.
-Modified the DetectArchitecture.cmake script.
-Also adding a couple of concepts.
-Implemented a bunch of compile-time loops instead of runtime ones.
-Implemented a new find function for the string classes.
-Also added a couple of concepts.
-Removed a bunch of superfluous constructors/destructors/copy/move operators.
-Updated some of the integer-postfixes.
-Switched to camel-case for types, and concepts.
-Modified the DetectArchitecture.cmake script.
-Added the check for the lzcnt instruction.
-Added a universal fallback tzcnt function.
-Modified the string class.
-Removed a few unnecessary explicit template parameters.
-Implemented the new SelectMenuDefaultValues type.
-Improved the ISADetection headers, by splitting it into multiple different headers.
-Added an implementation for parsing tuple-array-types.
-Moved the concepts out into their own header.

Jsonifier - Release v0.9.91

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Modified some concepts.
-Modified the DetectArchitecture.cmake script.
-Also adding a couple of concepts.
-Implemented a bunch of compile-time loops instead of runtime ones.
-Implemented a new find function for the string classes.

Jsonifier - Release v0.9.91

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Modified some concepts.
-Modified the DetectArchitecture.cmake script.

Jsonifier - Release v0.9.9

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Removed a bunch of superfluous constructors/destructors/copy/move operators.
-Updated some of the integer-postfixes.
-Switched to camel-case for types, and concepts.
-Modified the DetectArchitecture.cmake script.
-Added the check for the lzcnt instruction.
-Added a universal fallback tzcnt function.
-Modified the string class.
-Removed a few unnecessary explicit template parameters.
-Implemented the new SelectMenuDefaultValues type.
-Improved the ISADetection headers, by splitting it into multiple different headers.
-Added an implementation for parsing tuple-array-types.
-Moved the concepts out into their own header.

Jsonifier - Release v0.9.9

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Removed a bunch of superfluous constructors/destructors/copy/move operators.
-Updated some of the integer-postfixes.
-Switched to camel-case for types, and concepts.
-Modified the DetectArchitecture.cmake script.
-Added the check for the lzcnt instruction.
-Added a universal fallback tzcnt function.
-Modified the string class.
-Removed a few unnecessary explicit template parameters.
-Implemented the new SelectMenuDefaultValues type.
-Improved the ISADetection headers, by splitting it into multiple different headers.
-Added an implementation for parsing tuple-array-types.
-Moved the concepts out into their own header.

Jsonifier - Release v0.9.9

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Removed a bunch of superfluous constructors/destructors/copy/move operators.
-Updated some of the integer-postfixes.
-Switched to camel-case for types, and concepts.
-Modified the DetectArchitecture.cmake script.
-Added the check for the lzcnt instruction.
-Added a universal fallback tzcnt function.
-Modified the string class.
-Removed a few unnecessary explicit template parameters.
-Implemented the new SelectMenuDefaultValues type.
-Improved the ISADetection headers, by splitting it into multiple different headers.
-Added an implementation for parsing tuple-array-types.

Jsonifier - Release v0.9.9

Published by RealTimeChris about 1 year ago

Hey everyone, just a new release with the following changes being primary:
-Removed a bunch of superfluous constructors/destructors/copy/move operators.
-Updated some of the integer-postfixes.
-Switched to camel-case for types, and concepts.
-Modified the DetectArchitecture.cmake script.
-Added the check for the lzcnt instruction.
-Added a universal fallback tzcnt function.
-Modified the string class.
-Removed a few unnecessary explicit template parameters.