block2 0.5.1

Apple's C language extension of blocks
Documentation
[package]
name = "block2"
# Remember to update html_root_url in lib.rs
version = "0.5.1"
authors = ["Steven Sheldon", "Mads Marquart <mads@marquart.dk>"]
edition = "2021"
rust-version = "1.60"

description = "Apple's C language extension of blocks"
keywords = ["objective-c", "macos", "ios", "blocks"]
categories = [
    "api-bindings",
    "development-tools::ffi",
    "os::macos-apis",
    "external-ffi-bindings",
]
readme = "README.md"
repository = "https://github.com/madsmtm/objc2"
documentation = "https://docs.rs/block2/"
license = "MIT"

[features]
default = ["std"]

# Currently not possible to turn off, put here for forwards compatibility.
std = ["alloc", "objc2/std"]
alloc = ["objc2/alloc"]

# Deprecated; this is the default on Apple platforms, and not applicable on other platforms.
apple = []

# Link to libBlocksRuntime from compiler-rt.
compiler-rt = ["objc2/unstable-compiler-rt"] # TODO: fix this

# Link to GNUStep's libobjc2 (which contains the block implementation).
gnustep-1-7 = ["objc2/gnustep-1-7"]
gnustep-1-8 = ["gnustep-1-7", "objc2/gnustep-1-8"]
gnustep-1-9 = ["gnustep-1-8", "objc2/gnustep-1-9"]
gnustep-2-0 = ["gnustep-1-9", "objc2/gnustep-2-0"]
gnustep-2-1 = ["gnustep-2-0", "objc2/gnustep-2-1"]

# Link to Microsoft's libobjc2.
unstable-winobjc = ["gnustep-1-8"]

# Link to ObjFW.
unstable-objfw = []

# Expose private ffi functions and statics.
unstable-private = []

[dependencies]
objc2 = { path = "../objc2", version = "0.5.2", default-features = false }

[package.metadata.docs.rs]
default-target = "aarch64-apple-darwin"
features = ["unstable-private"]
targets = [
    "aarch64-apple-darwin",
    "x86_64-apple-darwin",
    "aarch64-apple-ios",
    "x86_64-apple-ios",
    "aarch64-apple-tvos",
    "aarch64-apple-watchos",
    "aarch64-apple-ios-macabi",
    "x86_64-unknown-linux-gnu",
    "i686-unknown-linux-gnu",
]

[package.metadata.release]
shared-version = false
tag-prefix = "block"
enable-features = []