-
Notifications
You must be signed in to change notification settings - Fork 54
/
Cargo.toml
91 lines (74 loc) · 2.1 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
[package]
edition = "2021"
name = "egglog"
version = "0.3.0"
description = "egglog is a language that combines the benefits of equality saturation and datalog. It can be used for analysis, optimization, and synthesis of programs. It is the successor to the popular rust library egg."
repository = "https://github.com/egraphs-good/egglog"
keywords = ["e-graphs", "egglog", "datalog", "compiler", "equality"]
license = "MIT"
readme = "README.md"
[[bench]]
name = "example_benchmarks"
harness = false
[workspace]
members = [".", "web-demo"]
[[test]]
name = "files"
harness = false
required-features = ["bin"]
[[bin]]
name = "egglog"
path = "src/main.rs"
required-features = ["bin"]
[features]
default = ["bin"]
bin = [
"serde",
"graphviz",
"dep:clap",
"dep:env_logger",
"dep:serde_json",
"dep:chrono",
]
serde = ["egraph-serialize/serde"]
graphviz = ["egraph-serialize/graphviz"]
wasm-bindgen = ["instant/wasm-bindgen", "dep:getrandom"]
nondeterministic = []
[dependencies]
hashbrown = { version = "0.15" }
indexmap = "2.0"
instant = "0.1"
log = "0.4"
rustc-hash = "1.1"
symbol_table = { version = "0.4.0", features = ["global"] }
thiserror = "1"
lazy_static = "1.4"
num = "0.4.3"
smallvec = "1.11"
generic_symbolic_expressions = "5.0.4"
egraph-serialize = { version = "0.2.0", default-features = false }
# binary dependencies
clap = { version = "4", features = ["derive"], optional = true }
env_logger = { version = "0.10", optional = true }
serde_json = { version = "1.0.100", optional = true, features = [
"preserve_order",
] }
ordered-float = { version = "3.7" }
# Need to add "js" feature for "graphviz-rust" to work in wasm
getrandom = { version = "0.2.10", features = ["js"], optional = true }
im-rc = "15.1.0"
im = "15.1.0"
[build-dependencies]
chrono = { version = "0.4", default-features = false, optional = true, features = [
"now",
] }
[dev-dependencies]
codspeed-criterion-compat = "2.7.2"
glob = "0.3.1"
libtest-mimic = "0.6.1"
[profile.release]
incremental = true
# https://github.com/mstange/samply/?tab=readme-ov-file#turn-on-debug-info-for-full-stacks
[profile.profiling]
inherits = "release"
debug = true