Cargo Features

[dependencies]
safer-ffi = { version = "0.1.13", default-features = false, features = ["docs", "std", "alloc", "nightly", "proc_macros", "async-fn", "debug_proc_macros", "dyn-traits", "futures", "serde", "stabby", "tokio", "headers", "python-headers", "c-headers-with-fn-style", "js", "inventory-0-3-1", "internal-tests", "log"] }
default docs? = std

The std feature is set by default whenever safer-ffi is added without default-features = false somewhere in the dependency tree.

docs = default, headers, nightly, tokio

Document under the following features: all but for debug or experimental.

std default dyn-traits? headers? js? = alloc

Enables use_std of scopeguard, std of optional stabby

alloc std
nightly docs?
proc_macros

Deprecated

async-fn internal-tests? js?

Enables async-fn of safer_ffi-proc_macros

debug_proc_macros

Enables verbose-expansions of safer_ffi-proc_macros

dyn-traits futures? internal-tests? = std

Enables dyn-traits of safer_ffi-proc_macros

Affects safer-ffi::dyn_traits

futures tokio? = dyn-traits

Enables futures

Affects _mod::futures

serde

Enables serde

stabby

Enables stabby

Affects safer-ffi::stabby

tokio docs? internal-tests? = async-compat, futures

Enables tokio

headers c-headers-with-fn-style? docs? internal-tests? js? python-headers? = inventory, std

Enables headers of safer_ffi-proc_macros

python-headers internal-tests? = headers
c-headers-with-fn-style = headers

Tweak the generated .h ever so slightly.

js = async-fn, headers, inventory, napi, std

PRIVATE FEATURE / not part of crates.io package!

Enables once_cell, js of safer_ffi-proc_macros

Affects safer-ffi::js

inventory-0-3-1

Deprecated: now always enabled, and thus does nothing.
TODO: remove in the next semver bump.

internal-tests = async-fn, dyn-traits, headers, python-headers

Enables rt-multi-thread of tokio

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

async-compat tokio?
inventory headers? js?
log implicit feature

Enables log

log:

A lightweight logging facade for Rust

napi js?

Enables cratesio-placeholder-package