load("@rules_rust//rust:defs.bzl", "rust_library", "rust_test")

# scry-interval — pure interval + region-memory abstract domain
# (FEAT-001/FEAT-005), extracted for the self-contained analyzer
# (FEAT-013, DD-011). Like scry-octagon/scry-taint/scry-provenance it is
# a dependency-free crate cross-compiled to wasm32-wasip2 (linked into
# the scry-analyzer component so analyze() runs standalone) AND native
# (the wasm-lattice component delegates to it; scry-host-tests falsifies
# it).

rust_library(
    name = "scry_interval",
    srcs = ["src/lib.rs"],
    crate_name = "scry_interval",
    edition = "2024",
    visibility = ["//visibility:public"],
    tags = ["feat-013"],
)

rust_test(
    name = "scry_interval_test",
    crate = ":scry_interval",
    edition = "2024",
    tags = ["feat-013"],
)
