Commit Graph

116 Commits

Author SHA1 Message Date
ed9fcb72e8 commands: extend parser errors 2025-12-08 13:28:17 +09:00
dbc5b2b5e4 Remove a few unused type aliases 2025-12-08 13:11:09 +09:00
853eb8d515 *_tokenizer: add module doccomment 2025-12-08 13:10:31 +09:00
7ae1249f09 commands: force external users to interact with requests and responses through Command trait 2025-12-08 13:07:11 +09:00
b9f0a5b0a7 commands: add command executor directly on Command trait 2025-12-08 13:05:30 +09:00
8853d94656 examples/mpd-client: add some code 2025-12-08 13:00:46 +09:00
f819595ca2 commands: strip lifetimes 2025-12-08 12:30:19 +09:00
0f203b962a commands: add newline at end of all command serializers 2025-12-08 05:49:54 +09:00
bb60278118 client: init 2025-12-08 05:32:49 +09:00
5af615451c MpdError: impl thiserror 2025-12-08 05:31:43 +09:00
6cfd6eba2c make ResponseParserError self-contained, impl thiserror 2025-12-08 05:31:13 +09:00
e9cf44f006 common/types: flatten to types 2025-12-08 04:14:32 +09:00
183174ae33 commands: document module 2025-12-08 04:07:20 +09:00
931e8b322c response: add some notes about the errors 2025-12-08 01:46:14 +09:00
907bd3bdbb cargo clippy 2025-12-08 01:08:58 +09:00
0bece4dd1c commands/stickernamestypes: add missing derive for response 2025-12-08 01:05:24 +09:00
d9df882bcd commands/listplaylist: add note about format 2025-12-08 01:03:23 +09:00
b24b9720dc commands/seekcur: fix parser 2025-12-08 01:03:11 +09:00
d5bec5dbbd commands: fix request enum conversion for unmount 2025-12-08 00:52:27 +09:00
6fcd293578 flake.lock: bump inputs 2025-12-08 00:45:53 +09:00
7844b68a1b commands: add response types for multiple commands 2025-12-08 00:44:37 +09:00
9dd97c869c commands/currentsong: implement response parser 2025-12-08 00:29:00 +09:00
358703231a commands/listplaylistinfo: fix response type 2025-12-08 00:28:38 +09:00
e24451900f commands: split Command trait into req + res parts 2025-12-05 22:54:01 +09:00
380071b66c cargo fmt 2025-12-07 21:39:57 +09:00
2a0ccd4a44 commands/listplaylistinfo: add response type 2025-12-07 21:33:01 +09:00
e3f6235a16 commands: implement all database selection responses 2025-02-25 12:13:01 +01:00
105c1aa7b3 common/types: add db selection print types 2025-02-25 12:12:43 +01:00
7f27c2659f LICENSE: init 2025-12-07 21:03:13 +09:00
e82a3e107d types/tag: make orderable 2025-12-07 20:53:45 +09:00
e4c0c5b744 commands/listplaylists: implement 2025-12-07 21:21:58 +09:00
09925a1df5 commands: parse to Self::Request 2025-12-05 22:00:11 +09:00
5535580e8d filter: export all types from inner module 2025-12-05 21:00:01 +09:00
0dedc74293 common: don't expose types directly 2025-12-05 20:59:19 +09:00
1b4fe23ce9 commands: add docs for Command trait 2025-11-25 05:28:58 +09:00
f01ecb0e09 common/types: add better alias for MountPath 2025-11-25 04:27:20 +09:00
bad475d96b common/types: add better alias for AudioOutputId 2025-11-25 04:22:30 +09:00
70aa4b47e1 common/types: add type for ChannelName 2025-11-25 04:13:32 +09:00
a033aac721 common/types: add better alias for PlaylistVersion 2025-11-25 04:02:03 +09:00
8853153dfd common/types: add type for Sort 2025-11-25 03:56:01 +09:00
02e292ffd7 response_tokenizer: rewrite
This commit contains a rewrite of the response tokenizer, which
introduces lazy parsing of the response, handling of binary data, some
tests, as well as just generally more robustness against errors.
2025-11-24 23:49:27 +09:00
8f321a243d commands: fix request de/serialization for list 2025-11-24 22:00:42 +09:00
0144dac14f commands: remove some fixed TODOs 2025-11-24 21:59:42 +09:00
47e42a3472 commands: split response tokenizer into separate file 2025-11-24 19:16:09 +09:00
b91331452e filter: implement basic parser 2025-11-24 17:38:37 +09:00
fd8b597897 common/types: case insensitive tags 2025-11-24 17:36:48 +09:00
74c86dd5b9 Implement a proper request tokenizer 2025-11-24 14:18:30 +09:00
e0e7509be7 WIP: serialize requests 2025-11-21 16:48:55 +09:00
132d89fe34 filter: implement fmt::Display 2025-11-21 18:36:54 +09:00
e86e78ecfb common/types: implement serialization helpers for Tag 2025-11-21 18:36:18 +09:00