uvw  1.3.0
Public Member Functions | List of all members
uvw::SharedLib Class Referencefinal

The SharedLib class. More...

#include <lib.hpp>

Inheritance diagram for uvw::SharedLib:
Inheritance graph
[legend]
Collaboration diagram for uvw::SharedLib:
Collaboration graph
[legend]

Public Member Functions

 operator bool () const noexcept
 Checks if the library has been correctly opened. More...
 
template<typename F >
F * sym (std::string name)
 Retrieves a data pointer from a dynamic library. More...
 
const char * error () const noexcept
 Returns the last error message, if any. More...
 
- Public Member Functions inherited from uvw::UnderlyingType< SharedLib, uv_lib_t >
Looploop () const noexcept
 Gets the loop from which the resource was originated. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from uvw::UnderlyingType< SharedLib, uv_lib_t >
static std::shared_ptr< SharedLibcreate (Args &&... args)
 Creates a new resource of the given type. More...
 

Detailed Description

The SharedLib class.

uvw provides cross platform utilities for loading shared libraries and retrieving symbols from them, by means of the API offered by libuv.

Definition at line 22 of file lib.hpp.

Member Function Documentation

◆ error()

const char* uvw::SharedLib::error ( ) const
inlinenoexcept

Returns the last error message, if any.

Returns
The last error message, if any.

Definition at line 62 of file lib.hpp.

◆ operator bool()

uvw::SharedLib::operator bool ( ) const
inlineexplicitnoexcept

Checks if the library has been correctly opened.

Returns
True if the library is opened, false otherwise.

Definition at line 38 of file lib.hpp.

◆ sym()

template<typename F >
F* uvw::SharedLib::sym ( std::string  name)
inline

Retrieves a data pointer from a dynamic library.

F shall be a valid function type (as an example, void(int)).
It is legal for a symbol to map to nullptr.

Parameters
nameThe symbol to be retrieved.
Returns
A valid function pointer in case of success, nullptr otherwise.

Definition at line 50 of file lib.hpp.


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