Titouan Rigoudy
9b81a6c3a6
Remove BytesMut from ProtoDecoder tests in base_codec.rs.
5 years ago
Titouan Rigoudy
468c404765
Simplify ProtoDecoder by removing dependency on the bytes crate.
Improve decoding error messages by annotating them with the position
at which the error was encountered. This could use some improvement
in a follow-up by introducing a specific Error type instead of
piggy-backing onto std::io::Error.
It is easier and more generically useful to accept any byte slice
as a buffer. In addition our zero-copy use of the underlying buffer
does not align particularly well with std::io::Read, so we move away
from std::io::Cursor as well.
5 years ago
Titouan Rigoudy
30b8ff043c
Run cargo fmt.
5 years ago
Titouan Rigoudy
5894f425b0
Fix typo in base_codec.rs
5 years ago
Titouan Rigoudy
972efded99
Run cargo update.
5 years ago
Titouan Rigoudy
487060f15b
Update to Rust 1.44.0, recompile.
5 years ago
Titouan Rigoudy
5ccae4b042
Add stub LoginHandler.
6 years ago
Titouan Rigoudy
bb03cbf66b
Add LoginStatus to Context.
6 years ago
Titouan Rigoudy
2d4813d047
Add Todo state to LoginStatus enum.
6 years ago
Titouan Rigoudy
64472daae9
Extract LoginStatus to its own file.
6 years ago
Titouan Rigoudy
d5b269a05d
Introduce SetPrivilegedUsersHandler.
This is the first message handler to be defined.
6 years ago
Titouan Rigoudy
cc17e60f9b
Remove useless Debug from DispatchedMessage handler type bound.
6 years ago
Titouan Rigoudy
e542c102b2
Move Context back into Executor, add test.
6 years ago
Titouan Rigoudy
e7fc922bb3
Move some Executor functionality into MessageHandler.
6 years ago
Titouan Rigoudy
aceccc72f2
WIP: Add tests for Executor.
6 years ago
Titouan Rigoudy
ef5f6acab8
Add tests for Context.
6 years ago
Titouan Rigoudy
6dee714bfd
Run cargo fmt.
6 years ago
Titouan Rigoudy
78d10224f8
Implement Executor.
6 years ago
Titouan Rigoudy
9aaf843856
Introduce MessageHandler, Dispatcher, Executor.
6 years ago
Titouan Rigoudy
caebbc52c4
Use crossbeam channel instead of std::sync::mpsc.
6 years ago
Titouan Rigoudy
1b43b92c5b
Remove unnecessary extern crate declarations.
6 years ago
Titouan Rigoudy
e35719f745
Remove src/proto/transport.rs.
6 years ago
Titouan Rigoudy
0e2e684b26
Use doc comments in codec.rs some more.
6 years ago
Titouan Rigoudy
a776151c9b
Use doc comments in base_codec.rs some more.
6 years ago
Titouan Rigoudy
f78448d3e8
Upgrade to Rust 2018 edition.
6 years ago
Titouan Rigoudy
101e40716f
Run cargo update.
6 years ago
Titouan Rigoudy
8faee7dbea
Rename {En,De}coder to LengthPrefixed{En,De}coder.
7 years ago
Titouan Rigoudy
b55307f123
Introduce length-prefixed Tokio decoder.
7 years ago
Titouan Rigoudy
c48673c390
Introduce ProtoDecoder instead of extending Buf trait.
7 years ago
Titouan Rigoudy
8daeb74b53
Run cargo fmt.
7 years ago
Titouan Rigoudy
a1971b047e
Implement length-prefixed encoding for Tokio.
7 years ago
Titouan Rigoudy
d793f9e012
Unconditionally reserve u32 space in encode_u32.
7 years ago
Titouan Rigoudy
5d1a339ba5
Use {get,put}_u32_le instead of LittleEndian trait.
7 years ago
Titouan Rigoudy
585e9a5873
Fix use declarations in tests.
7 years ago
Titouan Rigoudy
2e64e5a9ff
Use BootstrapDecode instead of Buf as trait bound.
7 years ago
Titouan Rigoudy
0118354478
Implement Encode using ProtoEncode.
First step towards hiding ProtoEncode as an implementation detail and
only exposing Encode externally.
7 years ago
Titouan Rigoudy
9dbb5c37c2
Implement tokio_codec::Decoder for all message types.
7 years ago
Titouan Rigoudy
94a5ba0229
Implement tokio_codec::Encoder for all message types.
7 years ago
Titouan Rigoudy
c8a4e8fe74
Add src::proto::codec for Tokio integration.
7 years ago
Titouan Rigoudy
e76ed364a6
Rename proto::codec to proto::base_codec.
7 years ago
Titouan Rigoudy
1536e1d19e
Update dependencies.
7 years ago
Titouan Rigoudy
7c1fd0b1ac
Minor import change.
7 years ago
Titouan Rigoudy
da6aa38593
Run rustfmt.
7 years ago
Titouan Rigoudy
bcf05d5772
Refactor transport module a little.
7 years ago
Titouan Rigoudy
f9de193b02
Fix unused imports.
7 years ago
Titouan Rigoudy
5a980dbba1
Replace ProtoDecode with Decode, remove ProtoDecoder.
7 years ago
Titouan Rigoudy
766d11d564
Remove DecodeError, use io::Error instead.
7 years ago
Titouan Rigoudy
1848872ccc
Implement Proto{De,En}code for WishlistIntervalResponse.
7 years ago
Titouan Rigoudy
d3ce706db6
Implement Proto{De,En}code for UserStatusResponse.
7 years ago
Titouan Rigoudy
ddf0971984
Implement Proto{De,En}code for UserInfoResponse.
7 years ago