serialization separated to its own lib
This commit is contained in:
parent
ed12866f2b
commit
744c53202e
|
@ -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"
|
||||
|
|
|
@ -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" }
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
[package]
|
||||
name = "serialization"
|
||||
version = "0.1.0"
|
||||
authors = ["debris <marek.kotewicz@gmail.com>"]
|
||||
|
||||
[dependencies]
|
||||
byteorder = "0.5"
|
||||
primitives = { path = "../primitives" }
|
|
@ -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]
|
|
@ -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() {
|
|
@ -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};
|
|
@ -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);
|
|
@ -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();
|
|
@ -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;
|
||||
|
||||
|
|
Loading…
Reference in New Issue