[package]
edition = "2024"
rust-version = "1.90"
name = "facet"
version = "0.43.2"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Reflection for Rust: introspect types at compile time with metadata for serialization, pretty-printing, CLIs, and more"
homepage = "https://facet.rs"
readme = "README.md"
keywords = [
"reflection",
"introspection",
"serialization",
"metadata",
"derive",
]
categories = [
"development-tools",
"encoding",
"rust-patterns",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/facet-rs/facet"
[package.metadata.docs.rs]
features = [
"std",
"reflect",
"camino",
"ordered-float",
"doc",
]
rustdoc-args = [
"--html-in-header",
"arborium-header.html",
]
[package.metadata."docs.rs"]
rustdoc-args = [
"--html-in-header",
"arborium-header.html",
]
[features]
all-impls = [
"alloc",
"nonzero",
"net",
"bytes",
"bytestring",
"camino",
"compact_str",
"uuid",
"ulid",
"ordered-float",
"jiff02",
"time",
"chrono",
"url",
"indexmap",
"num-complex",
"smartstring",
"smol_str",
"rust_decimal",
"lock_api",
"iddqd",
"yoke",
"smallvec",
]
alloc = ["facet-core/alloc"]
auto-traits = ["facet-core/auto-traits"]
bytes = ["facet-core/bytes"]
bytestring = ["facet-core/bytestring"]
camino = ["facet-core/camino"]
chrono = ["facet-core/chrono"]
compact_str = ["facet-core/compact_str"]
default = [
"std",
"helpful-derive",
"doc",
]
doc = ["facet-macros/doc"]
fn-ptr = ["facet-core/fn-ptr"]
function = ["facet-macros/function"]
helpful-derive = ["facet-macros/helpful-derive"]
iddqd = ["facet-core/iddqd"]
indexmap = ["facet-core/indexmap"]
jiff02 = ["facet-core/jiff02"]
lock_api = ["facet-core/lock_api"]
net = ["facet-core/net"]
nonzero = ["facet-core/nonzero"]
num-complex = ["facet-core/num-complex"]
ordered-float = ["facet-core/ordered-float"]
reflect = ["dep:facet-reflect"]
ruint = ["facet-core/ruint"]
rust_decimal = ["facet-core/rust_decimal"]
simd = ["facet-core/simd"]
slow-tests = []
smallvec = ["facet-core/smallvec"]
smartstring = ["facet-core/smartstring"]
smol_str = ["facet-core/smol_str"]
std = [
"facet-core/std",
"alloc",
]
tendril = ["facet-core/tendril"]
testfeat = []
time = ["facet-core/time"]
tuples-12 = ["facet-core/tuples-12"]
ulid = ["facet-core/ulid"]
url = ["facet-core/url"]
uuid = ["facet-core/uuid"]
yoke = ["facet-core/yoke"]
[lib]
name = "facet"
path = "src/lib.rs"
[[example]]
name = "derive_showcase"
path = "examples/derive_showcase.rs"
[[test]]
name = "main"
path = "tests/main.rs"
[dependencies.facet-core]
version = "=0.43.2"
default-features = false
[dependencies.facet-macros]
version = "0.43.2"
default-features = false
[dependencies.facet-reflect]
version = "0.43.2"
optional = true
[dependencies.static_assertions]
version = "^1.1.0"
optional = true
[dev-dependencies.num-complex]
version = "0.4.6"
[dev-dependencies.owo-colors]
version = "4.2.2"
[dev-dependencies.tempfile]
version = "^3.23.0"
[build-dependencies.autocfg]
version = "^1.5.0"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(facet_no_doc)"]