Allowlisting
Allowlisting allows us to be precise about which type, function, and global
variable definitions bindgen generates bindings for. By default, if we don't
specify any allowlisting rules, everything is considered allowlisted. This may
not be desirable because of either
- the generated bindings contain a lot of extra definitions we don't plan on using, or
- the header file contains C++ features for which Rust does not have a corresponding form (such as partial template specialization), and we would like to avoid these definitions
If we specify allowlisting rules, then bindgen will only generate bindings to
types, functions, and global variables that match the allowlisting rules, or are
transitively used by a definition that matches them.
Library
bindgen::Builder::allowlist_typebindgen::Builder::allowlist_functionbindgen::Builder::allowlist_varbindgen::Builder::allowlist_filebindgen::Builder::allowlist_item
Command Line
--allowlist-type <type>--allowlist-function <function>--allowlist-var <var>--allowlist-file <path>--allowlist-item <item>
Annotations
None.