Trangar
63f4607992
Feature/config limit ( #439 )
...
* Added Limit<N> and NoLimit to the configuration
* Added a limit check to Decoder and DecoderImpl
* Added test cases, added a helper function specialized for containers
* Added a test to see if inlining makes the limit config faster, added inlining to the decoder
2021-12-11 15:44:43 +01:00
李冬冬
ed57fd0810
Impl BorrowDecode for Option<&[u8]> and Option<&str> ( #446 )
...
Co-authored-by: Trangar <victor.koenders@gmail.com>
2021-12-10 19:50:24 +01:00
Trangar
bb3612103a
Fixed clippy warnings ( #447 )
2021-12-10 17:39:35 +01:00
Trangar
7cb10d4ab3
Added test case for a borrowed str ( #441 )
2021-12-02 11:44:08 +01:00
Trangar
4be23b88de
Added Decode/Encode for HashMap<K, V> ( #438 )
2021-11-22 15:18:58 +01:00
Trangar
c4fd7efa49
Release 2.0.0-alpha.1 ( #435 )
2021-11-09 10:15:12 +01:00
Trangar
ad7ddebff3
Allow serde types to be Decode/Encoded ( #434 )
...
* Added support for #[bincode(serde)] attribute on fields, added SerdeToBincode helper struct
* Switch to using Compat/BorrowCompat
* Moved all the serde features and functions to its own module
* Fix broken link
* Added support for the bincode(with_serde) attribute in enum variants
* Updated the main documentation on serde, fixed an example not compiling under certain feature flag combinations
* Added #[serde(flatten)] to the list of problematic attributes
* Added better error reporting on invalid attributes
2021-11-09 10:08:47 +01:00
Trangar
8c1279feab
functions to enable encoding/decoding serde types ( #422 )
...
* functions to enable encoding/decoding serde types
* Removed dev feature I forgot to remove
* Centralized option variant and len() decoding/encoding
2021-11-08 12:38:29 +01:00
Trangar
cc13be30d4
split off BorrowDecode from Decode in bincode_derive ( #432 )
...
* split off BorrowDecode from Decode in bincode_derive
* Added test case for issue #431
* Fixed Cow implementation having the wrong constraint, added BlockedTODO for cow implementation specialization
* Re-exported the Decode and Encode traits in the crate root
* Removed outdated comments
* Removed some :🇩🇪 :Decode that were introduced by the merge
2021-11-07 10:57:35 +01:00
Trangar
b4c46a789a
Fixes for 427 ( #428 )
...
* Made bincode_derive handle empty lines of docs correctly
* Made bincode_derive properly support const generics
* Added support for enums with variants with fixed values
2021-11-07 10:31:15 +01:00
Andre Nathan
7174f6422d
Generate qualified Result type in derive ( #430 )
2021-11-05 18:07:13 +01:00
Seppel3210
e54a47cf14
Fix some typos ( #423 )
2021-10-25 16:24:57 +02:00
Trangar
73616a3d62
Made the zigzag encoding examples compile and run ( #421 )
...
Made the zigzag encoding examples compile and run
2021-10-25 11:24:50 +02:00
Trangar
b30805dde2
Replace test-all-features with a manual CI matrix ( #419 )
...
Made the rust CI pipeline use a matrix instead of test-all-features
Removed beta and nightly from the test pipelines, made the check pipeline check on --all-features
2021-10-25 11:19:46 +02:00
Lena Hellström
e81665bbea
Add necessary metadata to bincode_derive ( #420 )
2021-10-25 10:57:37 +02:00
Lena Hellström
c6ba4ffc88
Update authors to reflect current code state ( #418 )
2021-10-25 10:39:58 +02:00
Trangar
0c13c891c5
Updated readme.md and added a test for the examples ( #417 )
...
* Updated readme.md and added a test for the examples
* Removed tests/readme.rs and made the readme doctest a (hidden) part of lib.rs
2021-10-25 10:26:23 +02:00
Lena Hellström
f09d839d10
Merge pull request #413 from bincode-org/feature/deserde
...
Feature/deserde
2021-10-24 19:43:59 +02:00
Victor Koenders
382b2c7a8f
Fixed clippy lint, removed function that was only used in 1 place
2021-10-24 18:06:16 +02:00
Lena Hellström
99de47a6c8
Reintroduce varint optimizations
2021-10-24 16:44:36 +02:00
Lena Hellström
62b8f39f8f
Optimize performance of decoding u8 arrays
2021-10-22 14:47:44 +02:00
Lena Hellström
539906f441
Optimize performance of slice writing
2021-10-22 14:47:05 +02:00
Victor Koenders
0be7e2f4f2
Updated to edition 2021
2021-10-21 17:34:56 +02:00
Victor Koenders
bd994e354d
Updated documentation of Encode, added an example to lib.rs
2021-10-21 14:45:16 +02:00
Victor Koenders
dae645f675
Joined the 2 Sealed traits into a single one
2021-10-21 14:27:03 +02:00
Victor Koenders
707d0d238f
Made all encode and decode functions always require a Config, removed _with_config functions
2021-10-21 14:19:40 +02:00
Victor Koenders
dd7e8e8e43
Changed bincode version to 2.0.0-alpha.0
2021-10-21 13:39:45 +02:00
Victor Koenders
adc47b6895
Fixed a copy-paste error where RwLock would report to be a Mutex if it fails to lock
2021-10-21 13:31:13 +02:00
Victor Koenders
f70e94a427
Added dedicated error for `std::path::Path` encoding. Fixed broken link in documentation.
2021-10-21 13:29:03 +02:00
Victor Koenders
6ff33cd8c2
Replaced the decode implementation of [T; N] with the implementation from core
2021-10-21 12:54:37 +02:00
Victor Koenders
07b3c8cd76
Made the Decode of [T; N] properly drop all instances of T when an error has occured
2021-10-21 11:57:24 +02:00
Victor Koenders
151edf46d3
Included spec.md into cargo's documentation, fixed the issues, changed the [u8; N] implementations to [T; N]
2021-10-21 11:57:16 +02:00
Victor Koenders
435e030182
Removed a panic in the derive/src/generate module, moved it to derive/src/derive_* instead
2021-10-21 11:57:07 +02:00
Victor Koenders
baad206c6c
Added more documentation to derive/src/generate
2021-10-21 11:56:51 +02:00
Victor Koenders
4b25114c59
Processed some of the feedback
2021-10-18 10:18:47 +02:00
Lena Hellström
83970d29cf
Merge branch 'trunk' into feature/deserde
2021-10-17 21:54:26 +02:00
Lena Hellström
684f2562b1
Config rewrite ( #412 )
...
Rewrite the config system to be slightly more friendly to adding new options
2021-10-17 21:07:31 +02:00
Victor Koenders
2fd2a8d8e2
Made the varint decode_signed module report the correct errors
2021-10-17 17:23:44 +02:00
Victor Koenders
02a9b2cb71
Made the test stage throw an error on warnings
2021-10-17 17:23:28 +02:00
Victor Koenders
4807ea6be2
Added warning on unused lifetimes, fixed warnings
2021-10-17 16:43:18 +02:00
Lena Hellström
e232454936
Refactor and rename encoders
2021-10-17 16:22:14 +02:00
Victor Koenders
61c1e8a7cd
Added badges to the functions to indicate which features they require
2021-10-17 15:00:14 +02:00
Victor Koenders
1f261cede3
Added support for atomic integers
2021-10-16 14:49:18 +02:00
Victor Koenders
8ab730eb87
Added support for IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, SocketAddrV4, SocketAddrV6
2021-10-16 14:28:06 +02:00
Victor Koenders
a0469e08ef
Added support for NonZero* types
2021-10-16 14:14:15 +02:00
Victor Koenders
9420d03762
Added support for Range<T>, RangeInclusive<T> and Bound<T>
2021-10-16 13:59:48 +02:00
Victor Koenders
26d7683719
Added support for Path and PathBuf
2021-10-16 13:47:48 +02:00
Victor Koenders
acbd385649
Added core::time::Duration and std::time::SystemTime
2021-10-16 13:32:12 +02:00
Victor Koenders
9cf577d9bc
Added support for String, Mutex<T> and RwLock<T>
2021-10-16 13:19:30 +02:00
Victor Koenders
33dd4f761d
Added support for CStr and CString
2021-10-16 12:59:38 +02:00