[package]
edition = "2021"
rust-version = "1.71"
name = "dispatch2"
version = "0.3.1"
authors = [
"Mads Marquart <mads@marquart.dk>",
"Mary <mary@mary.zone>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Bindings and wrappers for Apple's Grand Central Dispatch (GCD)"
readme = "README.md"
keywords = [
"gcd",
"macos",
"ios",
"dispatch",
"libdispatch",
]
categories = [
"api-bindings",
"development-tools::ffi",
"external-ffi-bindings",
"os::macos-apis",
]
license = "Zlib OR Apache-2.0 OR MIT"
repository = "https://github.com/madsmtm/objc2"
[package.metadata.docs.rs]
default-target = "aarch64-apple-darwin"
rustc-args = [
"--cfg",
"docsrs",
]
targets = [
"aarch64-apple-darwin",
"x86_64-apple-darwin",
"aarch64-apple-ios",
"aarch64-apple-tvos",
"aarch64-apple-watchos",
"aarch64-apple-ios-macabi",
"aarch64-apple-visionos",
"x86_64-unknown-linux-gnu",
"i686-unknown-linux-gnu",
]
[package.metadata.release]
shared-version = false
tag-prefix = "dispatch2"
[features]
alloc = []
block2 = ["dep:block2"]
default = [
"std",
"block2",
"libc",
"objc2",
]
libc = ["dep:libc"]
objc2 = ["dep:objc2"]
std = ["alloc"]
[lib]
name = "dispatch2"
path = "src/lib.rs"
[dependencies.bitflags]
version = "2.5.0"
features = ["std"]
default-features = false
[dependencies.block2]
version = ">=0.6.1, <0.8.0"
features = ["alloc"]
optional = true
default-features = false
[dependencies.libc]
version = "0.2.80"
optional = true
default-features = false
[dependencies.objc2]
version = ">=0.6.2, <0.8.0"
features = ["std"]
optional = true
default-features = false
[dev-dependencies.static_assertions]
version = "1.1.0"
[lints.clippy]
ptr_as_ptr = "warn"
redundant_feature_names = "allow"
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.rust]
elided_lifetimes_in_paths = "warn"
missing_copy_implementations = "warn"
non_ascii_idents = "deny"
unreachable_pub = "warn"
unsafe_op_in_unsafe_fn = "deny"