Commit Graph

31 Commits

Author SHA1 Message Date
Kurt Sassenrath
a027d6b946 Add builtin_packer for array_desc / map_desc 2023-12-28 15:35:40 -08:00
Kurt Sassenrath
0e00edc378 Remove builtin_pack_helper. 2023-12-28 09:24:48 -08:00
c89d7cd541 Begin refactor of msgpack packer 2023-12-26 23:45:47 -08:00
Kurt Sassenrath
53665b8e70 Packer WIP 2023-12-08 08:46:48 -08:00
ebe2b070b9 Deductive writer POC. Start packer implementation. 2023-11-22 22:54:21 -08:00
84942171ea WIP Server stuff 2023-11-22 22:54:08 -08:00
cbca4be237 Add hash test 2023-11-06 22:56:35 -08:00
Kurt Sassenrath
578065be47 More session id work 2023-11-06 16:16:04 -08:00
1ceccd0720 WIP: Add hydrogen, session_id 2023-11-06 07:06:19 -08:00
8f8066c243 WIP 2023-10-26 07:23:51 -07:00
6874da27a3 Apply clang-format 2023-10-20 00:34:44 -07:00
Kurt Sassenrath
c46f68e759 Initial clang-format file 2023-10-20 00:34:31 -07:00
Kurt Sassenrath
3157e39169 WIP: Session decoupling from server impl 2023-10-19 23:56:22 -07:00
Kurt Sassenrath
9346b5be5d WIP 2023-10-16 19:27:12 -07: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
Kurt Sassenrath
22f78cc7d7 Re-enable expected logging, start server proto 2023-10-11 18:37:57 -07:00
Kurt Sassenrath
915773f3a8 WIP slight changes to token_reader 2023-10-10 15:53:14 -07:00
21b388f0d0 WIP: Message definitions. 2023-10-08 08:20:23 -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
9164e7dc60 WIP Message 2023-09-19 12:26:22 -07:00
f894b8eaf6 Map/Array support as "tokens"
This essentially completes the token_reader. In the future, we will
probably want something that lets us allocate maps/arrays more
seamlessly, but we can start working on client-server architecture with
this reader.
2023-09-18 23:22:02 -07:00
c5c03a2a40 Many more supported types in token reader. 2023-09-17 22:40:49 -07:00
14620c4487 WIP 2023-09-14 22:58:59 -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
Kurt Sassenrath
ec3b953384 Various updates to initial server code.
Need to create user sessions and handle msgpack-encoded packets. The
plan is to use a branch of oh::msgpack with tl::expected.
2023-09-05 16:25:57 -07:00
eab689909d Initial server interface, minor logging changes. 2023-09-04 22:46:33 -07:00
b0ed20369f Initial commit
* Logging ported from layover project with minor tweaks.
    * Logging test ported over.
    * Boost libraries are available.
2023-09-04 16:03:58 -07:00