This package provides wrapper code for dynamic module loading
<group>Glib, the general-purpose library</group>
type G_Module is new C_Proxy;
generic
type Pointer is private;
procedure Generic_Module_Symbol
(Module : G_Module;
Symbol_Name : String;
Symbol : out Pointer;
Success : out Boolean)
Retrieve a symbol pointer from `module'. Success is set to True on success.
Module_Bind_Lazy : constant Module_Flags := 2 ** 0;
Module_Bind_Mask : constant Module_Flags := 16#1#;
function Module_Build_Path
(Directory : String;
Module_Name : String) return String
Build the actual file name containing a module. directory' is the directory where the module file is supposed to be, or the null string in which case it should either be in the current directory or, on some operating systems, in some standard place, for instance on the PATH. Hence, to be absolutely sure to get the correct module, always pass in a directory. The file name consists of the directory, if supplied, andmodule_name' suitably decorated accoring to the operating system's conventions (for instance lib*.so or *.dll).
No checks are made that the file exists, or is of correct type.
function Module_Close (Module : G_Module) return Boolean
Close a previously opened module, return True on success.
function Module_Error return String
Query the last module error as a string
type Module_Flags is mod 2 ** 32;
procedure Module_Make_Resident (Module : G_Module)
Make a module resident so Module_Close on it will be ignored
function Module_Name (Module : G_Module) return String
Retrieve the file name from an existing module
function Module_Open
(File_Name : String;
Flags : Module_Flags := Module_Bind_Lazy) return G_Module
Open a module `file_name' and return handle, which is null on error.
function Module_Supported return Boolean
Return True if dynamic module loading is supported