assert.html 1.92 KB
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>R: Generate an error if an expression is not true.</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="../../R.css">
</head><body>

<table width="100%" summary="page for assert {gtools}"><tr><td>assert {gtools}</td><td align="right">R Documentation</td></tr></table>
<h2>Generate an error if an expression is not true.</h2>


<h3>Description</h3>

<p>
Generate an error if an expression is not true.
</p>


<h3>Usage</h3>

<pre>
assert(FLAG)
</pre>


<h3>Arguments</h3>

<table summary="R argblock">
<tr valign="top"><td><code>FLAG</code></td>
<td>
Expression that should evaluate to a boolean vector</td></tr>
</table>

<h3>Details</h3>

<p>
Assert generate an error if its aregument does not evaluate to 
boolean (vector) containing only <code>TRUE</code> values.  This is useful
for defensinve programming as it provides a mechanism for checking
that certain facts, the 'assertions', do in fact hold.  Checking of 
'assertions' is an important tool in the development of robust program
code.
</p>


<h3>Value</h3>

<p>
None.  Evaluated only for its side effect.</p>

<h3>Author(s)</h3>

<p>
Gregory R. Warnes <a href="mailto:warnes@bst.rochester.edu">warnes@bst.rochester.edu</a>
</p>


<h3>See Also</h3>

<p>
<code><a href="../../base/html/stop.html">stop</a></code>, <code><a href="../../base/html/warning.html">warning</a></code>
</p>


<h3>Examples</h3>

<pre>

## Trivial example
posSqrt &lt;- function(x)
  {
    assert(x&gt;=0)
    sqrt(x)
  }

posSqrt(1:10) # works fine, no messages
## Not run: 
posSqrt(-5:5) # generates an error, since the asssertion is not met
## End(Not run)

</pre>



<hr><div align="center">[Package <em>gtools</em> version 2.4.0 <a href="00Index.html">Index]</a></div>

</body></html>