.. index:: single: counter
.. _counter/0:

.. rst-class:: right

**object**

``counter``
===========

Counter implemented with asserta/retract.

| **Availability:** 
|    ``logtalk_load(verdi_neruda(loader))``

| **Author:** Victor Lagerkvist
| **Version:** 1:0:1
| **Date:** 2022-10-08

| **Compilation flags:**
|    ``static, context_switching_calls``


| **Dependencies:**
|   (none)


| **Remarks:**
|    (none)

| **Inherited public predicates:**
|    (none)

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

Public predicates
-----------------

.. index:: increment/0
.. _counter/0::increment/0:

``increment/0``
^^^^^^^^^^^^^^^

Increment the counter by 1.

| **Compilation flags:**
|    ``static``

| **Mode and number of proofs:**
|    ``increment`` - ``one``


------------

.. index:: increase/1
.. _counter/0::increase/1:

``increase/1``
^^^^^^^^^^^^^^

Increments the counter by the specified amount.

| **Compilation flags:**
|    ``static``

| **Template:**
|    ``increase(I)``
| **Mode and number of proofs:**
|    ``increase(+number)`` - ``one``


------------

.. index:: set/1
.. _counter/0::set/1:

``set/1``
^^^^^^^^^

Sets the counter to the specified amount.

| **Compilation flags:**
|    ``static``

| **Template:**
|    ``set(N)``
| **Mode and number of proofs:**
|    ``set(+number)`` - ``one``


------------

.. index:: value/1
.. _counter/0::value/1:

``value/1``
^^^^^^^^^^^

Gets the current value of the counter.

| **Compilation flags:**
|    ``static``

| **Template:**
|    ``value(N)``
| **Mode and number of proofs:**
|    ``value(?number)`` - ``one``


------------

.. index:: reset/0
.. _counter/0::reset/0:

``reset/0``
^^^^^^^^^^^

Resets the counter to zero.

| **Compilation flags:**
|    ``static``

| **Mode and number of proofs:**
|    ``reset`` - ``one``


------------

Protected predicates
--------------------

(none)

Private predicates
------------------

.. index:: c/1
.. _counter/0::c/1:

``c/1``
^^^^^^^

Stores the current value of the counter.

| **Compilation flags:**
|    ``dynamic``

| **Template:**
|    ``c(N)``
| **Mode and number of proofs:**
|    ``c(?number)`` - ``zero_or_one``


------------

Operators
---------

(none)

