serialization separated to its own lib

This commit is contained in:
debris 2016-09-19 15:15:56 +02:00
parent ed12866f2b
commit 744c53202e
9 changed files with 30 additions and 8 deletions

9
Cargo.lock generated
View File

@ -10,6 +10,7 @@ dependencies = [
"primitives 0.1.0",
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serialization 0.1.0",
]
[[package]]
@ -120,6 +121,14 @@ name = "rustc-serialize"
version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "serialization"
version = "0.1.0"
dependencies = [
"byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
"primitives 0.1.0",
]
[[package]]
name = "time"
version = "0.1.35"

View File

@ -12,3 +12,4 @@ eth-secp256k1 = { git = "https://github.com/ethcore/rust-secp256k1" }
base58 = "0.1"
primitives = { path = "primitives" }
bitcrypto = { path = "crypto" }
serialization = { path = "serialization" }

8
serialization/Cargo.toml Normal file
View File

@ -0,0 +1,8 @@
[package]
name = "serialization"
version = "0.1.0"
authors = ["debris <marek.kotewicz@gmail.com>"]
[dependencies]
byteorder = "0.5"
primitives = { path = "../primitives" }

View File

@ -2,7 +2,7 @@
//! https://bitcoin.org/en/developer-reference#compactsize-unsigned-integers
use std::fmt;
use ser::{
use {
Serializable, Stream,
Deserializable, Reader, Error as ReaderError
};
@ -99,7 +99,7 @@ impl Deserializable for CompactInteger {
#[cfg(test)]
mod tests {
use ser::{Reader, Error as ReaderError, Stream};
use {Reader, Error as ReaderError, Stream};
use super::CompactInteger;
#[test]

View File

@ -1,7 +1,7 @@
use bytes::Bytes;
use hash::{H160, H256, H264, H512, H520};
use ser::{Serializable, Stream, Deserializable, Reader, Error};
use ser::compact_integer::CompactInteger;
use compact_integer::CompactInteger;
use {Serializable, Stream, Deserializable, Reader, Error};
macro_rules! impl_ser_for_hash {
($name: ident, $size: expr) => {
@ -46,7 +46,7 @@ impl Deserializable for Bytes {
#[cfg(test)]
mod tests {
use bytes::Bytes;
use ser::{serialize, deserialize};
use {serialize, deserialize};
#[test]
fn test_bytes_deserialize() {

View File

@ -1,7 +1,11 @@
extern crate byteorder;
extern crate primitives;
mod compact_integer;
mod impls;
pub mod reader;
pub mod stream;
pub use primitives::{hash, bytes};
pub use self::reader::{Reader, Deserializable, deserialize, Error};
pub use self::stream::{Stream, Serializable, serialize};

View File

@ -1,6 +1,6 @@
use std::{io, cmp};
use byteorder::{LittleEndian, ReadBytesExt};
use ser::compact_integer::CompactInteger;
use compact_integer::CompactInteger;
pub fn deserialize<T>(buffer: &[u8]) -> Result<T, Error> where T: Deserializable {
let mut reader = Reader::new(buffer);

View File

@ -1,7 +1,7 @@
//! Stream used for serialization.
use std::io::{self, Write};
use byteorder::{LittleEndian, WriteBytesExt};
use ser::compact_integer::CompactInteger;
use compact_integer::CompactInteger;
pub fn serialize(t: &Serializable) -> Vec<u8> {
let mut stream = Stream::default();

View File

@ -19,12 +19,12 @@ extern crate secp256k1;
extern crate base58;
extern crate primitives;
extern crate bitcrypto as crypto;
extern crate serialization as ser;
pub mod chain;
pub mod keys;
pub mod net;
pub mod script;
pub mod ser;
pub mod network;