mirror of https://git.sr.ht/~stygianentity/bincode
Merge branch 'master' of github.com:TyOverby/bincode
This commit is contained in:
commit
05850df34a
|
|
@ -1,6 +1,9 @@
|
|||
language: rust
|
||||
rust:
|
||||
- stable
|
||||
- beta
|
||||
- nightly
|
||||
|
||||
after_success: |
|
||||
[ $TRAVIS_BRANCH = master ] &&
|
||||
[ $TRAVIS_PULL_REQUEST = false ] &&
|
||||
|
|
@ -12,3 +15,7 @@ after_success: |
|
|||
env:
|
||||
global:
|
||||
- secure: SZSxNqg9wiGx8EnJhifJ2kb/aCRcLim9TzTQyfurPqd8qVGkDOeVjTtbs+VTxLVXYtMJAz+YYnrQDwsu8kc/uYpQajU+gRMqNGEP5gNj3Ha5iNGDasAS6piIHQSMROayZ+D9g22nlGnjk8t9eZtLHC/Z8IWMCnjcIHvqMFY6cgI=
|
||||
matrix:
|
||||
allow_failures:
|
||||
- rust: stable
|
||||
- rust: beta
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ description = "A binary serialization / deserialization strategy and implementat
|
|||
|
||||
[dependencies]
|
||||
rustc-serialize = "0.3.*"
|
||||
byteorder = "0.3.*"
|
||||
byteorder = "0.4.*"
|
||||
num = "*"
|
||||
serde = "*"
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ pub enum DeserializeError {
|
|||
/// If decoding a message takes more than the provided size limit, this
|
||||
/// error is returned.
|
||||
SizeLimit,
|
||||
SyntaxError,
|
||||
SyntaxError(String),
|
||||
EndOfStreamError,
|
||||
UnknownFieldError,
|
||||
MissingFieldError,
|
||||
|
|
@ -58,7 +58,7 @@ impl Error for DeserializeError {
|
|||
DeserializeError::IoError(ref err) => Error::description(err),
|
||||
DeserializeError::InvalidEncoding(ref ib) => ib.desc,
|
||||
DeserializeError::SizeLimit => "the size limit for decoding has been reached",
|
||||
DeserializeError::SyntaxError => "syntax error",
|
||||
DeserializeError::SyntaxError(ref s) => &*s,
|
||||
DeserializeError::EndOfStreamError => "Unexpected EOF while reading a multi-byte number",
|
||||
DeserializeError::UnknownFieldError => "unknown field error",
|
||||
DeserializeError::MissingFieldError => "missing field error",
|
||||
|
|
@ -70,7 +70,7 @@ impl Error for DeserializeError {
|
|||
DeserializeError::IoError(ref err) => err.cause(),
|
||||
DeserializeError::InvalidEncoding(_) => None,
|
||||
DeserializeError::SizeLimit => None,
|
||||
DeserializeError::SyntaxError => None,
|
||||
DeserializeError::SyntaxError(_) => None,
|
||||
DeserializeError::EndOfStreamError => None,
|
||||
DeserializeError::UnknownFieldError => None,
|
||||
DeserializeError::MissingFieldError => None,
|
||||
|
|
@ -98,7 +98,7 @@ impl From<serde::de::value::Error> for DeserializeError {
|
|||
use serde_crate::de::value::Error;
|
||||
|
||||
match err {
|
||||
Error::SyntaxError => DeserializeError::SyntaxError,
|
||||
Error::SyntaxError => DeserializeError::SyntaxError("syntax error".to_string()),
|
||||
Error::EndOfStreamError => {
|
||||
DeserializeError::EndOfStreamError
|
||||
}
|
||||
|
|
@ -117,8 +117,8 @@ impl fmt::Display for DeserializeError {
|
|||
write!(fmt, "InvalidEncoding: {}", ib),
|
||||
DeserializeError::SizeLimit =>
|
||||
write!(fmt, "SizeLimit"),
|
||||
DeserializeError::SyntaxError =>
|
||||
write!(fmt, "SyntaxError"),
|
||||
DeserializeError::SyntaxError(ref d) =>
|
||||
write!(fmt, "SyntaxError: {}", d),
|
||||
DeserializeError::EndOfStreamError =>
|
||||
write!(fmt, "EndOfStreamError"),
|
||||
DeserializeError::UnknownFieldError =>
|
||||
|
|
@ -130,8 +130,8 @@ impl fmt::Display for DeserializeError {
|
|||
}
|
||||
|
||||
impl serde::de::Error for DeserializeError {
|
||||
fn syntax(_: &str) -> DeserializeError {
|
||||
DeserializeError::SyntaxError
|
||||
fn syntax(desc: &str) -> DeserializeError {
|
||||
DeserializeError::SyntaxError(desc.into())
|
||||
}
|
||||
|
||||
fn end_of_stream() -> DeserializeError {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#![feature(plugin, custom_derive)]
|
||||
#![feature(plugin, custom_derive, custom_attribute)]
|
||||
#![plugin(serde_macros)]
|
||||
|
||||
extern crate bincode;
|
||||
|
|
@ -243,7 +243,7 @@ fn deserializing_errors() {
|
|||
fn isize_invalid_deserialize<T: Debug>(res: DeserializeResult<T>) {
|
||||
match res {
|
||||
Err(DeserializeError::InvalidEncoding(_)) => {},
|
||||
Err(DeserializeError::SyntaxError) => {},
|
||||
Err(DeserializeError::SyntaxError(_)) => {},
|
||||
_ => panic!("Expecting InvalidEncoding, got {:?}", res),
|
||||
}
|
||||
}
|
||||
|
|
@ -475,3 +475,14 @@ fn test_multi_strings_encode() {
|
|||
fn test_multi_strings_serialize() {
|
||||
assert!(serialize(&("foo", "bar", "baz"), Infinite).is_ok());
|
||||
}
|
||||
|
||||
/*
|
||||
#[test]
|
||||
fn path_buf() {
|
||||
use std::path::{Path, PathBuf};
|
||||
let path = Path::new("foo").to_path_buf();
|
||||
let serde_encoded = bincode::serde::serialize(&path, Infinite).unwrap();
|
||||
let decoded: PathBuf = bincode::serde::deserialize(&serde_encoded).unwrap();
|
||||
assert!(path.to_str() == decoded.to_str());
|
||||
}
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue