Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
I(3)			   Library Functions Manual			  I(3)

NAME
       I - verify assertions in	C and C++ code

SYNOPSIS
       #include	<I.h>

       I(exprn)

       IG(exprn,guard)

       IH(exprn,handler)

       IP(exprn,param)

       IGH(exprn,guard,handler)

       IHP(exprn,handler,param)

       IGHP(exprn,guard,handler,param)

       ID(decln)

       IS(assignment)

       ISG(assignment,guard)

DESCRIPTION
       The  I(exprn)  checks  that  the	 exprn	is true	in the same way	as as-
       sert(3).	 If the	expression is false an error has been detected in  the
       code and	some error handling code will be called.

       exprn - the expression to be checked.

       guard - the expression is normally only checked if the guard is true.

       handler	- a macro which	generates the code that	handles	the error con-
       dition.

       param - a parameter which can be	passed off to the handler. This	can be
       used  for identifying the assertion failure in a	space-efficent manner,
       e.g. by copying it into a register before aborting.

       decln - a variable declaration for use in a postcondition

       assignment - an assignment expression setting a variable	which can then
       be used in a postcondition.

       See  nana.info for details on configuring the behaviour on error	detec-
       tion, etc. You also need	to include the nana library by using -lnana if
       you use the default setup.

       In  addition  to	 the I,	IG, etc	I.h also provides N, NG, etc which are
       used to check that an expression	is never true.

SEE ALSO
       nana-clg(1), nana(1), nana(3),  I(3),  DI(3),  L(3),  DL(3),  Q(3)  and
       nana.info.

       The nana.info file is the primary documentation for this	package.

AUTHOR
       Phil Maker <pjm@gnu.org>

									  I(3)

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=I&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help