fermium 20012.0.0-alpha.1

An opinionated crate of SDL2 bindings.
Documentation
//! Module for loading "shared objects" (aka dynamic libraries / DLLs).

pub use crate::{c_char, c_void};

extern "C" {
  /// This function dynamically loads a shared object and returns a pointer to
  /// the object handle (or NULL if there was an error).
  ///
  /// The `sofile` parameter is a system dependent name of the object file.
  pub fn SDL_LoadObject(sofile: *const c_char) -> *mut c_void;

  /// Given an object handle, this function looks up the address of the named
  /// function in the shared object and returns it.
  ///
  /// This address is no longer valid after calling [`SDL_UnloadObject`].
  pub fn SDL_LoadFunction(
    handle: *mut c_void, name: *const c_char,
  ) -> *mut c_void;

  /// Unload a shared object from memory.
  pub fn SDL_UnloadObject(handle: *mut c_void);
}