Sha256: e2396bd3f427f6b33ffeec3e42404b2220c7c79afed14a7b5351569b5ec55150

Contents?: true

Size: 959 Bytes

Versions: 8

Compression:

Stored size: 959 Bytes

Contents

.. _dll:

Shared library handling
=======================

libuv provides cross platform utilities for loading shared libraries and
retrieving symbols from them, using the following API.


Data types
----------

.. c:type:: uv_lib_t

    Shared library data type.


Public members
^^^^^^^^^^^^^^

N/A


API
---

.. c:function:: int uv_dlopen(const char* filename, uv_lib_t* lib)

    Opens a shared library. The filename is in utf-8. Returns 0 on success and
    -1 on error. Call :c:func:`uv_dlerror` to get the error message.

.. c:function:: void uv_dlclose(uv_lib_t* lib)

    Close the shared library.

.. c:function:: uv_dlsym(uv_lib_t* lib, const char* name, void** ptr)

    Retrieves a data pointer from a dynamic library. It is legal for a symbol
    to map to NULL. Returns 0 on success and -1 if the symbol was not found.

.. c:function:: const char* uv_dlerror(const uv_lib_t* lib)

    Returns the last uv_dlopen() or uv_dlsym() error message.

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
libuv-2.0.5 ext/libuv/docs/src/dll.rst
libuv-2.0.4 ext/libuv/docs/src/dll.rst
libuv-2.0.3 ext/libuv/docs/src/dll.rst
libuv-2.0.2 ext/libuv/docs/src/dll.rst
libuv-2.0.1 ext/libuv/docs/src/dll.rst
libuv-2.0.0 ext/libuv/docs/src/dll.rst
libuv-1.3.0 ext/libuv/docs/src/dll.rst
libuv-1.2.0 ext/libuv/docs/src/dll.rst