protocol

loopp

Loop control constructs protocol.

Availability:
logtalk_load(loops(loader))
Author: Paulo Moura
Version: 1:3:0
Date: 2017-03-20
Compilation flags:
static
Dependencies:
(none)
Remarks:
(none)
Inherited public predicates:
(none)

Public predicates

whiledo/2

While Condition is true do Action.

Compilation flags:
static
Template:
whiledo(Condition,Action)
Meta-predicate template:
whiledo(0,0)
Mode and number of proofs:
whiledo(+callable,@callable) - zero_or_one

dowhile/2

Do Action while Condition is true.

Compilation flags:
static
Template:
dowhile(Action,Condition)
Meta-predicate template:
dowhile(0,0)
Mode and number of proofs:
dowhile(@callable,+callable) - zero_or_one

foreach/3

For each Element in List call Goal.

Compilation flags:
static
Template:
foreach(Element,List,Goal)
Meta-predicate template:
foreach(*,*,0)
Mode and number of proofs:
foreach(@var,+list(term),@callable) - zero_or_one

foreach/4

For each Element in List at position Index call Goal. Index starts at 1.

Compilation flags:
static
Template:
foreach(Element,Index,List,Goal)
Meta-predicate template:
foreach(*,*,*,0)
Mode and number of proofs:
foreach(@var,@var,+list(term),@callable) - zero_or_one

forto/3

Calls Goal counting up from First to Last. Increment is 1. For convenience, First and Last can be arithmetic expressions. Fails iff Goal fails.

Compilation flags:
static
Template:
forto(First,Last,Goal)
Meta-predicate template:
forto(*,*,0)
Mode and number of proofs:
forto(+number,+number,@callable) - zero_or_one

forto/4

Calls Goal counting up from First to Last and binding Count to each successive value. Increment is 1. For convenience, First and Last can be arithmetic expressions. Fails iff Goal fails.

Compilation flags:
static
Template:
forto(Count,First,Last,Goal)
Meta-predicate template:
forto(*,*,*,0)
Mode and number of proofs:
forto(@var,+number,+number,@callable) - zero_or_one

forto/5

Calls Goal counting up from First to Last and binding Count to each successive value. For convenience, First, Last, and Increment can be arithmetic expressions (uses Increment absolute value). Fails iff Goal fails.

Compilation flags:
static
Template:
forto(Count,First,Last,Increment,Goal)
Meta-predicate template:
forto(*,*,*,*,0)
Mode and number of proofs:
forto(@var,+number,+number,+number,@callable) - zero_or_one

fordownto/3

Calls Goal counting down from First to Last. Decrement is 1. For convenience, First and Last can be arithmetic expressions. Fails iff Goal fails.

Compilation flags:
static
Template:
fordownto(First,Last,Goal)
Meta-predicate template:
fordownto(*,*,0)
Mode and number of proofs:
fordownto(+number,+number,@callable) - zero_or_one

fordownto/4

Calls Goal counting down from First to Last and binding Count to each successive value. Decrement is 1. For convenience, First and Last can be arithmetic expressions. Fails iff Goal fails.

Compilation flags:
static
Template:
fordownto(Count,First,Last,Goal)
Meta-predicate template:
fordownto(*,*,*,0)
Mode and number of proofs:
fordownto(@var,+number,+number,@callable) - zero_or_one

fordownto/5

Calls Goal counting down from First to Last and binding Count to each successive value. For convenience, First, Last, and Decrement can be arithmetic expressions (uses Decrement absolute value). Fails iff Goal fails.

Compilation flags:
static
Template:
fordownto(Count,First,Last,Decrement,Goal)
Meta-predicate template:
fordownto(*,*,*,*,0)
Mode and number of proofs:
fordownto(@var,+number,+number,+number,@callable) - zero_or_one

Protected predicates

(none)

Private predicates

(none)

Operators

(none)

See also

loop