Procedural macro for defining global constructor/destructor functions.
This provides module initialization/teardown functions for Rust (like
__attribute__((constructor)) in C/C++) for Linux, OSX, and Windows via
This library works and is regularly tested on Linux, OSX and Windows, with both
Other platforms are supported but not tested as part of the automatic builds. This library will also work as expected in both
cdylib outputs, ie: the
dtor will run at executable or library
This library currently requires Rust >
1.31.0 at a minimum for the
procedural macro support.
- Marks a function or static variable as a library/executable constructor. This uses OS-specific linker sections to call a specific function at load time.
- Marks a function as a library/executable destructor. This uses OS-specific linker sections to call a specific function at termination time.