aboutsummaryrefslogtreecommitdiff
path: root/Cargo.toml
diff options
context:
space:
mode:
authoriximeow <me@iximeow.net>2026-05-16 09:15:44 +0000
committeriximeow <me@iximeow.net>2026-05-16 09:15:44 +0000
commit4064a40a4635cf08455a6fd10f8d7d04a417eb78 (patch)
tree2a3870731a59281902fadc6ac10815d3757a7eae /Cargo.toml
parent3f7ab3a50e75b8962dbde7309a95e45582d0d385 (diff)
behavior feature, also shrink 40kb from behavior additions
Diffstat (limited to 'Cargo.toml')
-rw-r--r--Cargo.toml17
1 files changed, 15 insertions, 2 deletions
diff --git a/Cargo.toml b/Cargo.toml
index cb90983..481cc0e 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -17,6 +17,12 @@ yaxpeax-arch = { version = "0.3.1", default-features = false, features = [] }
"serde_derive" = { version = "1.0", optional = true }
"cfg-if" = "1.0.0"
+# if yaxpeax-x86 ever pulls this into your dep tree: sorry! please report that!
+# this is only used for verifying library structures are kept in sync. it
+# should only be pulled in with the _debug_internal_asserts feature which you
+# should not be using!
+strum = { version = "0.28.0", features = ["derive"], optional = true }
+
[dev-dependencies]
rand = { version = "0.10.0", features = ["thread_rng"] }
asmlinator = { version = "2.0.0" }
@@ -38,7 +44,7 @@ opt-level = 3
lto = true
[features]
-default = ["std", "colors", "use-serde", "fmt"]
+default = ["std", "colors", "use-serde", "fmt", "behavior"]
# opt-in for some apis that are really much nicer with String
std = ["alloc", "yaxpeax-arch/std"]
@@ -52,6 +58,13 @@ alloc = ["yaxpeax-arch/alloc"]
# feature for formatting instructions and their components
fmt = []
+# feature for additional instruction behavior information
+#
+# as of writing this includes an additional ~6kb of combined code and data
+# per-decoder. much like `fmt`, this is mostly useful to ensure that unused
+# data truly is not included in a build.
+behavior = []
+
use-serde = ["yaxpeax-arch/use-serde", "serde", "serde_derive"]
colors = ["yaxpeax-arch/colors"]
@@ -72,4 +85,4 @@ profiling = []
_debug_internal_disasm_stats = []
# do not use this. it is for development and library testing only.
-_debug_internal_asserts = []
+_debug_internal_asserts = ["strum"]