# [−][src]Struct shared_library::dynamic_library::DynamicLibrary

    pub struct DynamicLibrary { /* fields omitted */ }

## Methods

### `impl DynamicLibrary`[src]

#### `pub fn open(filename: Option<&Path>) -> Result<Self, String>`[src]

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`.

#### `pub fn prepend_search_path(path: &Path)`[src]

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

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

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

#### `pub fn envvar() -> &'static str`[src]

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

#### `pub fn search_path() -> Vec<PathBuf>`[src]

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

#### `pub unsafe fn symbol<T>(&self, symbol: &str) -> Result<*mut T, String>`[src]

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.

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

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

### `impl Send for DynamicLibrary`[src]

### `impl Drop for DynamicLibrary`[src]

#### `fn drop(&mut self)`[src]

Executes the destructor for this type. Read more

### `impl Sync for DynamicLibrary`[src]

## Auto Trait Implementations

### `impl Unpin for DynamicLibrary`

### `impl UnwindSafe for DynamicLibrary`

### `impl RefUnwindSafe for DynamicLibrary`

## Blanket Implementations

### `impl<T, U> Into<U> for T where
U: From<T>,` [src]

#### `fn into(self) -> U`[src]

Performs the conversion.

### `impl<T> From<T> for T`[src]

#### `fn from(t: T) -> T`[src]

Performs the conversion.

### `impl<T, U> TryFrom<U> for T where
U: Into<T>,` [src]

#### `type Error = Infallible`

The type returned in the event of a conversion error.

#### `fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>`[src]

Performs the conversion.

### `impl<T, U> TryInto<U> for T where
U: TryFrom<T>,` [src]

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

The type returned in the event of a conversion error.

#### `fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>`[src]

Performs the conversion.

### `impl<T> BorrowMut<T> for T where
T: ?Sized,` [src]

#### `fn borrow_mut(&mut self) -> &mut T`[src]

Mutably borrows from an owned value. Read more

### `impl<T> Borrow<T> for T where
T: ?Sized,` [src]

#### `fn borrow(&self) -> &T`[src]

Immutably borrows from an owned value. Read more

### `impl<T> Any for T where
T: 'static + ?Sized,` [src]

#### `fn type_id(&self) -> TypeId`[src]

Gets the `TypeId` of `self`. Read more

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g., `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g., `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g., `str,u8` or `String,struct:Vec,test`)