docs/api-2.1/properties_8h.html

changeset 390
d345541018fa
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/docs/api-2.1/properties_8h.html	Sat Feb 06 19:11:44 2021 +0100
     1.3 @@ -0,0 +1,393 @@
     1.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     1.5 +<html xmlns="http://www.w3.org/1999/xhtml">
     1.6 +<head>
     1.7 +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
     1.8 +<meta http-equiv="X-UA-Compatible" content="IE=9"/>
     1.9 +<meta name="generator" content="Doxygen 1.8.13"/>
    1.10 +<meta name="viewport" content="width=device-width, initial-scale=1"/>
    1.11 +<title>ucx: /home/mike/workspace/c/ucx/src/ucx/properties.h File Reference</title>
    1.12 +<link href="tabs.css" rel="stylesheet" type="text/css"/>
    1.13 +<script type="text/javascript" src="jquery.js"></script>
    1.14 +<script type="text/javascript" src="dynsections.js"></script>
    1.15 +<link href="search/search.css" rel="stylesheet" type="text/css"/>
    1.16 +<script type="text/javascript" src="search/searchdata.js"></script>
    1.17 +<script type="text/javascript" src="search/search.js"></script>
    1.18 +<link href="doxygen.css" rel="stylesheet" type="text/css" />
    1.19 +</head>
    1.20 +<body>
    1.21 +<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
    1.22 +<div id="titlearea">
    1.23 +<table cellspacing="0" cellpadding="0">
    1.24 + <tbody>
    1.25 + <tr style="height: 56px;">
    1.26 +  <td id="projectlogo"><img alt="Logo" src="uaplogo.png"/></td>
    1.27 +  <td id="projectalign" style="padding-left: 0.5em;">
    1.28 +   <div id="projectname">ucx
    1.29 +   </div>
    1.30 +   <div id="projectbrief">UAP Common Extensions</div>
    1.31 +  </td>
    1.32 + </tr>
    1.33 + </tbody>
    1.34 +</table>
    1.35 +</div>
    1.36 +<!-- end header part -->
    1.37 +<!-- Generated by Doxygen 1.8.13 -->
    1.38 +<script type="text/javascript">
    1.39 +var searchBox = new SearchBox("searchBox", "search",false,'Search');
    1.40 +</script>
    1.41 +<script type="text/javascript" src="menudata.js"></script>
    1.42 +<script type="text/javascript" src="menu.js"></script>
    1.43 +<script type="text/javascript">
    1.44 +$(function() {
    1.45 +  initMenu('',true,false,'search.php','Search');
    1.46 +  $(document).ready(function() { init_search(); });
    1.47 +});
    1.48 +</script>
    1.49 +<div id="main-nav"></div>
    1.50 +<!-- window showing the filter options -->
    1.51 +<div id="MSearchSelectWindow"
    1.52 +     onmouseover="return searchBox.OnSearchSelectShow()"
    1.53 +     onmouseout="return searchBox.OnSearchSelectHide()"
    1.54 +     onkeydown="return searchBox.OnSearchSelectKey(event)">
    1.55 +</div>
    1.56 +
    1.57 +<!-- iframe showing the search results (closed by default) -->
    1.58 +<div id="MSearchResultsWindow">
    1.59 +<iframe src="javascript:void(0)" frameborder="0" 
    1.60 +        name="MSearchResults" id="MSearchResults">
    1.61 +</iframe>
    1.62 +</div>
    1.63 +
    1.64 +<div id="nav-path" class="navpath">
    1.65 +  <ul>
    1.66 +<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_69f4ea29401808fe6229564976cde3ce.html">ucx</a></li>  </ul>
    1.67 +</div>
    1.68 +</div><!-- top -->
    1.69 +<div class="header">
    1.70 +  <div class="summary">
    1.71 +<a href="#nested-classes">Data Structures</a> &#124;
    1.72 +<a href="#func-members">Functions</a>  </div>
    1.73 +  <div class="headertitle">
    1.74 +<div class="title">properties.h File Reference</div>  </div>
    1.75 +</div><!--header-->
    1.76 +<div class="contents">
    1.77 +
    1.78 +<p>Load / store utilities for properties files.  
    1.79 +<a href="#details">More...</a></p>
    1.80 +<div class="textblock"><code>#include &quot;<a class="el" href="ucx_8h_source.html">ucx.h</a>&quot;</code><br />
    1.81 +<code>#include &quot;<a class="el" href="map_8h_source.html">map.h</a>&quot;</code><br />
    1.82 +</div>
    1.83 +<p><a href="properties_8h_source.html">Go to the source code of this file.</a></p>
    1.84 +<table class="memberdecls">
    1.85 +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
    1.86 +Data Structures</h2></td></tr>
    1.87 +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structUcxProperties.html">UcxProperties</a></td></tr>
    1.88 +<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object for parsing properties data.  <a href="structUcxProperties.html#details">More...</a><br /></td></tr>
    1.89 +<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
    1.90 +</table><table class="memberdecls">
    1.91 +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
    1.92 +Functions</h2></td></tr>
    1.93 +<tr class="memitem:a44d9dd12cab3aaa0084f1c8b89405796"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structUcxProperties.html">UcxProperties</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="properties_8h.html#a44d9dd12cab3aaa0084f1c8b89405796">ucx_properties_new</a> ()</td></tr>
    1.94 +<tr class="memdesc:a44d9dd12cab3aaa0084f1c8b89405796"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a new <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object.  <a href="#a44d9dd12cab3aaa0084f1c8b89405796">More...</a><br /></td></tr>
    1.95 +<tr class="separator:a44d9dd12cab3aaa0084f1c8b89405796"><td class="memSeparator" colspan="2">&#160;</td></tr>
    1.96 +<tr class="memitem:a38a2fe7bb2986bd87c7e69356ab05c05"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="properties_8h.html#a38a2fe7bb2986bd87c7e69356ab05c05">ucx_properties_free</a> (<a class="el" href="structUcxProperties.html">UcxProperties</a> *prop)</td></tr>
    1.97 +<tr class="memdesc:a38a2fe7bb2986bd87c7e69356ab05c05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys a <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object.  <a href="#a38a2fe7bb2986bd87c7e69356ab05c05">More...</a><br /></td></tr>
    1.98 +<tr class="separator:a38a2fe7bb2986bd87c7e69356ab05c05"><td class="memSeparator" colspan="2">&#160;</td></tr>
    1.99 +<tr class="memitem:aaf8de121764a4d22c763ff2ab41f3a4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="properties_8h.html#aaf8de121764a4d22c763ff2ab41f3a4d">ucx_properties_fill</a> (<a class="el" href="structUcxProperties.html">UcxProperties</a> *prop, char *buf, size_t len)</td></tr>
   1.100 +<tr class="memdesc:aaf8de121764a4d22c763ff2ab41f3a4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the input buffer for the properties parser.  <a href="#aaf8de121764a4d22c763ff2ab41f3a4d">More...</a><br /></td></tr>
   1.101 +<tr class="separator:aaf8de121764a4d22c763ff2ab41f3a4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
   1.102 +<tr class="memitem:a7e03bc573d45d48c538cd721e810d33c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="properties_8h.html#a7e03bc573d45d48c538cd721e810d33c">ucx_properties_next</a> (<a class="el" href="structUcxProperties.html">UcxProperties</a> *prop, <a class="el" href="structsstr__t.html">sstr_t</a> *name, <a class="el" href="structsstr__t.html">sstr_t</a> *value)</td></tr>
   1.103 +<tr class="memdesc:a7e03bc573d45d48c538cd721e810d33c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the next key/value-pair.  <a href="#a7e03bc573d45d48c538cd721e810d33c">More...</a><br /></td></tr>
   1.104 +<tr class="separator:a7e03bc573d45d48c538cd721e810d33c"><td class="memSeparator" colspan="2">&#160;</td></tr>
   1.105 +<tr class="memitem:a5c7ff8bc3139960a3f3dc92072b742f3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="properties_8h.html#a5c7ff8bc3139960a3f3dc92072b742f3">ucx_properties2map</a> (<a class="el" href="structUcxProperties.html">UcxProperties</a> *prop, <a class="el" href="structUcxMap.html">UcxMap</a> *map)</td></tr>
   1.106 +<tr class="memdesc:a5c7ff8bc3139960a3f3dc92072b742f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves all available key/value-pairs and puts them into a <a class="el" href="structUcxMap.html" title="Structure for the UCX map. ">UcxMap</a>.  <a href="#a5c7ff8bc3139960a3f3dc92072b742f3">More...</a><br /></td></tr>
   1.107 +<tr class="separator:a5c7ff8bc3139960a3f3dc92072b742f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
   1.108 +<tr class="memitem:ae1b600f839a6b2278b68fc314981a8a3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="properties_8h.html#ae1b600f839a6b2278b68fc314981a8a3">ucx_properties_load</a> (<a class="el" href="structUcxMap.html">UcxMap</a> *map, FILE *file)</td></tr>
   1.109 +<tr class="memdesc:ae1b600f839a6b2278b68fc314981a8a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a properties file to a <a class="el" href="structUcxMap.html" title="Structure for the UCX map. ">UcxMap</a>.  <a href="#ae1b600f839a6b2278b68fc314981a8a3">More...</a><br /></td></tr>
   1.110 +<tr class="separator:ae1b600f839a6b2278b68fc314981a8a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
   1.111 +<tr class="memitem:a63c0c1b7648e675b21a1788917ff36fb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="properties_8h.html#a63c0c1b7648e675b21a1788917ff36fb">ucx_properties_store</a> (<a class="el" href="structUcxMap.html">UcxMap</a> *map, FILE *file)</td></tr>
   1.112 +<tr class="memdesc:a63c0c1b7648e675b21a1788917ff36fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores a <a class="el" href="structUcxMap.html" title="Structure for the UCX map. ">UcxMap</a> to a file.  <a href="#a63c0c1b7648e675b21a1788917ff36fb">More...</a><br /></td></tr>
   1.113 +<tr class="separator:a63c0c1b7648e675b21a1788917ff36fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
   1.114 +</table>
   1.115 +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
   1.116 +<div class="textblock"><p>Load / store utilities for properties files. </p>
   1.117 +<dl class="section author"><dt>Author</dt><dd>Mike Becker </dd>
   1.118 +<dd>
   1.119 +Olaf Wintermann </dd></dl>
   1.120 +</div><h2 class="groupheader">Function Documentation</h2>
   1.121 +<a id="a5c7ff8bc3139960a3f3dc92072b742f3"></a>
   1.122 +<h2 class="memtitle"><span class="permalink"><a href="#a5c7ff8bc3139960a3f3dc92072b742f3">&#9670;&nbsp;</a></span>ucx_properties2map()</h2>
   1.123 +
   1.124 +<div class="memitem">
   1.125 +<div class="memproto">
   1.126 +      <table class="memname">
   1.127 +        <tr>
   1.128 +          <td class="memname">int ucx_properties2map </td>
   1.129 +          <td>(</td>
   1.130 +          <td class="paramtype"><a class="el" href="structUcxProperties.html">UcxProperties</a> *&#160;</td>
   1.131 +          <td class="paramname"><em>prop</em>, </td>
   1.132 +        </tr>
   1.133 +        <tr>
   1.134 +          <td class="paramkey"></td>
   1.135 +          <td></td>
   1.136 +          <td class="paramtype"><a class="el" href="structUcxMap.html">UcxMap</a> *&#160;</td>
   1.137 +          <td class="paramname"><em>map</em>&#160;</td>
   1.138 +        </tr>
   1.139 +        <tr>
   1.140 +          <td></td>
   1.141 +          <td>)</td>
   1.142 +          <td></td><td></td>
   1.143 +        </tr>
   1.144 +      </table>
   1.145 +</div><div class="memdoc">
   1.146 +
   1.147 +<p>Retrieves all available key/value-pairs and puts them into a <a class="el" href="structUcxMap.html" title="Structure for the UCX map. ">UcxMap</a>. </p>
   1.148 +<p>This is done by successive calls to <a class="el" href="properties_8h.html#a7e03bc573d45d48c538cd721e810d33c" title="Retrieves the next key/value-pair. ">ucx_properties_next()</a> until no more key/value-pairs can be retrieved.</p>
   1.149 +<p>The memory for the map values is allocated by the map's own allocator.</p>
   1.150 +<dl class="params"><dt>Parameters</dt><dd>
   1.151 +  <table class="params">
   1.152 +    <tr><td class="paramname">prop</td><td>the <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object </td></tr>
   1.153 +    <tr><td class="paramname">map</td><td>the target map </td></tr>
   1.154 +  </table>
   1.155 +  </dd>
   1.156 +</dl>
   1.157 +<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="structUcxProperties.html#a34f71a6ab6dcb6892e3b4eb802e75bff" title="Parser error code. ">UcxProperties.error</a> code (i.e. 0 on success). </dd></dl>
   1.158 +<dl class="section see"><dt>See also</dt><dd><a class="el" href="properties_8h.html#aaf8de121764a4d22c763ff2ab41f3a4d" title="Sets the input buffer for the properties parser. ">ucx_properties_fill()</a> </dd>
   1.159 +<dd>
   1.160 +<a class="el" href="structUcxMap.html#a531f3e481c1c331cf037b916192e974d" title="An allocator that is used for the map elements. ">UcxMap.allocator</a> </dd></dl>
   1.161 +
   1.162 +</div>
   1.163 +</div>
   1.164 +<a id="aaf8de121764a4d22c763ff2ab41f3a4d"></a>
   1.165 +<h2 class="memtitle"><span class="permalink"><a href="#aaf8de121764a4d22c763ff2ab41f3a4d">&#9670;&nbsp;</a></span>ucx_properties_fill()</h2>
   1.166 +
   1.167 +<div class="memitem">
   1.168 +<div class="memproto">
   1.169 +      <table class="memname">
   1.170 +        <tr>
   1.171 +          <td class="memname">void ucx_properties_fill </td>
   1.172 +          <td>(</td>
   1.173 +          <td class="paramtype"><a class="el" href="structUcxProperties.html">UcxProperties</a> *&#160;</td>
   1.174 +          <td class="paramname"><em>prop</em>, </td>
   1.175 +        </tr>
   1.176 +        <tr>
   1.177 +          <td class="paramkey"></td>
   1.178 +          <td></td>
   1.179 +          <td class="paramtype">char *&#160;</td>
   1.180 +          <td class="paramname"><em>buf</em>, </td>
   1.181 +        </tr>
   1.182 +        <tr>
   1.183 +          <td class="paramkey"></td>
   1.184 +          <td></td>
   1.185 +          <td class="paramtype">size_t&#160;</td>
   1.186 +          <td class="paramname"><em>len</em>&#160;</td>
   1.187 +        </tr>
   1.188 +        <tr>
   1.189 +          <td></td>
   1.190 +          <td>)</td>
   1.191 +          <td></td><td></td>
   1.192 +        </tr>
   1.193 +      </table>
   1.194 +</div><div class="memdoc">
   1.195 +
   1.196 +<p>Sets the input buffer for the properties parser. </p>
   1.197 +<p>After calling this function, you may parse the data by calling <a class="el" href="properties_8h.html#a7e03bc573d45d48c538cd721e810d33c" title="Retrieves the next key/value-pair. ">ucx_properties_next()</a> until it returns 0. The function <a class="el" href="properties_8h.html#a5c7ff8bc3139960a3f3dc92072b742f3" title="Retrieves all available key/value-pairs and puts them into a UcxMap. ">ucx_properties2map()</a> is a convenience function that reads as much data as possible by using this function.</p>
   1.198 +<dl class="params"><dt>Parameters</dt><dd>
   1.199 +  <table class="params">
   1.200 +    <tr><td class="paramname">prop</td><td>the <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object </td></tr>
   1.201 +    <tr><td class="paramname">buf</td><td>a pointer to the new buffer </td></tr>
   1.202 +    <tr><td class="paramname">len</td><td>the payload length of the buffer </td></tr>
   1.203 +  </table>
   1.204 +  </dd>
   1.205 +</dl>
   1.206 +<dl class="section see"><dt>See also</dt><dd><a class="el" href="properties_8h.html#a7e03bc573d45d48c538cd721e810d33c" title="Retrieves the next key/value-pair. ">ucx_properties_next()</a> </dd>
   1.207 +<dd>
   1.208 +<a class="el" href="properties_8h.html#a5c7ff8bc3139960a3f3dc92072b742f3" title="Retrieves all available key/value-pairs and puts them into a UcxMap. ">ucx_properties2map()</a> </dd></dl>
   1.209 +
   1.210 +</div>
   1.211 +</div>
   1.212 +<a id="a38a2fe7bb2986bd87c7e69356ab05c05"></a>
   1.213 +<h2 class="memtitle"><span class="permalink"><a href="#a38a2fe7bb2986bd87c7e69356ab05c05">&#9670;&nbsp;</a></span>ucx_properties_free()</h2>
   1.214 +
   1.215 +<div class="memitem">
   1.216 +<div class="memproto">
   1.217 +      <table class="memname">
   1.218 +        <tr>
   1.219 +          <td class="memname">void ucx_properties_free </td>
   1.220 +          <td>(</td>
   1.221 +          <td class="paramtype"><a class="el" href="structUcxProperties.html">UcxProperties</a> *&#160;</td>
   1.222 +          <td class="paramname"><em>prop</em></td><td>)</td>
   1.223 +          <td></td>
   1.224 +        </tr>
   1.225 +      </table>
   1.226 +</div><div class="memdoc">
   1.227 +
   1.228 +<p>Destroys a <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object. </p>
   1.229 +<dl class="params"><dt>Parameters</dt><dd>
   1.230 +  <table class="params">
   1.231 +    <tr><td class="paramname">prop</td><td>the <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object to destroy </td></tr>
   1.232 +  </table>
   1.233 +  </dd>
   1.234 +</dl>
   1.235 +
   1.236 +</div>
   1.237 +</div>
   1.238 +<a id="ae1b600f839a6b2278b68fc314981a8a3"></a>
   1.239 +<h2 class="memtitle"><span class="permalink"><a href="#ae1b600f839a6b2278b68fc314981a8a3">&#9670;&nbsp;</a></span>ucx_properties_load()</h2>
   1.240 +
   1.241 +<div class="memitem">
   1.242 +<div class="memproto">
   1.243 +      <table class="memname">
   1.244 +        <tr>
   1.245 +          <td class="memname">int ucx_properties_load </td>
   1.246 +          <td>(</td>
   1.247 +          <td class="paramtype"><a class="el" href="structUcxMap.html">UcxMap</a> *&#160;</td>
   1.248 +          <td class="paramname"><em>map</em>, </td>
   1.249 +        </tr>
   1.250 +        <tr>
   1.251 +          <td class="paramkey"></td>
   1.252 +          <td></td>
   1.253 +          <td class="paramtype">FILE *&#160;</td>
   1.254 +          <td class="paramname"><em>file</em>&#160;</td>
   1.255 +        </tr>
   1.256 +        <tr>
   1.257 +          <td></td>
   1.258 +          <td>)</td>
   1.259 +          <td></td><td></td>
   1.260 +        </tr>
   1.261 +      </table>
   1.262 +</div><div class="memdoc">
   1.263 +
   1.264 +<p>Loads a properties file to a <a class="el" href="structUcxMap.html" title="Structure for the UCX map. ">UcxMap</a>. </p>
   1.265 +<p>This is a convenience function that reads data from an input stream until the end of the stream is reached.</p>
   1.266 +<dl class="params"><dt>Parameters</dt><dd>
   1.267 +  <table class="params">
   1.268 +    <tr><td class="paramname">map</td><td>the map object to write the key/value-pairs to </td></tr>
   1.269 +    <tr><td class="paramname">file</td><td>the <code>FILE*</code> stream to read from </td></tr>
   1.270 +  </table>
   1.271 +  </dd>
   1.272 +</dl>
   1.273 +<dl class="section return"><dt>Returns</dt><dd>0 on success, or a non-zero value on error</dd></dl>
   1.274 +<dl class="section see"><dt>See also</dt><dd><a class="el" href="properties_8h.html#aaf8de121764a4d22c763ff2ab41f3a4d" title="Sets the input buffer for the properties parser. ">ucx_properties_fill()</a> </dd>
   1.275 +<dd>
   1.276 +<a class="el" href="properties_8h.html#a5c7ff8bc3139960a3f3dc92072b742f3" title="Retrieves all available key/value-pairs and puts them into a UcxMap. ">ucx_properties2map()</a> </dd></dl>
   1.277 +
   1.278 +</div>
   1.279 +</div>
   1.280 +<a id="a44d9dd12cab3aaa0084f1c8b89405796"></a>
   1.281 +<h2 class="memtitle"><span class="permalink"><a href="#a44d9dd12cab3aaa0084f1c8b89405796">&#9670;&nbsp;</a></span>ucx_properties_new()</h2>
   1.282 +
   1.283 +<div class="memitem">
   1.284 +<div class="memproto">
   1.285 +      <table class="memname">
   1.286 +        <tr>
   1.287 +          <td class="memname"><a class="el" href="structUcxProperties.html">UcxProperties</a>* ucx_properties_new </td>
   1.288 +          <td>(</td>
   1.289 +          <td class="paramname"></td><td>)</td>
   1.290 +          <td></td>
   1.291 +        </tr>
   1.292 +      </table>
   1.293 +</div><div class="memdoc">
   1.294 +
   1.295 +<p>Constructs a new <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object. </p>
   1.296 +<dl class="section return"><dt>Returns</dt><dd>a pointer to the new <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object </dd></dl>
   1.297 +
   1.298 +</div>
   1.299 +</div>
   1.300 +<a id="a7e03bc573d45d48c538cd721e810d33c"></a>
   1.301 +<h2 class="memtitle"><span class="permalink"><a href="#a7e03bc573d45d48c538cd721e810d33c">&#9670;&nbsp;</a></span>ucx_properties_next()</h2>
   1.302 +
   1.303 +<div class="memitem">
   1.304 +<div class="memproto">
   1.305 +      <table class="memname">
   1.306 +        <tr>
   1.307 +          <td class="memname">int ucx_properties_next </td>
   1.308 +          <td>(</td>
   1.309 +          <td class="paramtype"><a class="el" href="structUcxProperties.html">UcxProperties</a> *&#160;</td>
   1.310 +          <td class="paramname"><em>prop</em>, </td>
   1.311 +        </tr>
   1.312 +        <tr>
   1.313 +          <td class="paramkey"></td>
   1.314 +          <td></td>
   1.315 +          <td class="paramtype"><a class="el" href="structsstr__t.html">sstr_t</a> *&#160;</td>
   1.316 +          <td class="paramname"><em>name</em>, </td>
   1.317 +        </tr>
   1.318 +        <tr>
   1.319 +          <td class="paramkey"></td>
   1.320 +          <td></td>
   1.321 +          <td class="paramtype"><a class="el" href="structsstr__t.html">sstr_t</a> *&#160;</td>
   1.322 +          <td class="paramname"><em>value</em>&#160;</td>
   1.323 +        </tr>
   1.324 +        <tr>
   1.325 +          <td></td>
   1.326 +          <td>)</td>
   1.327 +          <td></td><td></td>
   1.328 +        </tr>
   1.329 +      </table>
   1.330 +</div><div class="memdoc">
   1.331 +
   1.332 +<p>Retrieves the next key/value-pair. </p>
   1.333 +<p>This function returns a nonzero value as long as there are key/value-pairs found. If no more key/value-pairs are found, you may refill the input buffer with <a class="el" href="properties_8h.html#aaf8de121764a4d22c763ff2ab41f3a4d" title="Sets the input buffer for the properties parser. ">ucx_properties_fill()</a>.</p>
   1.334 +<p><b>Attention:</b> the <a class="el" href="structsstr__t.html#af8049914efc1e67f7de3ee55ec0611b0" title="A pointer to the string (not necessarily NULL-terminated) ">sstr_t.ptr</a> pointers of the output parameters point to memory within the input buffer of the parser and will get invalid some time. If you want long term copies of the key/value-pairs, use <a class="el" href="string_8h.html#accbfd2b459a028d7af9fb7df6f977d80" title="Creates a duplicate of the specified string. ">sstrdup()</a> after calling this function.</p>
   1.335 +<dl class="params"><dt>Parameters</dt><dd>
   1.336 +  <table class="params">
   1.337 +    <tr><td class="paramname">prop</td><td>the <a class="el" href="structUcxProperties.html" title="UcxProperties object for parsing properties data. ">UcxProperties</a> object </td></tr>
   1.338 +    <tr><td class="paramname">name</td><td>a pointer to the <a class="el" href="structsstr__t.html" title="The UCX string structure. ">sstr_t</a> that shall contain the property name </td></tr>
   1.339 +    <tr><td class="paramname">value</td><td>a pointer to the <a class="el" href="structsstr__t.html" title="The UCX string structure. ">sstr_t</a> that shall contain the property value </td></tr>
   1.340 +  </table>
   1.341 +  </dd>
   1.342 +</dl>
   1.343 +<dl class="section return"><dt>Returns</dt><dd>Nonzero, if a key/value-pair was successfully retrieved </dd></dl>
   1.344 +<dl class="section see"><dt>See also</dt><dd><a class="el" href="properties_8h.html#aaf8de121764a4d22c763ff2ab41f3a4d" title="Sets the input buffer for the properties parser. ">ucx_properties_fill()</a> </dd></dl>
   1.345 +
   1.346 +</div>
   1.347 +</div>
   1.348 +<a id="a63c0c1b7648e675b21a1788917ff36fb"></a>
   1.349 +<h2 class="memtitle"><span class="permalink"><a href="#a63c0c1b7648e675b21a1788917ff36fb">&#9670;&nbsp;</a></span>ucx_properties_store()</h2>
   1.350 +
   1.351 +<div class="memitem">
   1.352 +<div class="memproto">
   1.353 +      <table class="memname">
   1.354 +        <tr>
   1.355 +          <td class="memname">int ucx_properties_store </td>
   1.356 +          <td>(</td>
   1.357 +          <td class="paramtype"><a class="el" href="structUcxMap.html">UcxMap</a> *&#160;</td>
   1.358 +          <td class="paramname"><em>map</em>, </td>
   1.359 +        </tr>
   1.360 +        <tr>
   1.361 +          <td class="paramkey"></td>
   1.362 +          <td></td>
   1.363 +          <td class="paramtype">FILE *&#160;</td>
   1.364 +          <td class="paramname"><em>file</em>&#160;</td>
   1.365 +        </tr>
   1.366 +        <tr>
   1.367 +          <td></td>
   1.368 +          <td>)</td>
   1.369 +          <td></td><td></td>
   1.370 +        </tr>
   1.371 +      </table>
   1.372 +</div><div class="memdoc">
   1.373 +
   1.374 +<p>Stores a <a class="el" href="structUcxMap.html" title="Structure for the UCX map. ">UcxMap</a> to a file. </p>
   1.375 +<p>The key/value-pairs are written by using the following format:</p>
   1.376 +<p><code>[key] = [value]\n</code></p>
   1.377 +<dl class="params"><dt>Parameters</dt><dd>
   1.378 +  <table class="params">
   1.379 +    <tr><td class="paramname">map</td><td>the map to store </td></tr>
   1.380 +    <tr><td class="paramname">file</td><td>the <code>FILE*</code> stream to write to </td></tr>
   1.381 +  </table>
   1.382 +  </dd>
   1.383 +</dl>
   1.384 +<dl class="section return"><dt>Returns</dt><dd>0 on success, or a non-zero value on error </dd></dl>
   1.385 +
   1.386 +</div>
   1.387 +</div>
   1.388 +</div><!-- contents -->
   1.389 +<!-- start footer part -->
   1.390 +<hr class="footer"/><address class="footer"><small>
   1.391 +Generated on Thu Dec 19 2019 19:58:24 for ucx by &#160;<a href="http://www.doxygen.org/index.html">
   1.392 +<img class="footer" src="doxygen.png" alt="doxygen"/>
   1.393 +</a> 1.8.13
   1.394 +</small></address>
   1.395 +</body>
   1.396 +</html>

mercurial