.. index:: zlist
.. _zlist/0:

.. rst-class:: right

**object**

``zlist``
=========

Zipper list predicates. Zippers should be regarded as opaque terms.

| **Author:** Paulo Moura
| **Version:** 1.01
| **Date:** 2019/3/12

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


| **Implements:**
|    ``public`` :ref:`zipperp <zipperp/0>`

| **Remarks:**
|    (none)

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

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

.. raw:: html

   <div id="zip_at_index/4"> </div>

.. index:: zip_at_index/4
.. _zlist/0::zip_at_index/4:

``zip_at_index/4``
^^^^^^^^^^^^^^^^^^

Adds a zipper to a list opened at the given index and also returns the element at the index. Fails if the list is empty or the index (starting at 1) does not exist.

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

| **Template:**
|    ``zip_at_index(Index,List,Zipper,Element)``
| **Mode and number of proofs:**
|    ``zip_at_index(+natural,+list,--zipper,--term)`` - ``zero_or_one``


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

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

(see entity ancestors)

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

(see entity ancestors)

Operators
---------

(none)

