<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/css" href="../../styles.css" ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">

<head>
	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
	<title>Logtalk built-in predicate: forall/2</title>
	<link rel="stylesheet" href="../../styles.css" type="text/css" />
</head>

<body>

<div class="navtop">
<a href="../../index.html">contents</a> &gt; <a href="../index.html">reference manual</a> &gt; <a href="../index.html#builtins">built-in predicates</a>
</div>

<h2><code>forall/2</code></h2>


<h4>Description</h4>

<blockquote>
<pre>forall(Generator, Test)</pre>
<p>
	This predicate is true if, for all solutions of Generator, Test is true (some Prolog compilers already define this or a similar predicate).
</p>
</blockquote>
 
<h4>Template and modes</h4>

<blockquote>
<pre>forall(+callable, +callable)</pre>
</blockquote>

<h4>Errors</h4>

<blockquote>
	<dl>
		<dt>Generator is not a callable term:</dt>
			<dd><code>type_error(callable, Generator)</code></dd>
		<dt>Test is not a callable term:</dt>
			<dd><code>type_error(callable, Test)</code></dd>
	</dl>
</blockquote>

<h4>Examples</h4>

<blockquote>
<pre>| ?- forall(member(X, [1, 2, 3]), write(X)).

123
yes</pre>
</blockquote>

<div class="navbottom">
<a href="../index.html#builtins">previous</a> | <a href="../../glossary.html">glossary</a> | <a href="retractall1.html">next</a>
</div>

<div class="copyright">
Copyright &copy; <a href="mailto:pmoura@logtalk.org">Paulo Moura</a> &mdash; <a href="http://www.logtalk.org">Logtalk.org</a>
</div>

<div class="footer">
<p><span class="bleft"><a href="http://validator.w3.org/check/referer">XHTML</a> + <a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a></span><span class="bright">Last updated on: July 22, 2004</span></p>
</div>
</body>
</html>