claw::dynamic_library_traits Class Reference

Common interface for platform specific methods needed for using dynamic library. More...

`#include <dynamic_library_traits.hpp>`

## Detailed Description

Common interface for platform specific methods needed for using dynamic library.

The claw::dynamic_library_traits implements platform specific methods for dynamic library usage through a common interface. This interface must include :

- a type named `handle`, representing the system handle to a library,
- a method `handle open(std::string)` for opening a library. This method can throw an exception if a problem occurs,
- a method `handle auto_open(std::string)` for opening the current program. the string will be the name (path) of the current program. This method can throw an exception if a problem occurs,
- a method `void close(handle)` for closing a library,
- a method `implementation_defined_pointer get_symbol(handle, std::string)` for getting a pointer to a symbol of the library,
- a methof `bool have_symbol(handle, std::string)` saying if a library has a specific symbol,
- a method `bool valid_handle(handle)` which tell if an handle represent a valid handle.

All these methods must be defined as `static` .

The documentation for this class was generated from the following file:

- dynamic_library_traits.hpp