Add the `simd` feature to enable simd-json

This doesn't yet work, but this is the cargo part of the implementation
This commit is contained in:
R Tyler Croy 2020-07-15 14:57:23 -07:00
parent 67a47a3b73
commit 70b4f4598f
4 changed files with 65 additions and 1 deletions

2
.cargo/config Normal file
View File

@ -0,0 +1,2 @@
[build]
rustflags = ["-C", "target-cpu=native"]

54
Cargo.lock generated
View File

@ -618,6 +618,15 @@ dependencies = [
"web-sys",
]
[[package]]
name = "float-cmp"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da62c4f1b81918835a8c6a484a397775fff5953fe83529afd51b05f5c6a6617d"
dependencies = [
"num-traits 0.2.12",
]
[[package]]
name = "futures"
version = "0.3.5"
@ -772,6 +781,16 @@ dependencies = [
"web-sys",
]
[[package]]
name = "halfbrown"
version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c12499524b5585419ab2f51545a19b842263a373580a83c0eb98a0142a260a10"
dependencies = [
"hashbrown",
"serde 1.0.114",
]
[[package]]
name = "handlebars"
version = "3.0.1"
@ -786,6 +805,16 @@ dependencies = [
"serde_json",
]
[[package]]
name = "hashbrown"
version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "96282e96bfcd3da0d3aa9938bedf1e50df3269b6db08b4876d2da0bb1a0841cf"
dependencies = [
"ahash",
"autocfg",
]
[[package]]
name = "heck"
version = "0.3.1"
@ -849,6 +878,7 @@ dependencies = [
"serde_derive",
"serde_json",
"serde_regex",
"simd-json",
"smol",
"strum",
"strum_macros",
@ -1710,6 +1740,18 @@ dependencies = [
"opaque-debug",
]
[[package]]
name = "simd-json"
version = "0.3.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc89d07bde0ea8bed2559b48d735bb753aff4305f20841bb42a9021a456fe486"
dependencies = [
"halfbrown",
"serde 1.0.114",
"serde_json",
"value-trait",
]
[[package]]
name = "slab"
version = "0.4.2"
@ -2098,6 +2140,18 @@ dependencies = [
"rand",
]
[[package]]
name = "value-trait"
version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0901856b3f57c2c00d2c12f76b1c5ca409bddbad8c38a5241becdc6ef48e061"
dependencies = [
"float-cmp",
"halfbrown",
"itoa",
"ryu",
]
[[package]]
name = "vcpkg"
version = "0.2.10"

View File

@ -4,7 +4,10 @@ version = "0.3.3"
authors = ["R. Tyler Croy <rtyler+hotdog@brokenco.de>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
default = []
simd = ["simd-json"]
[dependencies]
# Base asynchronous runtime
@ -52,6 +55,9 @@ serde_json = "~1.0.0"
# Helpful to deserialize our regular expressions directly from the
# configuration file
serde_regex = "~0.4.0"
simd-json = { version = "~0.3.14", optional = true}
smol = "~0.1.18"
# Needed to do clever enum/derive tricks for strings
strum = "0.18.0"

View File

@ -13,6 +13,8 @@ extern crate serde;
#[macro_use]
extern crate serde_derive;
extern crate serde_regex;
#[cfg(feature = "simd")]
extern crate simd_json;
extern crate strum;
extern crate syslog_loose;
extern crate syslog_rfc5424;