Struct DynamicLibrary

Source
pub struct DynamicLibrary { /* private fields */ }

Implementations§

Source§

impl DynamicLibrary

Source

pub fn open(filename: Option<&Path>) -> Result<Self, String>

Lazily loads the dynamic library named filename into memory and then returns an opaque “handle” for that dynamic library.

Returns a handle to the calling process when passed None.

Source

pub fn prepend_search_path(path: &Path)

Prepends a path to this process’s search path for dynamic libraries

Source

pub fn create_path(path: &[PathBuf]) -> OsString

From a slice of paths, create a new vector which is suitable to be an environment variable for this platforms dylib search path.

Source

pub fn envvar() -> &'static str

Returns the environment variable for this process’s dynamic library search path

Source

pub fn search_path() -> Vec<PathBuf>

Returns the current search path for dynamic libraries being used by this process

Source

pub unsafe fn symbol<T>(&self, symbol: &str) -> Result<*mut T, String>

Returns the address of where symbol symbol was loaded into memory.

In POSIX compliant systems, we return ‘Err’ if the symbol was not found, in this library or any of the libraries that were automatically loaded when this library was loaded.

Source

pub unsafe fn symbol_special<T>( handle: SpecialHandles, symbol: &str, ) -> Result<*mut T, String>

Returns the address of the first occurance of symbol symbol using the default library search order if you use SpecialHandles::Default.

Returns the address of the next occurance of symbol symbol after the current library in the default library search order if you use SpecialHandles::Next.

Trait Implementations§

Source§

impl Drop for DynamicLibrary

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl Send for DynamicLibrary

Source§

impl Sync for DynamicLibrary

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.