summaryrefslogtreecommitdiff
path: root/apidocs/icalerror_8h.html
diff options
context:
space:
mode:
Diffstat (limited to 'apidocs/icalerror_8h.html')
-rw-r--r--apidocs/icalerror_8h.html1120
1 files changed, 1120 insertions, 0 deletions
diff --git a/apidocs/icalerror_8h.html b/apidocs/icalerror_8h.html
new file mode 100644
index 00000000..0ccd8265
--- /dev/null
+++ b/apidocs/icalerror_8h.html
@@ -0,0 +1,1120 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.9.1"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Libical API Documentation: icalerror.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Libical API Documentation
+ &#160;<span id="projectnumber">3.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.1 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b7a0ea939f6e83384f3c571d31a84be9.html">libical</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">icalerror.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Error handling for libical.
+<a href="#details">More...</a></p>
+
+<p><a href="icalerror_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:acb04e8e94ef9817f0a8d71c994412038"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#acb04e8e94ef9817f0a8d71c994412038">ICAL_ERRORS_ARE_FATAL</a>&#160;&#160;&#160;0</td></tr>
+<tr class="memdesc:acb04e8e94ef9817f0a8d71c994412038"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines if all libical errors are fatal and lead to the process aborting. <a href="icalerror_8h.html#acb04e8e94ef9817f0a8d71c994412038">More...</a><br /></td></tr>
+<tr class="separator:acb04e8e94ef9817f0a8d71c994412038"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93ada95b3e85feb69c0682689b42f7f5"><td class="memItemLeft" align="right" valign="top"><a id="a93ada95b3e85feb69c0682689b42f7f5"></a>
+#define&#160;</td><td class="memItemRight" valign="bottom"><b>ICAL_SETERROR_ISFUNC</b></td></tr>
+<tr class="separator:a93ada95b3e85feb69c0682689b42f7f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2562706150f5c5a4d9b0ca149d78e37"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a>&#160;&#160;&#160;(*(<a class="el" href="icalerror_8h.html#aafe7575af3bfd0754deaad7eecae38e5">icalerrno_return</a>()))</td></tr>
+<tr class="memdesc:ad2562706150f5c5a4d9b0ca149d78e37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> value. <a href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">More...</a><br /></td></tr>
+<tr class="separator:ad2562706150f5c5a4d9b0ca149d78e37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44c46ab691b1a16f61b796350dc01bed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a44c46ab691b1a16f61b796350dc01bed">icalerror_assert</a>(test, message)</td></tr>
+<tr class="memdesc:a44c46ab691b1a16f61b796350dc01bed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assert with a message. <a href="icalerror_8h.html#a44c46ab691b1a16f61b796350dc01bed">More...</a><br /></td></tr>
+<tr class="separator:a44c46ab691b1a16f61b796350dc01bed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afef4004abbb97d2599d131948655ae89"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#afef4004abbb97d2599d131948655ae89">icalerror_check_arg</a>(test, arg)</td></tr>
+<tr class="memdesc:afef4004abbb97d2599d131948655ae89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks the assertion <em>test</em> and raises error on failure. <a href="icalerror_8h.html#afef4004abbb97d2599d131948655ae89">More...</a><br /></td></tr>
+<tr class="separator:afef4004abbb97d2599d131948655ae89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae163052ebae24e2026bf54108b10b914"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#ae163052ebae24e2026bf54108b10b914">icalerror_check_arg_re</a>(test, arg, error)</td></tr>
+<tr class="memdesc:ae163052ebae24e2026bf54108b10b914"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks the assertion <em>test</em> and raises error on failure, returns <em>error</em>. <a href="icalerror_8h.html#ae163052ebae24e2026bf54108b10b914">More...</a><br /></td></tr>
+<tr class="separator:ae163052ebae24e2026bf54108b10b914"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00245be23d5c2d4801c9ed74e1da6f6a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a00245be23d5c2d4801c9ed74e1da6f6a">icalerror_check_arg_rv</a>(test, arg)</td></tr>
+<tr class="memdesc:a00245be23d5c2d4801c9ed74e1da6f6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks the assertion <em>test</em> and raises error on failure, returns void. <a href="icalerror_8h.html#a00245be23d5c2d4801c9ed74e1da6f6a">More...</a><br /></td></tr>
+<tr class="separator:a00245be23d5c2d4801c9ed74e1da6f6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a71f70509be32e3e54edbaf3b45571a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a7a71f70509be32e3e54edbaf3b45571a">icalerror_check_arg_rx</a>(test, arg, x)</td></tr>
+<tr class="memdesc:a7a71f70509be32e3e54edbaf3b45571a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks the assertion <em>test</em> and raises error on failure, returns <em>x</em>. <a href="icalerror_8h.html#a7a71f70509be32e3e54edbaf3b45571a">More...</a><br /></td></tr>
+<tr class="separator:a7a71f70509be32e3e54edbaf3b45571a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95198bf515920804672520856c300666"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a95198bf515920804672520856c300666">icalerror_check_arg_rz</a>(test, arg)</td></tr>
+<tr class="memdesc:a95198bf515920804672520856c300666"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks the assertion <em>test</em> and raises error on failure, returns 0. <a href="icalerror_8h.html#a95198bf515920804672520856c300666">More...</a><br /></td></tr>
+<tr class="separator:a95198bf515920804672520856c300666"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d80f90dc471d72b1f3111da8b9305f5"><td class="memItemLeft" align="right" valign="top"><a id="a2d80f90dc471d72b1f3111da8b9305f5"></a>
+#define&#160;</td><td class="memItemRight" valign="bottom"><b>icalerror_check_component_type</b>(value, type)&#160;&#160;&#160;;</td></tr>
+<tr class="separator:a2d80f90dc471d72b1f3111da8b9305f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d7552c6356537d39880c1868a56298f"><td class="memItemLeft" align="right" valign="top"><a id="a0d7552c6356537d39880c1868a56298f"></a>
+#define&#160;</td><td class="memItemRight" valign="bottom"><b>icalerror_check_parameter_type</b>(value, type)&#160;&#160;&#160;;</td></tr>
+<tr class="separator:a0d7552c6356537d39880c1868a56298f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5515e438cb432829a10aefc9bf737281"><td class="memItemLeft" align="right" valign="top"><a id="a5515e438cb432829a10aefc9bf737281"></a>
+#define&#160;</td><td class="memItemRight" valign="bottom"><b>icalerror_check_property_type</b>(value, type)&#160;&#160;&#160;;</td></tr>
+<tr class="separator:a5515e438cb432829a10aefc9bf737281"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a562f30d7c8d087861c9406405889ad2e"><td class="memItemLeft" align="right" valign="top"><a id="a562f30d7c8d087861c9406405889ad2e"></a>
+#define&#160;</td><td class="memItemRight" valign="bottom"><b>icalerror_check_value_type</b>(value, type)&#160;&#160;&#160;;</td></tr>
+<tr class="separator:a562f30d7c8d087861c9406405889ad2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ab760137cd4f66d205ef00235a0ecd4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a2ab760137cd4f66d205ef00235a0ecd4">icalerror_warn</a>(message)&#160;&#160;&#160;{fprintf(stderr, &quot;%s:%d: %s\n&quot;, __FILE__, __LINE__, message);}</td></tr>
+<tr class="memdesc:a2ab760137cd4f66d205ef00235a0ecd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prints a formatted warning message to stderr. <a href="icalerror_8h.html#a2ab760137cd4f66d205ef00235a0ecd4">More...</a><br /></td></tr>
+<tr class="separator:a2ab760137cd4f66d205ef00235a0ecd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a80964317bad3b44cdbb22765fbf42356"><td class="memItemLeft" align="right" valign="top"><a id="a80964317bad3b44cdbb22765fbf42356"></a>
+typedef enum <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a>&#160;</td><td class="memItemRight" valign="bottom"><b>icalerrorenum</b></td></tr>
+<tr class="separator:a80964317bad3b44cdbb22765fbf42356"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19fbdd282a2200ae2bc6de7809da5bdc"><td class="memItemLeft" align="right" valign="top"><a id="a19fbdd282a2200ae2bc6de7809da5bdc"></a>
+typedef enum <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a>&#160;</td><td class="memItemRight" valign="bottom"><b>icalerrorstate</b></td></tr>
+<tr class="separator:a19fbdd282a2200ae2bc6de7809da5bdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a601c122fcea522513b1b7732fa23e833"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a> { <br />
+&#160;&#160;<a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a> = 0
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a>
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a055394ffaf6701aa12491dc10767f07d">ICAL_NEWFAILED_ERROR</a>
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a3ed4d866c28acaaaf99348b1ab27cd78">ICAL_ALLOCATION_ERROR</a>
+, <br />
+&#160;&#160;<a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6ba07679ac440358c3090a351d27f0d8">ICAL_MALFORMEDDATA_ERROR</a>
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a>
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a5b0fc2e091e6b7287a9855d171648cbd">ICAL_INTERNAL_ERROR</a>
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a3e6aa7e2b3aa393f3c048d64cea6578d">ICAL_FILE_ERROR</a>
+, <br />
+&#160;&#160;<a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833adcf918ddc612831de72aa3749d39b5c6">ICAL_USAGE_ERROR</a>
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ad9376ffaf63b7fdb07eec0c0587c33f7">ICAL_UNIMPLEMENTED_ERROR</a>
+, <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551">ICAL_UNKNOWN_ERROR</a>
+<br />
+ }</td></tr>
+<tr class="memdesc:a601c122fcea522513b1b7732fa23e833"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents the different types of errors that can be triggered in libical. <a href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">More...</a><br /></td></tr>
+<tr class="separator:a601c122fcea522513b1b7732fa23e833"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cb9a92508be773fbb4dba7c658443d3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a> { <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3a6a2c3dc27d17100317eadcc4156a9442">ICAL_ERROR_FATAL</a>
+, <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aee5a5c75923a46b30105a272b75339b6">ICAL_ERROR_NONFATAL</a>
+, <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aa8624e525ff7c52b30310134230ba1e6">ICAL_ERROR_DEFAULT</a>
+, <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3a5afdd784a33990b7a717f827c077737f">ICAL_ERROR_UNKNOWN</a>
+ }</td></tr>
+<tr class="memdesc:a3cb9a92508be773fbb4dba7c658443d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if an error is fatal or non-fatal. <a href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">More...</a><br /></td></tr>
+<tr class="separator:a3cb9a92508be773fbb4dba7c658443d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1c741ef8219eebc325e53851aa9e8f00"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a1c741ef8219eebc325e53851aa9e8f00">ical_bt</a> (void)</td></tr>
+<tr class="memdesc:a1c741ef8219eebc325e53851aa9e8f00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prints backtrace. <a href="icalerror_8h.html#a1c741ef8219eebc325e53851aa9e8f00">More...</a><br /></td></tr>
+<tr class="separator:a1c741ef8219eebc325e53851aa9e8f00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafe7575af3bfd0754deaad7eecae38e5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#aafe7575af3bfd0754deaad7eecae38e5">icalerrno_return</a> (void)</td></tr>
+<tr class="memdesc:aafe7575af3bfd0754deaad7eecae38e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> value. <a href="icalerror_8h.html#aafe7575af3bfd0754deaad7eecae38e5">More...</a><br /></td></tr>
+<tr class="separator:aafe7575af3bfd0754deaad7eecae38e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae87b46acb90ce9fee0fa377fd9b57c28"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#ae87b46acb90ce9fee0fa377fd9b57c28">icalerror_clear_errno</a> (void)</td></tr>
+<tr class="memdesc:ae87b46acb90ce9fee0fa377fd9b57c28"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets icalerrno to <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a>. <a href="icalerror_8h.html#ae87b46acb90ce9fee0fa377fd9b57c28">More...</a><br /></td></tr>
+<tr class="separator:ae87b46acb90ce9fee0fa377fd9b57c28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cbc33f05e014e767bd92b04bfb92f62"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a0cbc33f05e014e767bd92b04bfb92f62">icalerror_crash_here</a> (void)</td></tr>
+<tr class="memdesc:a0cbc33f05e014e767bd92b04bfb92f62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triggered to abort the process. <a href="icalerror_8h.html#a0cbc33f05e014e767bd92b04bfb92f62">More...</a><br /></td></tr>
+<tr class="separator:a0cbc33f05e014e767bd92b04bfb92f62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b60700869241af095f0604f35b1c446"><td class="memItemLeft" align="right" valign="top"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a9b60700869241af095f0604f35b1c446">icalerror_error_from_string</a> (const char *str)</td></tr>
+<tr class="memdesc:a9b60700869241af095f0604f35b1c446"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an error from a string. <a href="icalerror_8h.html#a9b60700869241af095f0604f35b1c446">More...</a><br /></td></tr>
+<tr class="separator:a9b60700869241af095f0604f35b1c446"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fe3cbc229f74250b59c077e21abf82d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a5fe3cbc229f74250b59c077e21abf82d">icalerror_get_error_state</a> (<a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a> error)</td></tr>
+<tr class="memdesc:a5fe3cbc229f74250b59c077e21abf82d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the error state (severity) for a given error. <a href="icalerror_8h.html#a5fe3cbc229f74250b59c077e21abf82d">More...</a><br /></td></tr>
+<tr class="separator:a5fe3cbc229f74250b59c077e21abf82d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44fa677ba623cdcebe9e38b03cd08389"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a44fa677ba623cdcebe9e38b03cd08389">icalerror_get_errors_are_fatal</a> (void)</td></tr>
+<tr class="memdesc:a44fa677ba623cdcebe9e38b03cd08389"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if errors are fatal. <a href="icalerror_8h.html#a44fa677ba623cdcebe9e38b03cd08389">More...</a><br /></td></tr>
+<tr class="separator:a44fa677ba623cdcebe9e38b03cd08389"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55b38314ff59cf335de4b0d32ebff149"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a55b38314ff59cf335de4b0d32ebff149">icalerror_perror</a> (void)</td></tr>
+<tr class="memdesc:a55b38314ff59cf335de4b0d32ebff149"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the description string for the current error in <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a>. <a href="icalerror_8h.html#a55b38314ff59cf335de4b0d32ebff149">More...</a><br /></td></tr>
+<tr class="separator:a55b38314ff59cf335de4b0d32ebff149"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8377dadcd17bf305d1931aa2518c321a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a8377dadcd17bf305d1931aa2518c321a">icalerror_restore</a> (const char *error, <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a> es)</td></tr>
+<tr class="separator:a8377dadcd17bf305d1931aa2518c321a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8266eaa216926b6703a0ef31cd99f0b2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a8266eaa216926b6703a0ef31cd99f0b2">icalerror_set_errno</a> (<a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a> x)</td></tr>
+<tr class="memdesc:a8266eaa216926b6703a0ef31cd99f0b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to a given error. <a href="icalerror_8h.html#a8266eaa216926b6703a0ef31cd99f0b2">More...</a><br /></td></tr>
+<tr class="separator:a8266eaa216926b6703a0ef31cd99f0b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a777a41722836b68ffb27ae5a746a14b4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a777a41722836b68ffb27ae5a746a14b4">icalerror_set_error_state</a> (<a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a> error, <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a> state)</td></tr>
+<tr class="memdesc:a777a41722836b68ffb27ae5a746a14b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3" title="Determine if an error is fatal or non-fatal.">icalerrorstate</a> for a given <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833" title="Represents the different types of errors that can be triggered in libical.">icalerrorenum</a> <em>error</em>. <a href="icalerror_8h.html#a777a41722836b68ffb27ae5a746a14b4">More...</a><br /></td></tr>
+<tr class="separator:a777a41722836b68ffb27ae5a746a14b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05941b21472c45d4b3654cb7d94bf3e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a05941b21472c45d4b3654cb7d94bf3e8">icalerror_set_errors_are_fatal</a> (int fatal)</td></tr>
+<tr class="memdesc:a05941b21472c45d4b3654cb7d94bf3e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change if errors are fatal. <a href="icalerror_8h.html#a05941b21472c45d4b3654cb7d94bf3e8">More...</a><br /></td></tr>
+<tr class="separator:a05941b21472c45d4b3654cb7d94bf3e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9102f6b721a280151c7858860707171b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#a9102f6b721a280151c7858860707171b">icalerror_stop_here</a> (void)</td></tr>
+<tr class="memdesc:a9102f6b721a280151c7858860707171b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triggered before any error is called. <a href="icalerror_8h.html#a9102f6b721a280151c7858860707171b">More...</a><br /></td></tr>
+<tr class="separator:a9102f6b721a280151c7858860707171b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace2dcbae58882ed326b4716bf54842cc"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#ace2dcbae58882ed326b4716bf54842cc">icalerror_strerror</a> (<a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a> e)</td></tr>
+<tr class="memdesc:ace2dcbae58882ed326b4716bf54842cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds the description string for error. <a href="icalerror_8h.html#ace2dcbae58882ed326b4716bf54842cc">More...</a><br /></td></tr>
+<tr class="separator:ace2dcbae58882ed326b4716bf54842cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af226f2c41272dabecd03ec9807d3a1e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icalerror_8h.html#af226f2c41272dabecd03ec9807d3a1e2">icalerror_supress</a> (const char *error)</td></tr>
+<tr class="memdesc:af226f2c41272dabecd03ec9807d3a1e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Suppresses a given error. <a href="icalerror_8h.html#af226f2c41272dabecd03ec9807d3a1e2">More...</a><br /></td></tr>
+<tr class="separator:af226f2c41272dabecd03ec9807d3a1e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Error handling for libical. </p>
+<p>Most routines will set the global error value <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> on errors. This variable is an enumeration; permissible values can be found in <a class="el" href="icalerror_8h.html" title="Error handling for libical.">icalerror.h</a>. If the routine returns an enum <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833" title="Represents the different types of errors that can be triggered in libical.">icalerrorenum</a>, then the return value will be the same as <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a>. You can use <a class="el" href="icalerror_8h.html#ace2dcbae58882ed326b4716bf54842cc" title="Finds the description string for error.">icalerror_strerror()</a> to get a string that describes the error, or <a class="el" href="icalerror_8h.html#a55b38314ff59cf335de4b0d32ebff149" title="Returns the description string for the current error in icalerrno.">icalerror_perror()</a> to get a string describing the current error set in <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a>. </p>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="acb04e8e94ef9817f0a8d71c994412038"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb04e8e94ef9817f0a8d71c994412038">&#9670;&nbsp;</a></span>ICAL_ERRORS_ARE_FATAL</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ICAL_ERRORS_ARE_FATAL&#160;&#160;&#160;0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Determines if all libical errors are fatal and lead to the process aborting. </p>
+<p>If set to 1, all libical errors are fatal and lead to the process aborting upon encountering on. Otherwise, errors are nonfatal.</p>
+<p>Can be checked with libical_get_errors_are_fatal(). </p>
+
+</div>
+</div>
+<a id="ad2562706150f5c5a4d9b0ca149d78e37"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad2562706150f5c5a4d9b0ca149d78e37">&#9670;&nbsp;</a></span>icalerrno</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerrno&#160;&#160;&#160;(*(<a class="el" href="icalerror_8h.html#aafe7575af3bfd0754deaad7eecae38e5">icalerrno_return</a>()))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Access the current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> value. </p>
+<dl class="section return"><dt>Returns</dt><dd>The current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> value </dd></dl>
+<dl class="section note"><dt>Note</dt><dd>Pseudo-variable that can be used to access the current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a>.</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="keywordflow">if</span>(<a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a> == <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a>) {</div>
+<div class="line"> <span class="comment">// ...</span></div>
+<div class="line">}</div>
+<div class="line"> </div>
+<div class="line"><span class="comment">// resets error</span></div>
+<div class="line"><a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a> = <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a>;</div>
+<div class="ttc" id="aicalerror_8h_html_a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b"><div class="ttname"><a href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a></div><div class="ttdeci">@ ICAL_NO_ERROR</div><div class="ttdef"><b>Definition:</b> icalerror.h:78</div></div>
+<div class="ttc" id="aicalerror_8h_html_a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb"><div class="ttname"><a href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a></div><div class="ttdeci">@ ICAL_PARSE_ERROR</div><div class="ttdef"><b>Definition:</b> icalerror.h:93</div></div>
+<div class="ttc" id="aicalerror_8h_html_ad2562706150f5c5a4d9b0ca149d78e37"><div class="ttname"><a href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a></div><div class="ttdeci">#define icalerrno</div><div class="ttdoc">Access the current icalerrno value.</div><div class="ttdef"><b>Definition:</b> icalerror.h:144</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a44c46ab691b1a16f61b796350dc01bed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44c46ab691b1a16f61b796350dc01bed">&#9670;&nbsp;</a></span>icalerror_assert</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerror_assert</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">test, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">message&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Assert with a message. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">test</td><td>The assertion to test </td></tr>
+ <tr><td class="paramname">message</td><td>The message to print on failure of assertion</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>Tests the given assertion <em>test</em>, and if it fails, prints the <em>message</em> given on <em>stderr</em> as a warning and aborts the process. This only works if <a class="el" href="icalerror_8h.html#acb04e8e94ef9817f0a8d71c994412038" title="Determines if all libical errors are fatal and lead to the process aborting.">ICAL_ERRORS_ARE_FATAL</a> is true, otherwise does nothing. </p>
+
+</div>
+</div>
+<a id="afef4004abbb97d2599d131948655ae89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afef4004abbb97d2599d131948655ae89">&#9670;&nbsp;</a></span>icalerror_check_arg</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerror_check_arg</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">test, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">arg&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(test)) { \</div>
+<div class="line"> icalerror_set_errno(<a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a>); \</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1"><div class="ttname"><a href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a></div><div class="ttdeci">@ ICAL_BADARG_ERROR</div><div class="ttdef"><b>Definition:</b> icalerror.h:81</div></div>
+</div><!-- fragment -->
+<p>Checks the assertion <em>test</em> and raises error on failure. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">test</td><td>The assertion to check </td></tr>
+ <tr><td class="paramname">arg</td><td>The argument involved (as a string)</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>This function checks the assertion <em>test</em>, which is used to test if the parameter <em>arg</em> is correct. If the assertion fails, it sets <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a>.</p>
+<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="keywordtype">void</span> test_function(<a class="code" href="structicalcomponent__impl.html">icalcomponent</a> *component) {</div>
+<div class="line"> <a class="code" href="icalerror_8h.html#afef4004abbb97d2599d131948655ae89">icalerror_check_arg</a>(component != 0, <span class="stringliteral">&quot;component&quot;</span>);</div>
+<div class="line"> </div>
+<div class="line"> <span class="comment">// use component</span></div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_afef4004abbb97d2599d131948655ae89"><div class="ttname"><a href="icalerror_8h.html#afef4004abbb97d2599d131948655ae89">icalerror_check_arg</a></div><div class="ttdeci">#define icalerror_check_arg(test, arg)</div><div class="ttdoc">Checks the assertion test and raises error on failure.</div><div class="ttdef"><b>Definition:</b> icalerror.h:441</div></div>
+<div class="ttc" id="astructicalcomponent__impl_html"><div class="ttname"><a href="structicalcomponent__impl.html">icalcomponent_impl</a></div><div class="ttdef"><b>Definition:</b> icalcomponent.c:36</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="ae163052ebae24e2026bf54108b10b914"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae163052ebae24e2026bf54108b10b914">&#9670;&nbsp;</a></span>icalerror_check_arg_re</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerror_check_arg_re</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">test, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">arg, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">error&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(test)) { \</div>
+<div class="line"> icalerror_stop_here(); \</div>
+<div class="line"> assert(0); \</div>
+<div class="line"> return error; \</div>
+<div class="line">}</div>
+</div><!-- fragment -->
+<p>Checks the assertion <em>test</em> and raises error on failure, returns <em>error</em>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">test</td><td>The assertion to check </td></tr>
+ <tr><td class="paramname">arg</td><td>The argument involved (as a string) </td></tr>
+ <tr><td class="paramname">error</td><td>What to return on error</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>This function checks the assertion <em>test</em>, which is used to test if the parameter <em>arg</em> is correct. If the assertion fails, it aborts the process with <code>assert(0)</code> and causes the enclosing function to return <em>error</em>.</p>
+<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><a class="code" href="structicalcomponent__impl.html">icalcomponent</a> *test_function(<a class="code" href="structicalcomponent__impl.html">icalcomponent</a> *component) {</div>
+<div class="line"> <a class="code" href="icalerror_8h.html#ae163052ebae24e2026bf54108b10b914">icalerror_check_arg_re</a>(component != 0, <span class="stringliteral">&quot;component&quot;</span>, NULL);</div>
+<div class="line"> </div>
+<div class="line"> <span class="comment">// use component</span></div>
+<div class="line"> <span class="keywordflow">return</span> <a class="code" href="icalcomponent_8h.html#af7b5953c513748cd41b40fdb50d88b66">icalcomponent_get_first_real_component</a>(component);</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalcomponent_8h_html_af7b5953c513748cd41b40fdb50d88b66"><div class="ttname"><a href="icalcomponent_8h.html#af7b5953c513748cd41b40fdb50d88b66">icalcomponent_get_first_real_component</a></div><div class="ttdeci">icalcomponent * icalcomponent_get_first_real_component(icalcomponent *c)</div><div class="ttdoc">Returns a reference to the first VEVENT, VTODO or VJOURNAL in the component.</div><div class="ttdef"><b>Definition:</b> icalcomponent.c:581</div></div>
+<div class="ttc" id="aicalerror_8h_html_ae163052ebae24e2026bf54108b10b914"><div class="ttname"><a href="icalerror_8h.html#ae163052ebae24e2026bf54108b10b914">icalerror_check_arg_re</a></div><div class="ttdeci">#define icalerror_check_arg_re(test, arg, error)</div><div class="ttdoc">Checks the assertion test and raises error on failure, returns error.</div><div class="ttdef"><b>Definition:</b> icalerror.h:518</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a00245be23d5c2d4801c9ed74e1da6f6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a00245be23d5c2d4801c9ed74e1da6f6a">&#9670;&nbsp;</a></span>icalerror_check_arg_rv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerror_check_arg_rv</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">test, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">arg&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(test)) { \</div>
+<div class="line"> icalerror_set_errno(<a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a>); \</div>
+<div class="line"> return; \</div>
+<div class="line">}</div>
+</div><!-- fragment -->
+<p>Checks the assertion <em>test</em> and raises error on failure, returns void. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">test</td><td>The assertion to check </td></tr>
+ <tr><td class="paramname">arg</td><td>The argument involved (as a string)</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>This function checks the assertion <em>test</em>, which is used to test if the parameter <em>arg</em> is correct. If the assertion fails, it sets <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a> and causes the enclosing function to return <code>void</code>.</p>
+<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="keywordtype">void</span> test_function(<a class="code" href="structicalcomponent__impl.html">icalcomponent</a> *component) {</div>
+<div class="line"> <a class="code" href="icalerror_8h.html#a00245be23d5c2d4801c9ed74e1da6f6a">icalerror_check_arg_rv</a>(component != 0, <span class="stringliteral">&quot;component&quot;</span>);</div>
+<div class="line"> </div>
+<div class="line"> <span class="comment">// use component</span></div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_a00245be23d5c2d4801c9ed74e1da6f6a"><div class="ttname"><a href="icalerror_8h.html#a00245be23d5c2d4801c9ed74e1da6f6a">icalerror_check_arg_rv</a></div><div class="ttdeci">#define icalerror_check_arg_rv(test, arg)</div><div class="ttdoc">Checks the assertion test and raises error on failure, returns void.</div><div class="ttdef"><b>Definition:</b> icalerror.h:465</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a7a71f70509be32e3e54edbaf3b45571a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a71f70509be32e3e54edbaf3b45571a">&#9670;&nbsp;</a></span>icalerror_check_arg_rx</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerror_check_arg_rx</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">test, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">arg, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(test)) { \</div>
+<div class="line"> icalerror_set_errno(<a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a>); \</div>
+<div class="line"> return x; \</div>
+<div class="line">}</div>
+</div><!-- fragment -->
+<p>Checks the assertion <em>test</em> and raises error on failure, returns <em>x</em>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">test</td><td>The assertion to check </td></tr>
+ <tr><td class="paramname">arg</td><td>The argument involved (as a string) </td></tr>
+ <tr><td class="paramname">x</td><td>What to return on error</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>This function checks the assertion <em>test</em>, which is used to test if the parameter <em>arg</em> is correct. If the assertion fails, it sets <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a> and causes the enclosing function to return <em>x</em>.</p>
+<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><a class="code" href="structicalcomponent__impl.html">icalcomponent</a> *test_function(<a class="code" href="structicalcomponent__impl.html">icalcomponent</a> *component) {</div>
+<div class="line"> <a class="code" href="icalerror_8h.html#a7a71f70509be32e3e54edbaf3b45571a">icalerror_check_arg_rx</a>(component != 0, <span class="stringliteral">&quot;component&quot;</span>, NULL);</div>
+<div class="line"> </div>
+<div class="line"> <span class="comment">// use component</span></div>
+<div class="line"> <span class="keywordflow">return</span> <a class="code" href="icalcomponent_8h.html#af7b5953c513748cd41b40fdb50d88b66">icalcomponent_get_first_real_component</a>(component);</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_a7a71f70509be32e3e54edbaf3b45571a"><div class="ttname"><a href="icalerror_8h.html#a7a71f70509be32e3e54edbaf3b45571a">icalerror_check_arg_rx</a></div><div class="ttdeci">#define icalerror_check_arg_rx(test, arg, x)</div><div class="ttdoc">Checks the assertion test and raises error on failure, returns x.</div><div class="ttdef"><b>Definition:</b> icalerror.h:546</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a95198bf515920804672520856c300666"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95198bf515920804672520856c300666">&#9670;&nbsp;</a></span>icalerror_check_arg_rz</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerror_check_arg_rz</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">test, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">arg&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(test)) { \</div>
+<div class="line"> icalerror_set_errno(<a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a>); \</div>
+<div class="line"> return 0; \</div>
+<div class="line">}</div>
+</div><!-- fragment -->
+<p>Checks the assertion <em>test</em> and raises error on failure, returns 0. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">test</td><td>The assertion to check </td></tr>
+ <tr><td class="paramname">arg</td><td>The argument involved (as a string)</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>This function checks the assertion <em>test</em>, which is used to test if the parameter <em>arg</em> is correct. If the assertion fails, it sets <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1">ICAL_BADARG_ERROR</a> and causes the enclosing function to return <code>0</code>.</p>
+<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="keywordtype">int</span> test_function(<a class="code" href="structicalcomponent__impl.html">icalcomponent</a> *component) {</div>
+<div class="line"> <a class="code" href="icalerror_8h.html#a95198bf515920804672520856c300666">icalerror_check_arg_rz</a>(component != 0, <span class="stringliteral">&quot;component&quot;</span>);</div>
+<div class="line"> </div>
+<div class="line"> <span class="comment">// use component</span></div>
+<div class="line"> <span class="keywordflow">return</span> icalcomponent_count_kinds(component, ICAL_ANY_COMPONENT);</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_a95198bf515920804672520856c300666"><div class="ttname"><a href="icalerror_8h.html#a95198bf515920804672520856c300666">icalerror_check_arg_rz</a></div><div class="ttdeci">#define icalerror_check_arg_rz(test, arg)</div><div class="ttdoc">Checks the assertion test and raises error on failure, returns 0.</div><div class="ttdef"><b>Definition:</b> icalerror.h:491</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a2ab760137cd4f66d205ef00235a0ecd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ab760137cd4f66d205ef00235a0ecd4">&#9670;&nbsp;</a></span>icalerror_warn</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define icalerror_warn</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">message</td><td>)</td>
+ <td>&#160;&#160;&#160;{fprintf(stderr, &quot;%s:%d: %s\n&quot;, __FILE__, __LINE__, message);}</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Prints a formatted warning message to stderr. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">message</td><td>Warning message to print</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><a class="code" href="icalerror_8h.html#a2ab760137cd4f66d205ef00235a0ecd4">icalerror_warn</a>(<span class="stringliteral">&quot;Non-standard tag encountered&quot;</span>);</div>
+<div class="ttc" id="aicalerror_8h_html_a2ab760137cd4f66d205ef00235a0ecd4"><div class="ttname"><a href="icalerror_8h.html#a2ab760137cd4f66d205ef00235a0ecd4">icalerror_warn</a></div><div class="ttdeci">#define icalerror_warn(message)</div><div class="ttdoc">Prints a formatted warning message to stderr.</div><div class="ttdef"><b>Definition:</b> icalerror.h:192</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a601c122fcea522513b1b7732fa23e833"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a601c122fcea522513b1b7732fa23e833">&#9670;&nbsp;</a></span>icalerrorenum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Represents the different types of errors that can be triggered in libical. </p>
+<p>Each of these values represent a different type of error, which is stored in <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> on exit of the library function (or can be returned, but if it is, <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> is also set). </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b"></a>ICAL_NO_ERROR&#160;</td><td class="fielddoc"><p>No error happened. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833a2cc8bbcd8c07fc9a16e36f7aae5757b1"></a>ICAL_BADARG_ERROR&#160;</td><td class="fielddoc"><p>A bad argument was passed to a function. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833a055394ffaf6701aa12491dc10767f07d"></a>ICAL_NEWFAILED_ERROR&#160;</td><td class="fielddoc"><p>An error occurred while creating a new object with a <code>*_new()</code> routine. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833a3ed4d866c28acaaaf99348b1ab27cd78"></a>ICAL_ALLOCATION_ERROR&#160;</td><td class="fielddoc"><p>An error occurred while allocating some memory. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833a6ba07679ac440358c3090a351d27f0d8"></a>ICAL_MALFORMEDDATA_ERROR&#160;</td><td class="fielddoc"><p>Malformed data was passed to a function. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb"></a>ICAL_PARSE_ERROR&#160;</td><td class="fielddoc"><p>An error occurred while parsing part of an iCal component. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833a5b0fc2e091e6b7287a9855d171648cbd"></a>ICAL_INTERNAL_ERROR&#160;</td><td class="fielddoc"><p>An internal error happened in library code. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833a3e6aa7e2b3aa393f3c048d64cea6578d"></a>ICAL_FILE_ERROR&#160;</td><td class="fielddoc"><p>An error happened while working with a file. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833adcf918ddc612831de72aa3749d39b5c6"></a>ICAL_USAGE_ERROR&#160;</td><td class="fielddoc"><p>Failure to properly sequence calls to a set of interfaces. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833ad9376ffaf63b7fdb07eec0c0587c33f7"></a>ICAL_UNIMPLEMENTED_ERROR&#160;</td><td class="fielddoc"><p>An unimplemented function was called. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551"></a>ICAL_UNKNOWN_ERROR&#160;</td><td class="fielddoc"><p>An unknown error occurred. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<a id="a3cb9a92508be773fbb4dba7c658443d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cb9a92508be773fbb4dba7c658443d3">&#9670;&nbsp;</a></span>icalerrorstate</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Determine if an error is fatal or non-fatal. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3cb9a92508be773fbb4dba7c658443d3a6a2c3dc27d17100317eadcc4156a9442"></a>ICAL_ERROR_FATAL&#160;</td><td class="fielddoc"><p>Fatal. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a3cb9a92508be773fbb4dba7c658443d3aee5a5c75923a46b30105a272b75339b6"></a>ICAL_ERROR_NONFATAL&#160;</td><td class="fielddoc"><p>Non-fatal. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a3cb9a92508be773fbb4dba7c658443d3aa8624e525ff7c52b30310134230ba1e6"></a>ICAL_ERROR_DEFAULT&#160;</td><td class="fielddoc"><p>Fatal if icalerror_errors_are_fatal(), non-fatal otherwise. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="a3cb9a92508be773fbb4dba7c658443d3a5afdd784a33990b7a717f827c077737f"></a>ICAL_ERROR_UNKNOWN&#160;</td><td class="fielddoc"><p>Asked state for an unknown error type. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a1c741ef8219eebc325e53851aa9e8f00"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c741ef8219eebc325e53851aa9e8f00">&#9670;&nbsp;</a></span>ical_bt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ical_bt </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Prints backtrace. </p>
+<dl class="section note"><dt>Note</dt><dd>Only works on systems that support it (HAVE_BACKTRACE enabled).</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="keywordflow">if</span>(<a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a> != <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a>) {</div>
+<div class="line"> <a class="code" href="icalerror_8h.html#a1c741ef8219eebc325e53851aa9e8f00">ical_bt</a>();</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_a1c741ef8219eebc325e53851aa9e8f00"><div class="ttname"><a href="icalerror_8h.html#a1c741ef8219eebc325e53851aa9e8f00">ical_bt</a></div><div class="ttdeci">void ical_bt(void)</div><div class="ttdoc">Prints backtrace.</div><div class="ttdef"><b>Definition:</b> icalerror.c:260</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="aafe7575af3bfd0754deaad7eecae38e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafe7575af3bfd0754deaad7eecae38e5">&#9670;&nbsp;</a></span>icalerrno_return()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a>* icalerrno_return </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> value. </p>
+<dl class="section return"><dt>Returns</dt><dd>A pointer to the current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> value</dd></dl>
+<p>Yields a pointer to the current <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> value. This can be used to access (read from and write to) it.</p>
+<dl class="section user"><dt>Examples</dt><dd><div class="fragment"><div class="line">assert(*<a class="code" href="icalerror_8h.html#aafe7575af3bfd0754deaad7eecae38e5">icalerrno_return</a>() == <a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a>);</div>
+<div class="ttc" id="aicalerror_8h_html_aafe7575af3bfd0754deaad7eecae38e5"><div class="ttname"><a href="icalerror_8h.html#aafe7575af3bfd0754deaad7eecae38e5">icalerrno_return</a></div><div class="ttdeci">icalerrorenum * icalerrno_return(void)</div><div class="ttdoc">Returns the current icalerrno value.</div><div class="ttdef"><b>Definition:</b> icalerror.c:70</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="ae87b46acb90ce9fee0fa377fd9b57c28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae87b46acb90ce9fee0fa377fd9b57c28">&#9670;&nbsp;</a></span>icalerror_clear_errno()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icalerror_clear_errno </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Resets icalerrno to <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a>. </p>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="keywordflow">if</span>(<a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a> == <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a>) {</div>
+<div class="line"> <span class="comment">// ignore parsing errors</span></div>
+<div class="line"> <a class="code" href="icalerror_8h.html#ae87b46acb90ce9fee0fa377fd9b57c28">icalerror_clear_errno</a>();</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_ae87b46acb90ce9fee0fa377fd9b57c28"><div class="ttname"><a href="icalerror_8h.html#ae87b46acb90ce9fee0fa377fd9b57c28">icalerror_clear_errno</a></div><div class="ttdeci">void icalerror_clear_errno(void)</div><div class="ttdoc">Resets icalerrno to ICAL_NO_ERROR.</div><div class="ttdef"><b>Definition:</b> icalerror.c:95</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a0cbc33f05e014e767bd92b04bfb92f62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0cbc33f05e014e767bd92b04bfb92f62">&#9670;&nbsp;</a></span>icalerror_crash_here()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icalerror_crash_here </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Triggered to abort the process. </p>
+<p>This routine is called to abort the process in the case of an error. </p>
+
+</div>
+</div>
+<a id="a9b60700869241af095f0604f35b1c446"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9b60700869241af095f0604f35b1c446">&#9670;&nbsp;</a></span>icalerror_error_from_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a> icalerror_error_from_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Reads an error from a string. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">str</td><td>The error name string </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>An <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833" title="Represents the different types of errors that can be triggered in libical.">icalerrorenum</a> representing the error</dd></dl>
+<dl class="section user"><dt>Error handling</dt><dd>If the error specified in <em>str</em> can't be found, instead <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551">ICAL_UNKNOWN_ERROR</a> is returned.</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line">assert(<a class="code" href="icalerror_8h.html#a9b60700869241af095f0604f35b1c446">icalerror_error_from_string</a>(<span class="stringliteral">&quot;PARSE&quot;</span>) == <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a>);</div>
+<div class="line">assert(<a class="code" href="icalerror_8h.html#a9b60700869241af095f0604f35b1c446">icalerror_error_from_string</a>(<span class="stringliteral">&quot;NONSENSE&quot;</span>) == <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551">ICAL_UNKNOWN_ERROR</a>);</div>
+<div class="ttc" id="aicalerror_8h_html_a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551"><div class="ttname"><a href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551">ICAL_UNKNOWN_ERROR</a></div><div class="ttdeci">@ ICAL_UNKNOWN_ERROR</div><div class="ttdef"><b>Definition:</b> icalerror.h:108</div></div>
+<div class="ttc" id="aicalerror_8h_html_a9b60700869241af095f0604f35b1c446"><div class="ttname"><a href="icalerror_8h.html#a9b60700869241af095f0604f35b1c446">icalerror_error_from_string</a></div><div class="ttdeci">icalerrorenum icalerror_error_from_string(const char *str)</div><div class="ttdoc">Reads an error from a string.</div><div class="ttdef"><b>Definition:</b> icalerror.c:181</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a5fe3cbc229f74250b59c077e21abf82d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5fe3cbc229f74250b59c077e21abf82d">&#9670;&nbsp;</a></span>icalerror_get_error_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a> icalerror_get_error_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a>&#160;</td>
+ <td class="paramname"><em>error</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Gets the error state (severity) for a given error. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">error</td><td>The error to examine </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns the severity of the error </dd></dl>
+
+</div>
+</div>
+<a id="a44fa677ba623cdcebe9e38b03cd08389"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44fa677ba623cdcebe9e38b03cd08389">&#9670;&nbsp;</a></span>icalerror_get_errors_are_fatal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int icalerror_get_errors_are_fatal </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Determine if errors are fatal. </p>
+<dl class="section return"><dt>Returns</dt><dd>True if libical errors are fatal</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="keywordflow">if</span>(<a class="code" href="icalerror_8h.html#a44fa677ba623cdcebe9e38b03cd08389">icalerror_get_errors_are_fatal</a>()) {</div>
+<div class="line"> <span class="comment">// since errors are fatal, this will abort the</span></div>
+<div class="line"> <span class="comment">// program.</span></div>
+<div class="line"> <a class="code" href="icalerror_8h.html#a8266eaa216926b6703a0ef31cd99f0b2">icalerror_set_errno</a>(<a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a>);</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_a44fa677ba623cdcebe9e38b03cd08389"><div class="ttname"><a href="icalerror_8h.html#a44fa677ba623cdcebe9e38b03cd08389">icalerror_get_errors_are_fatal</a></div><div class="ttdeci">int icalerror_get_errors_are_fatal(void)</div><div class="ttdoc">Determine if errors are fatal.</div><div class="ttdef"><b>Definition:</b> icalerror.c:111</div></div>
+<div class="ttc" id="aicalerror_8h_html_a8266eaa216926b6703a0ef31cd99f0b2"><div class="ttname"><a href="icalerror_8h.html#a8266eaa216926b6703a0ef31cd99f0b2">icalerror_set_errno</a></div><div class="ttdeci">void icalerror_set_errno(icalerrorenum x)</div><div class="ttdoc">Sets the icalerrno to a given error.</div><div class="ttdef"><b>Definition:</b> icalerror.c:117</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a55b38314ff59cf335de4b0d32ebff149"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55b38314ff59cf335de4b0d32ebff149">&#9670;&nbsp;</a></span>icalerror_perror()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* icalerror_perror </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the description string for the current error in <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a>. </p>
+<dl class="section user"><dt>Error handling</dt><dd>If the type of error <em>e</em> wasn't found, it returns the description for <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551">ICAL_UNKNOWN_ERROR</a>.</dd></dl>
+<dl class="section user"><dt>Ownership</dt><dd>The string that is returned is owned by the library and must not be free'd() by the user.</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="keywordflow">if</span>(<a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a> != <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a>) {</div>
+<div class="line"> printf(<span class="stringliteral">&quot;%s\n&quot;</span>, <a class="code" href="icalerror_8h.html#a55b38314ff59cf335de4b0d32ebff149">icalerror_perror</a>());</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_a55b38314ff59cf335de4b0d32ebff149"><div class="ttname"><a href="icalerror_8h.html#a55b38314ff59cf335de4b0d32ebff149">icalerror_perror</a></div><div class="ttdeci">const char * icalerror_perror(void)</div><div class="ttdoc">Returns the description string for the current error in icalerrno.</div><div class="ttdef"><b>Definition:</b> icalerror.c:209</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a8377dadcd17bf305d1931aa2518c321a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8377dadcd17bf305d1931aa2518c321a">&#9670;&nbsp;</a></span>icalerror_restore()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icalerror_restore </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a>&#160;</td>
+ <td class="paramname"><em>es</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Assigns the given error the given icalerrorstate (severity). </p><dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">error</td><td>The error in question </td></tr>
+ <tr><td class="paramname">es</td><td>The icalerrorstate (severity) to set it to</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>Calling the function changes the <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3" title="Determine if an error is fatal or non-fatal.">icalerrorstate</a> of the given error.</p>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="comment">// suppress internal errors</span></div>
+<div class="line"><a class="code" href="icalerror_8h.html#af226f2c41272dabecd03ec9807d3a1e2">icalerror_supress</a>(<span class="stringliteral">&quot;INTERNAL&quot;</span>);</div>
+<div class="line"> </div>
+<div class="line"><span class="comment">// ...</span></div>
+<div class="line"> </div>
+<div class="line"><span class="comment">// restore internal errors</span></div>
+<div class="line"><a class="code" href="icalerror_8h.html#a8377dadcd17bf305d1931aa2518c321a">icalerror_restore</a>(<span class="stringliteral">&quot;INTERNAL&quot;</span>, <a class="code" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aa8624e525ff7c52b30310134230ba1e6">ICAL_ERROR_DEFAULT</a>);</div>
+<div class="ttc" id="aicalerror_8h_html_a3cb9a92508be773fbb4dba7c658443d3aa8624e525ff7c52b30310134230ba1e6"><div class="ttname"><a href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aa8624e525ff7c52b30310134230ba1e6">ICAL_ERROR_DEFAULT</a></div><div class="ttdeci">@ ICAL_ERROR_DEFAULT</div><div class="ttdef"><b>Definition:</b> icalerror.h:223</div></div>
+<div class="ttc" id="aicalerror_8h_html_a8377dadcd17bf305d1931aa2518c321a"><div class="ttname"><a href="icalerror_8h.html#a8377dadcd17bf305d1931aa2518c321a">icalerror_restore</a></div><div class="ttdeci">void icalerror_restore(const char *error, icalerrorstate es)</div><div class="ttdef"><b>Definition:</b> icalerror.c:214</div></div>
+<div class="ttc" id="aicalerror_8h_html_af226f2c41272dabecd03ec9807d3a1e2"><div class="ttname"><a href="icalerror_8h.html#af226f2c41272dabecd03ec9807d3a1e2">icalerror_supress</a></div><div class="ttdeci">icalerrorstate icalerror_supress(const char *error)</div><div class="ttdoc">Suppresses a given error.</div><div class="ttdef"><b>Definition:</b> icalerror.c:194</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a8266eaa216926b6703a0ef31cd99f0b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8266eaa216926b6703a0ef31cd99f0b2">&#9670;&nbsp;</a></span>icalerror_set_errno()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icalerror_set_errno </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a>&#160;</td>
+ <td class="paramname"><em>x</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Sets the <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to a given error. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">x</td><td>The error to set <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>Sets <a class="el" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37" title="Access the current icalerrno value.">icalerrno</a> to the error given in <em>x</em>. Additionally, if the error is an <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3a6a2c3dc27d17100317eadcc4156a9442">ICAL_ERROR_FATAL</a> or if it's an <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aa8624e525ff7c52b30310134230ba1e6">ICAL_ERROR_DEFAULT</a> and <a class="el" href="icalerror_8h.html#acb04e8e94ef9817f0a8d71c994412038" title="Determines if all libical errors are fatal and lead to the process aborting.">ICAL_ERRORS_ARE_FATAL</a> is true, it prints a warning to <em>stderr</em> and aborts the process.</p>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><a class="code" href="icalerror_8h.html#a8266eaa216926b6703a0ef31cd99f0b2">icalerror_set_errno</a>(<a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a>);</div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a777a41722836b68ffb27ae5a746a14b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a777a41722836b68ffb27ae5a746a14b4">&#9670;&nbsp;</a></span>icalerror_set_error_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icalerror_set_error_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a>&#160;</td>
+ <td class="paramname"><em>error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a>&#160;</td>
+ <td class="paramname"><em>state</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Sets the <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3" title="Determine if an error is fatal or non-fatal.">icalerrorstate</a> for a given <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833" title="Represents the different types of errors that can be triggered in libical.">icalerrorenum</a> <em>error</em>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">error</td><td>The error to change </td></tr>
+ <tr><td class="paramname">state</td><td>The new error state of the error</td></tr>
+ </table>
+ </dd>
+</dl>
+<p>Sets the severity of a given error. For example, it can be used to set the severity of an <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a> to be an <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aee5a5c75923a46b30105a272b75339b6">ICAL_ERROR_NONFATAL</a>.</p>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><a class="code" href="icalerror_8h.html#a777a41722836b68ffb27ae5a746a14b4">icalerror_set_error_state</a>(<a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ac7e8ee36834bde1f2ee7b680700a8deb">ICAL_PARSE_ERROR</a>, <a class="code" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aee5a5c75923a46b30105a272b75339b6">ICAL_ERROR_NONFATAL</a>);</div>
+<div class="ttc" id="aicalerror_8h_html_a3cb9a92508be773fbb4dba7c658443d3aee5a5c75923a46b30105a272b75339b6"><div class="ttname"><a href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aee5a5c75923a46b30105a272b75339b6">ICAL_ERROR_NONFATAL</a></div><div class="ttdeci">@ ICAL_ERROR_NONFATAL</div><div class="ttdef"><b>Definition:</b> icalerror.h:220</div></div>
+<div class="ttc" id="aicalerror_8h_html_a777a41722836b68ffb27ae5a746a14b4"><div class="ttname"><a href="icalerror_8h.html#a777a41722836b68ffb27ae5a746a14b4">icalerror_set_error_state</a></div><div class="ttdeci">void icalerror_set_error_state(icalerrorenum error, icalerrorstate state)</div><div class="ttdoc">Sets the icalerrorstate for a given icalerrorenum error.</div><div class="ttdef"><b>Definition:</b> icalerror.c:223</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a05941b21472c45d4b3654cb7d94bf3e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05941b21472c45d4b3654cb7d94bf3e8">&#9670;&nbsp;</a></span>icalerror_set_errors_are_fatal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icalerror_set_errors_are_fatal </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fatal</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Change if errors are fatal. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">fatal</td><td>If true, libical aborts after a call to icalerror_set_error() </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section warning"><dt>Warning</dt><dd>NOT THREAD SAFE: it is recommended that you do not change this in a multithreaded program.</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><a class="code" href="icalerror_8h.html#a05941b21472c45d4b3654cb7d94bf3e8">icalerror_set_errors_are_fatal</a>(<span class="keyword">true</span>); <span class="comment">// default</span></div>
+<div class="line"><a class="code" href="icalerror_8h.html#a05941b21472c45d4b3654cb7d94bf3e8">icalerror_set_errors_are_fatal</a>(<span class="keyword">false</span>);</div>
+<div class="ttc" id="aicalerror_8h_html_a05941b21472c45d4b3654cb7d94bf3e8"><div class="ttname"><a href="icalerror_8h.html#a05941b21472c45d4b3654cb7d94bf3e8">icalerror_set_errors_are_fatal</a></div><div class="ttdeci">void icalerror_set_errors_are_fatal(int fatal)</div><div class="ttdoc">Change if errors are fatal.</div><div class="ttdef"><b>Definition:</b> icalerror.c:106</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="a9102f6b721a280151c7858860707171b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9102f6b721a280151c7858860707171b">&#9670;&nbsp;</a></span>icalerror_stop_here()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icalerror_stop_here </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Triggered before any error is called. </p>
+<p>This routine is called before any error is triggered. It is called by <a class="el" href="icalerror_8h.html#a8266eaa216926b6703a0ef31cd99f0b2" title="Sets the icalerrno to a given error.">icalerror_set_errno()</a>, so it does not appear in all of the macros below.</p>
+<p>This routine can be used while debugging by setting a breakpoint here. </p>
+
+</div>
+</div>
+<a id="ace2dcbae58882ed326b4716bf54842cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace2dcbae58882ed326b4716bf54842cc">&#9670;&nbsp;</a></span>icalerror_strerror()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* icalerror_strerror </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833">icalerrorenum</a>&#160;</td>
+ <td class="paramname"><em>e</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Finds the description string for error. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">e</td><td>The type of error that occurred </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A string describing the error that occurred</dd></dl>
+<dl class="section user"><dt>Error handling</dt><dd>If the type of error <em>e</em> wasn't found, it returns the description for <a class="el" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833ab2452506d4ad884b16da429749bfb551">ICAL_UNKNOWN_ERROR</a>.</dd></dl>
+<dl class="section user"><dt>Ownership</dt><dd>The string that is returned is owned by the library and must not be free'd() by the user.</dd></dl>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="keywordflow">if</span>(<a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a> != <a class="code" href="icalerror_8h.html#a601c122fcea522513b1b7732fa23e833a6748acb6af24f11fe6efbe1a19602d0b">ICAL_NO_ERROR</a>) {</div>
+<div class="line"> printf(<span class="stringliteral">&quot;%s\n&quot;</span>, <a class="code" href="icalerror_8h.html#ace2dcbae58882ed326b4716bf54842cc">icalerror_strerror</a>(<a class="code" href="icalerror_8h.html#ad2562706150f5c5a4d9b0ca149d78e37">icalerrno</a>));</div>
+<div class="line">}</div>
+<div class="ttc" id="aicalerror_8h_html_ace2dcbae58882ed326b4716bf54842cc"><div class="ttname"><a href="icalerror_8h.html#ace2dcbae58882ed326b4716bf54842cc">icalerror_strerror</a></div><div class="ttdeci">const char * icalerror_strerror(icalerrorenum e)</div><div class="ttdoc">Finds the description string for error.</div><div class="ttdef"><b>Definition:</b> icalerror.c:247</div></div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+<a id="af226f2c41272dabecd03ec9807d3a1e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af226f2c41272dabecd03ec9807d3a1e2">&#9670;&nbsp;</a></span>icalerror_supress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3">icalerrorstate</a> icalerror_supress </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>error</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Suppresses a given error. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">error</td><td>The name of the error to suppress </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The previous icalerrorstate (severity)</dd></dl>
+<p>Calling this function causes the given error to be listed as <a class="el" href="icalerror_8h.html#a3cb9a92508be773fbb4dba7c658443d3aee5a5c75923a46b30105a272b75339b6">ICAL_ERROR_NONFATAL</a>, and thus suppressed. Error states can be restored with <a class="el" href="icalerror_8h.html#a8377dadcd17bf305d1931aa2518c321a">icalerror_restore()</a>.</p>
+<dl class="section user"><dt>Usage</dt><dd><div class="fragment"><div class="line"><span class="comment">// suppresses internal errors</span></div>
+<div class="line"><a class="code" href="icalerror_8h.html#af226f2c41272dabecd03ec9807d3a1e2">icalerror_supress</a>(<span class="stringliteral">&quot;INTERNAL&quot;</span>);</div>
+</div><!-- fragment --> </dd></dl>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Thu Oct 6 2022 11:56:07 for Libical API Documentation by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
+</small></address>
+</body>
+</html>