Use lz4-compression instead of lz4-compress

This commit is contained in:
Noah
2020-07-21 00:46:11 -05:00
parent ab232e6cd8
commit fcad7e0091
3 changed files with 13 additions and 22 deletions

28
Cargo.lock generated
View File

@@ -107,7 +107,7 @@ version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f30d3a39baa26f9651f17b375061f3233dde33424a8b72b0dbe93a68a0bc896d"
dependencies = [
"byteorder 1.3.4",
"byteorder",
"serde",
]
@@ -163,7 +163,7 @@ checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
dependencies = [
"block-padding",
"byte-tools",
"byteorder 1.3.4",
"byteorder",
"generic-array",
]
@@ -206,12 +206,6 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
[[package]]
name = "byteorder"
version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855"
[[package]]
name = "byteorder"
version = "1.3.4"
@@ -803,14 +797,10 @@ dependencies = [
]
[[package]]
name = "lz4-compress"
version = "0.1.1"
name = "lz4-compression"
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0f966533a922a9bba9e95e594c1fdb3b9bf5fdcdb11e37e51ad84cd76e468b91"
dependencies = [
"byteorder 0.5.3",
"quick-error",
]
checksum = "761104bf97f13a3caf47d822498a0760a10d00d220148bac2669f63fc3bb8270"
[[package]]
name = "maplit"
@@ -1249,7 +1239,7 @@ version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae1ded71d66a4a97f5e961fd0cb25a5f366a42a41570d16a763a69c092c26ae4"
dependencies = [
"byteorder 1.3.4",
"byteorder",
]
[[package]]
@@ -1324,7 +1314,7 @@ dependencies = [
"bincode",
"bitflags",
"itertools 0.8.2",
"lz4-compress",
"lz4-compression",
"num-bigint",
"num-complex",
"serde",
@@ -1402,7 +1392,7 @@ dependencies = [
"bitflags",
"blake2",
"bstr",
"byteorder 1.3.4",
"byteorder",
"caseless",
"cfg-if",
"chrono",
@@ -1739,7 +1729,7 @@ version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "edd106a334b7657c10b7c540a0106114feadeb4dc314513e97df481d5d966f42"
dependencies = [
"byteorder 1.3.4",
"byteorder",
"dirs",
"winapi",
]

View File

@@ -11,7 +11,7 @@ license = "MIT"
[dependencies]
bincode = "1.1"
bitflags = "1.1"
lz4-compress = "0.1.1"
lz4-compression = "0.7"
num-bigint = { version = "0.3", features = ["serde"] }
num-complex = { version = "0.2", features = ["serde"] }
serde = { version = "1.0", features = ["derive"] }

View File

@@ -409,14 +409,15 @@ impl CodeObject {
/// Load a code object from bytes
pub fn from_bytes(data: &[u8]) -> Result<Self, Box<dyn std::error::Error>> {
let data = lz4_compress::decompress(data)?;
let data = lz4_compression::decompress::decompress(data)
.map_err(|e| format!("lz4 error: {:?}", e))?;
bincode::deserialize::<Self>(&data).map_err(|e| e.into())
}
/// Serialize this bytecode to bytes.
pub fn to_bytes(&self) -> Vec<u8> {
let data = bincode::serialize(&self).expect("Code object must be serializable");
lz4_compress::compress(&data)
lz4_compression::compress::compress(&data)
}
pub fn get_constants(&self) -> impl Iterator<Item = &Constant> {