[package]
name = "datafusion-physical-expr"
description = "Physical expression implementation for DataFusion query engine"
keywords = ["arrow", "query", "sql"]
version = { workspace = true }
edition = { workspace = true }
readme = { workspace = true }
homepage = { workspace = true }
repository = { workspace = true }
license = { workspace = true }
authors = { workspace = true }
rust-version = { workspace = true }
[lib]
name = "datafusion_physical_expr"
path = "src/lib.rs"
[features]
crypto_expressions = ["md-5", "sha2", "blake2", "blake3"]
default = ["crypto_expressions", "regex_expressions", "unicode_expressions", "encoding_expressions"]
dictionary_expressions = ["arrow/dyn_cmp_dict"]
encoding_expressions = ["base64", "hex"]
regex_expressions = ["regex"]
unicode_expressions = ["unicode-segmentation"]
[dependencies]
ahash = { version = "0.8", default-features = false, features = ["runtime-rng"] }
arrow = { workspace = true }
arrow-array = { workspace = true }
arrow-buffer = { workspace = true }
arrow-schema = { workspace = true }
base64 = { version = "0.21", optional = true }
blake2 = { version = "^0.10.2", optional = true }
blake3 = { version = "1.0", optional = true }
chrono = { version = "0.4.27", default-features = false }
datafusion-common = { path = "../common", version = "31.0.0" }
datafusion-expr = { path = "../expr", version = "31.0.0" }
half = { version = "2.1", default-features = false }
hashbrown = { version = "0.14", features = ["raw"] }
hex = { version = "0.4", optional = true }
indexmap = "2.0.0"
itertools = { version = "0.11", features = ["use_std"] }
libc = "0.2.140"
log = "^0.4"
md-5 = { version = "^0.10.0", optional = true }
paste = "^1.0"
petgraph = "0.6.2"
rand = "0.8"
regex = { version = "1.8", optional = true }
sha2 = { version = "^0.10.1", optional = true }
unicode-segmentation = { version = "^1.7.1", optional = true }
uuid = { version = "^1.2", features = ["v4"] }
[dev-dependencies]
criterion = "0.5"
rand = "0.8"
rstest = "0.18.0"
[[bench]]
harness = false
name = "in_list"