Commit Graph

12 Commits

Author SHA1 Message Date
c0945246de Refactor packer tests to make recompilation faster 2024-01-12 13:37:39 -08:00
eb7a02d5c4 Refactor tests, add formatters, etc. 2024-01-12 12:53:00 -08:00
Kurt Sassenrath
8f4ac703f4 Rapidcheck component, initial test cases rewritten 2024-01-03 15:51:22 -08:00
b48eddb8d0 Range packing. 2024-01-02 07:55:40 -08:00
Kurt Sassenrath
53665b8e70 Packer WIP 2023-12-08 08:46:48 -08:00
1c7047e314 Implement token map_view, additional formatters.
msgpack::map_view can be used to iterate, pair-wise, over a range of
msgpack::token. It will immediately return if the first token is not a
map, and will skip over nested map/arrays.

Note for the future: It will be handy to be able to get the subspan
corresponding to the nested map/array. Will think about how to solve
that later.

Begin incorporating map_view into the server.

Add formatters for std::byte, dynamic theme for bool, and spans thereof.
Maybe switch to range?
2023-10-12 14:52:06 -07:00
a80b9d0fc6 token_reader::read_some, operator==, "speed test"
- Added token_reader::read_some(), which takes a view of a token buffer
  reads/unpacks up to that many tokens from a buffer. If an error occurs,
  or if there are fewer msgpack formats within the buffer, then the
  returned span will be a subspan of the original buffer. If no tokens
  were read before encountering an error, token_reader will return the
  error instead.
- token::operator== overload for types that might be stored within the
  token. Handy for cleaning up tests, even though both methods of
  `token::get<T>() == value` and `token == value` are represented for
  now.
- Added a simple tool to open a file containing msgpack content and read
  tokens into a buffer. This is for testing speed, but needs to be made
  into a proper benchmark once more work has been done. Pretty fast
  right now, only taking 2us to parse ~200 tokens (that takes the
  pythong msgpack implementation ~1s to handle).
2023-10-06 16:16:56 -07:00
2a4c819f4f Fix approach to include paths.
This accommodates bazel's best practices a bit better.
2023-10-04 21:23:36 -07:00
Kurt Sassenrath
cf434bcae3 Fix parsing tokens a bit.
Need to find a more concise way to express all the different tokens.
2023-09-14 10:54:59 -07:00
94e77e7519 Implement integer parsing for token reader API 2023-09-13 22:15:48 -07:00
Kurt Sassenrath
89cbbb0f30 WIP Error consolidation, token API 2023-09-13 19:31:43 -07:00
d3c59248a2 import msgpack, begin work on object API 2023-09-07 15:06:00 -07:00