2.3. Qore Modules

Qore modules allow the Qore language to be extended at run-time. Qore modules must conform to the Qore Module API and have the file extension *.qmod. Qore modules normally depend on other shared libraries and therefore can only be loaded if the libraries they require are present on the system and can be found in the library path.

Please note that as of version 0.7.0, modules are no longer delivered with the Qore library. Modules must be downloaded separately; see Qore's home page for more information.

To load a module at parse time (normally required for most modules), use the %requires parse directive. If the named feature is not already present in Qore, Qore looks for a module with this name in the directories listed in the QORE_MODULE_DIR environment variable.

Use the load_module() function to load Qore modules at run-time; however, note that any module providing parse support (classes, constants, functions, etc) must be loaded at parse time using the %requires directive.

From Qore 0.7.1, you can specify a comparison operator (one of < <=, =, >=, or >) and version information after the module name as well. Version numbers are compared via integer comparisons of each element, where elements are separated by a '.'. If one of the versions does not have as many elements as another, the missing elements are assumed to be '0' (i.e. version "1.0" compared with version "1.0.1" will be exteneded to "1.0.0").

Also note that DBI drivers are loaded on demand by the Datasource and DatasourcePool classes.

At the time of writing this documentation, the following modules exist for Qore:

Table 2.2. Qore Modules

Module

Description

asn1

Provides ASN.1 functionality to Qore

xmlsec

Provides xmldsig and xmlenc functionality to Qore.

tibrv

Provides TIBCO Rendezvous(R) (TIBCO, Inc) functionality to Qore.

tibae

Provides TIBCO ActiveEnterprise(TM) (TIBCO, Inc) functionality to Qore.

tuxedo

Provides Oracle (ex Bea) Tuxedo functionality to Qore.

mysql

Provides a MySQL DBI driver to Qore.

pgsql

Provides a PostgreSQL DBI driver to Qore.

sybase

Provides a Sybase DBI driver to Qore.

freetds

Provides a FreeTDS-based DBI driver to Qore.

oracle

Provides an Oracle DBI driver to Qore.

glut

Provides GLUT functionality to Qore.

opengl

Provides an OpenGL API to Qore.

qt-core, qt-gui, qt-svn, qt-opengl

Provides QT4 APIs to Qore.

ncurses

Provides curses APIs to Qore.