Did you know ... | Search Documentation: |
The pack meta data |
A pack must have a file pack.pl
in its root directory.
The file contains Prolog terms. Defined terms are below. The argument
types are types registered with must_be/2
and described in the running text.
[a-zA-Z9-0_]+
author
, but the contact cannot be empty. May be
repeated.@(Token,Version)
.
A pack implicitly provides @(PackName,PackVersion)
. The
supplied tokens operate in the same name space as packages and
thus the same care must be taken to select a name. Multiple of these
claims may be present.provides
. The dependency may be further refined by
writing Token Cmp Version
, where Cmp is one of
Prolog's standard numerical comparison operators. See cmp_versions/3.
This metadata is also used to state requirements on Prolog. See
section 15.5.1.1.
Multiple requirements are expressed with multiple claims.requires
.true
, add the library for the package as autoload
library. This implies that the exported predicates may be used without
explicitly importing the library. Use with care.
The file pack.pl
may contain requires(Requirement)
statements. Normally, Requirement is a pack or token,
optionally with a version requirement. The requirement prolog
is reserved for requirements on the Prolog version while
prolog:
Feature may be used to demand specific
features. Feature matching is described with
require_prolog_version/2.
Multiple requirements on Prolog must all be true. Below are some
examples
requires(prolog >= '9.2'). % 9.2.0 or later requires(prolog:threads). % flag threads = true requires(prolog:library(socket)). % library(socket) exists requires(prolog:bounded(false)). % flag bounded = false