#include <more/lang/package.h>
Collaboration diagram for more::lang::package:
cx_package_variable
of idfr or 0 if none. More...
An internal package has access to a writable directory determined by the package name, where it can place source code and do compilations. An external package acts as a wrapper for an lt_dlhandle
(see libltdl in the GNU Libtool).
|
Type used for flags.
|
|
Construct a package rooted at cxt named idr.
If split_p, use one source file per symbol. cxt may be 0. The flags are set to |
|
Construct an external package idr rooted at cxt with symbols from h.
The destructor will call |
|
Construct an external package idr rooted at cxt with symbols from
cxt may be 0. The flags are set to |
|
Destruct the package, this should be called by the collector.
|
|
Create sources and (re-)compile all symbols now. This is normally done automatically when an identifier is requested. |
|
Create sources now. This is normally done automatically. |
|
Define the variable of locn in this package under the name idr. See the other overload for details.
|
|
Define the variable pv in this package under the name idr. The package name and names of parent packages will be prepended to the name. If export_p is true, the name will have external linkage. |
|
Bind idr to tp is this package. The definition of the type is written out if needed. |
|
Return the flags.
|
|
True if this is an external package.
|
|
Return the
|
|
Return a path for the package with components separated by sep.
|
|
Resolve sym adding the package prefix if applicable.
|
|
Resolve the fully named symbol sym.
|
|
Undefine the variable with the name idr.
|
|
|
|
Allow compilations to be done for this package.
|
|
Create a header file.
|
|
If generating C++ code, don't use extern "C" linkage for exported names. Note that C++ mangeling is not handled, so with this flag set, the generated symbols can not be linked into the application. |
|
Generate C code.
|
|
Generate C++ code (unfinished).
|
|
Mask of backend language specification.
|
|
Split source files into one per symbol and compile separately.
|
|
Include header files in source file.
|
|
FYI, the default flags for external packages.
|
|
FYI, the default flags for internal packages.
|