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
|
language: rust
|
||||||
rust:
|
rust:
|
||||||
|
- stable
|
||||||
|
- beta
|
||||||
- nightly
|
- nightly
|
||||||
|
|
||||||
after_success: |
|
after_success: |
|
||||||
[ $TRAVIS_BRANCH = master ] &&
|
[ $TRAVIS_BRANCH = master ] &&
|
||||||
[ $TRAVIS_PULL_REQUEST = false ] &&
|
[ $TRAVIS_PULL_REQUEST = false ] &&
|
||||||
|
|
@ -12,3 +15,7 @@ after_success: |
|
||||||
env:
|
env:
|
||||||
global:
|
global:
|
||||||
- secure: SZSxNqg9wiGx8EnJhifJ2kb/aCRcLim9TzTQyfurPqd8qVGkDOeVjTtbs+VTxLVXYtMJAz+YYnrQDwsu8kc/uYpQajU+gRMqNGEP5gNj3Ha5iNGDasAS6piIHQSMROayZ+D9g22nlGnjk8t9eZtLHC/Z8IWMCnjcIHvqMFY6cgI=
|
- 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]
|
[dependencies]
|
||||||
rustc-serialize = "0.3.*"
|
rustc-serialize = "0.3.*"
|
||||||
byteorder = "0.3.*"
|
byteorder = "0.4.*"
|
||||||
num = "*"
|
num = "*"
|
||||||
serde = "*"
|
serde = "*"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ pub enum DeserializeError {
|
||||||
/// If decoding a message takes more than the provided size limit, this
|
/// If decoding a message takes more than the provided size limit, this
|
||||||
/// error is returned.
|
/// error is returned.
|
||||||
SizeLimit,
|
SizeLimit,
|
||||||
SyntaxError,
|
SyntaxError(String),
|
||||||
EndOfStreamError,
|
EndOfStreamError,
|
||||||
UnknownFieldError,
|
UnknownFieldError,
|
||||||
MissingFieldError,
|
MissingFieldError,
|
||||||
|
|
@ -58,7 +58,7 @@ impl Error for DeserializeError {
|
||||||
DeserializeError::IoError(ref err) => Error::description(err),
|
DeserializeError::IoError(ref err) => Error::description(err),
|
||||||
DeserializeError::InvalidEncoding(ref ib) => ib.desc,
|
DeserializeError::InvalidEncoding(ref ib) => ib.desc,
|
||||||
DeserializeError::SizeLimit => "the size limit for decoding has been reached",
|
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::EndOfStreamError => "Unexpected EOF while reading a multi-byte number",
|
||||||
DeserializeError::UnknownFieldError => "unknown field error",
|
DeserializeError::UnknownFieldError => "unknown field error",
|
||||||
DeserializeError::MissingFieldError => "missing field error",
|
DeserializeError::MissingFieldError => "missing field error",
|
||||||
|
|
@ -70,7 +70,7 @@ impl Error for DeserializeError {
|
||||||
DeserializeError::IoError(ref err) => err.cause(),
|
DeserializeError::IoError(ref err) => err.cause(),
|
||||||
DeserializeError::InvalidEncoding(_) => None,
|
DeserializeError::InvalidEncoding(_) => None,
|
||||||
DeserializeError::SizeLimit => None,
|
DeserializeError::SizeLimit => None,
|
||||||
DeserializeError::SyntaxError => None,
|
DeserializeError::SyntaxError(_) => None,
|
||||||
DeserializeError::EndOfStreamError => None,
|
DeserializeError::EndOfStreamError => None,
|
||||||
DeserializeError::UnknownFieldError => None,
|
DeserializeError::UnknownFieldError => None,
|
||||||
DeserializeError::MissingFieldError => None,
|
DeserializeError::MissingFieldError => None,
|
||||||
|
|
@ -98,7 +98,7 @@ impl From<serde::de::value::Error> for DeserializeError {
|
||||||
use serde_crate::de::value::Error;
|
use serde_crate::de::value::Error;
|
||||||
|
|
||||||
match err {
|
match err {
|
||||||
Error::SyntaxError => DeserializeError::SyntaxError,
|
Error::SyntaxError => DeserializeError::SyntaxError("syntax error".to_string()),
|
||||||
Error::EndOfStreamError => {
|
Error::EndOfStreamError => {
|
||||||
DeserializeError::EndOfStreamError
|
DeserializeError::EndOfStreamError
|
||||||
}
|
}
|
||||||
|
|
@ -117,8 +117,8 @@ impl fmt::Display for DeserializeError {
|
||||||
write!(fmt, "InvalidEncoding: {}", ib),
|
write!(fmt, "InvalidEncoding: {}", ib),
|
||||||
DeserializeError::SizeLimit =>
|
DeserializeError::SizeLimit =>
|
||||||
write!(fmt, "SizeLimit"),
|
write!(fmt, "SizeLimit"),
|
||||||
DeserializeError::SyntaxError =>
|
DeserializeError::SyntaxError(ref d) =>
|
||||||
write!(fmt, "SyntaxError"),
|
write!(fmt, "SyntaxError: {}", d),
|
||||||
DeserializeError::EndOfStreamError =>
|
DeserializeError::EndOfStreamError =>
|
||||||
write!(fmt, "EndOfStreamError"),
|
write!(fmt, "EndOfStreamError"),
|
||||||
DeserializeError::UnknownFieldError =>
|
DeserializeError::UnknownFieldError =>
|
||||||
|
|
@ -130,8 +130,8 @@ impl fmt::Display for DeserializeError {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl serde::de::Error for DeserializeError {
|
impl serde::de::Error for DeserializeError {
|
||||||
fn syntax(_: &str) -> DeserializeError {
|
fn syntax(desc: &str) -> DeserializeError {
|
||||||
DeserializeError::SyntaxError
|
DeserializeError::SyntaxError(desc.into())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn end_of_stream() -> DeserializeError {
|
fn end_of_stream() -> DeserializeError {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#![feature(plugin, custom_derive)]
|
#![feature(plugin, custom_derive, custom_attribute)]
|
||||||
#![plugin(serde_macros)]
|
#![plugin(serde_macros)]
|
||||||
|
|
||||||
extern crate bincode;
|
extern crate bincode;
|
||||||
|
|
@ -243,7 +243,7 @@ fn deserializing_errors() {
|
||||||
fn isize_invalid_deserialize<T: Debug>(res: DeserializeResult<T>) {
|
fn isize_invalid_deserialize<T: Debug>(res: DeserializeResult<T>) {
|
||||||
match res {
|
match res {
|
||||||
Err(DeserializeError::InvalidEncoding(_)) => {},
|
Err(DeserializeError::InvalidEncoding(_)) => {},
|
||||||
Err(DeserializeError::SyntaxError) => {},
|
Err(DeserializeError::SyntaxError(_)) => {},
|
||||||
_ => panic!("Expecting InvalidEncoding, got {:?}", res),
|
_ => panic!("Expecting InvalidEncoding, got {:?}", res),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -475,3 +475,14 @@ fn test_multi_strings_encode() {
|
||||||
fn test_multi_strings_serialize() {
|
fn test_multi_strings_serialize() {
|
||||||
assert!(serialize(&("foo", "bar", "baz"), Infinite).is_ok());
|
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