Did you know ... Search Documentation:
Pack logtalk -- logtalk-3.77.0/docs/_sources/pack_protocol_0.rst.txt

.. index:: pack_protocol .. _pack_protocol/0:

.. rst-class:: right

protocol

pack_protocol

Pack specification protocol. Objects implementing this protocol should be named after the pack with a _pack suffix and saved in a file with the same name as the object.

| Availability: | logtalk_load(packs(loader))

| Author: Paulo Moura | Version: 0:17:0 | Date: 2024-02-29

| Compilation flags: | static

| Dependencies: | (none)

| Remarks: | (none)

| Inherited public predicates: | (none)

.. contents:: :local: :backlinks: top

Public predicates

.. index:: name/1 .. _pack_protocol/0::name/1:

name/1 ^^^^^^^^^^

Pack name.

| Compilation flags: | static

| Template: | name(Name) | Mode and number of proofs: | name(?atom) - zero_or_one


.. index:: description/1 .. _pack_protocol/0::description/1:

description/1 ^^^^^^^^^^^^^^^^^

Pack one line description.

| Compilation flags: | static

| Template: | description(Description) | Mode and number of proofs: | description(?atom) - zero_or_one


.. index:: license/1 .. _pack_protocol/0::license/1:

license/1 ^^^^^^^^^^^^^

Pack license. Specified using the identifier from the SPDX License List (https://spdx.org/licenses/) when possible.

| Compilation flags: | static

| Template: | license(License) | Mode and number of proofs: | license(?atom) - zero_or_one


.. index:: home/1 .. _pack_protocol/0::home/1:

home/1 ^^^^^^^^^^

Pack home HTTPS or file URL.

| Compilation flags: | static

| Template: | home(Home) | Mode and number of proofs: | home(?atom) - zero_or_one


.. index:: version/6 .. _pack_protocol/0::version/6:

version/6 ^^^^^^^^^^^^^

Table of available versions.

| Compilation flags: | static

| Template: | version(Version,Status,URL,Checksum,Dependencies,Portability) | Mode and number of proofs: | version(?compound,?atom,-atom,-pair(atom,atom),-list(pair(atom,callable)),?atom) - zero_or_more | version(?compound,?atom,-atom,-pair(atom,atom),-list(pair(atom,callable)),-list(atom)) - zero_or_more

| Remarks:

  • Version: This argument uses the same format as entity versions: Major:Minor:Patch. Semantic versioning should be used.
  • Status: Version development status. E.g stable, rc, beta, alpha, or deprecated.
  • URL: File URL for a local directory, file URL for a local archive, download HTTPS URL for the pack archive, or download git archive URL for the pack archive.
  • Checksum: A pair where the key is the hash algorithm and the value is the checksum. Currently, the hash algorithm must be sha256. For file:// URLs of local directories, use none instead of a pair.
  • Dependencies: Pack dependencies list. Each dependency is a Dependency Operator Version term. Operator is a term comparison operator. Valid Dependency values are Registry::Pack, os(Name,Machine), logtalk, and a backend identifier atom.
  • Portability: Either the atom all or a list of the supported backend Prolog compilers (using the identifier atoms used by the prolog_dialect flag).
  • Clause order: Versions must be listed ordered from newest to oldest.

.. index:: note/3 .. _pack_protocol/0::note/3:

note/3 ^^^^^^^^^^

Table of notes per action and version.

| Compilation flags: | static

| Template: | note(Action,Version,Note) | Mode and number of proofs: | note(?atom,?term,-atom) - zero_or_more

| Remarks:

  • Action: Possible values are install, update, and uninstall. When unbound, the note apply to all actions.
  • Version: Version acted on (i.e. version being installed, updated to, or uninstalled). When unbound, the note apply to all versions.
  • Note: Note to print when performing an action on a pack version.

Protected predicates

(none)

Private predicates

(none)

Operators

(none)