| 1 | //! Unsafe but flexible platform-specific bindings to dynamic library loading facilities. |
| 2 | //! |
| 3 | //! These modules expose more extensive and powerful bindings to the dynamic |
| 4 | //! library loading facilities. Use of these bindings come at the cost of less (in most cases, |
| 5 | //! none at all) safety guarantees, which are provided by the top-level bindings. |
| 6 | //! |
| 7 | //! # Examples |
| 8 | //! |
| 9 | //! Using these modules will likely involve conditional compilation: |
| 10 | //! |
| 11 | //! ```ignore |
| 12 | //! # extern crate libloading; |
| 13 | //! #[cfg(unix)] |
| 14 | //! use libloading::os::unix::*; |
| 15 | //! #[cfg(windows)] |
| 16 | //! use libloading::os::windows::*; |
| 17 | //! ``` |
| 18 | |
| 19 | /// UNIX implementation of dynamic library loading. |
| 20 | #[cfg (any(unix, libloading_docs))] |
| 21 | #[cfg_attr (libloading_docs, doc(cfg(unix)))] |
| 22 | pub mod unix; |
| 23 | |
| 24 | /// Windows implementation of dynamic library loading. |
| 25 | #[cfg (any(windows, libloading_docs))] |
| 26 | #[cfg_attr (libloading_docs, doc(cfg(windows)))] |
| 27 | pub mod windows; |
| 28 | |