<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.8.13"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>rpm: rpmstring.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="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">rpm  <span id="projectnumber">4.13.0.2</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.13 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> $(function() { initMenu('',false,false,'search.php','Search'); }); </script> <div id="main-nav"></div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_14c931ba4d22b4eaaf008543ee4d9331.html">rpmio</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">rpmstring.h File Reference<div class="ingroups"><a class="el" href="group__rpmstring.html">String Manipulation API.</a></div></div> </div> </div><!--header--> <div class="contents"> <p>String manipulation helper functions. <a href="#details">More...</a></p> <div class="textblock"><code>#include <stddef.h></code><br /> <code>#include <string.h></code><br /> <code>#include <rpm/rpmutil.h></code><br /> </div> <p><a href="rpmstring_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="func-members"></a> Functions</h2></td></tr> <tr class="memitem:ga8949596c31b824ed2ed496572ac4dab2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga8949596c31b824ed2ed496572ac4dab2">rislower</a> (int c)</td></tr> <tr class="memdesc:ga8949596c31b824ed2ed496572ac4dab2"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive islower(3) <a href="group__rpmstring.html#ga8949596c31b824ed2ed496572ac4dab2">More...</a><br /></td></tr> <tr class="separator:ga8949596c31b824ed2ed496572ac4dab2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae41a3473054167af2a5fcb7e94ccb0e6"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gae41a3473054167af2a5fcb7e94ccb0e6">risupper</a> (int c)</td></tr> <tr class="memdesc:gae41a3473054167af2a5fcb7e94ccb0e6"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive isupper(3) <a href="group__rpmstring.html#gae41a3473054167af2a5fcb7e94ccb0e6">More...</a><br /></td></tr> <tr class="separator:gae41a3473054167af2a5fcb7e94ccb0e6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1059066592fc30325257903e37fa9523"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga1059066592fc30325257903e37fa9523">risalpha</a> (int c)</td></tr> <tr class="memdesc:ga1059066592fc30325257903e37fa9523"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive isalpha(3) <a href="group__rpmstring.html#ga1059066592fc30325257903e37fa9523">More...</a><br /></td></tr> <tr class="separator:ga1059066592fc30325257903e37fa9523"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1ca7980c13315e4d26207b765ac14838"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga1ca7980c13315e4d26207b765ac14838">risdigit</a> (int c)</td></tr> <tr class="memdesc:ga1ca7980c13315e4d26207b765ac14838"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive isdigit(3) <a href="group__rpmstring.html#ga1ca7980c13315e4d26207b765ac14838">More...</a><br /></td></tr> <tr class="separator:ga1ca7980c13315e4d26207b765ac14838"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gacbd496a4291f832e497c57340bcd555b"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gacbd496a4291f832e497c57340bcd555b">risalnum</a> (int c)</td></tr> <tr class="memdesc:gacbd496a4291f832e497c57340bcd555b"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive isalnum(3) <a href="group__rpmstring.html#gacbd496a4291f832e497c57340bcd555b">More...</a><br /></td></tr> <tr class="separator:gacbd496a4291f832e497c57340bcd555b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae36d2cf663bdc40226c39b1ae69bd941"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gae36d2cf663bdc40226c39b1ae69bd941">risblank</a> (int c)</td></tr> <tr class="memdesc:gae36d2cf663bdc40226c39b1ae69bd941"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive isblank(3) <a href="group__rpmstring.html#gae36d2cf663bdc40226c39b1ae69bd941">More...</a><br /></td></tr> <tr class="separator:gae36d2cf663bdc40226c39b1ae69bd941"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaadacea87fc0dae96728220df85c99d52"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gaadacea87fc0dae96728220df85c99d52">risspace</a> (int c)</td></tr> <tr class="memdesc:gaadacea87fc0dae96728220df85c99d52"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive isspace(3) <a href="group__rpmstring.html#gaadacea87fc0dae96728220df85c99d52">More...</a><br /></td></tr> <tr class="separator:gaadacea87fc0dae96728220df85c99d52"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga04226ba0cef6fef56ab42d61744ea3fd"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga04226ba0cef6fef56ab42d61744ea3fd">rtolower</a> (int c)</td></tr> <tr class="memdesc:ga04226ba0cef6fef56ab42d61744ea3fd"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive tolower(3) <a href="group__rpmstring.html#ga04226ba0cef6fef56ab42d61744ea3fd">More...</a><br /></td></tr> <tr class="separator:ga04226ba0cef6fef56ab42d61744ea3fd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0e74fcc0dc27410f5b5dd996468e57b2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga0e74fcc0dc27410f5b5dd996468e57b2">rtoupper</a> (int c)</td></tr> <tr class="memdesc:ga0e74fcc0dc27410f5b5dd996468e57b2"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive toupper(3) <a href="group__rpmstring.html#ga0e74fcc0dc27410f5b5dd996468e57b2">More...</a><br /></td></tr> <tr class="separator:ga0e74fcc0dc27410f5b5dd996468e57b2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3b25bcce64eb38e449be58640169c209"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> unsigned char </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmstring_8h.html#a3b25bcce64eb38e449be58640169c209">rnibble</a> (char c)</td></tr> <tr class="memdesc:a3b25bcce64eb38e449be58640169c209"><td class="mdescLeft"> </td><td class="mdescRight">Convert hex to binary nibble. <a href="#a3b25bcce64eb38e449be58640169c209">More...</a><br /></td></tr> <tr class="separator:a3b25bcce64eb38e449be58640169c209"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1e5f8ebc49cc189053eb455e500d7e00"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmstring_8h.html#a1e5f8ebc49cc189053eb455e500d7e00">rstreq</a> (const char *s1, const char *s2)</td></tr> <tr class="memdesc:a1e5f8ebc49cc189053eb455e500d7e00"><td class="mdescLeft"> </td><td class="mdescRight">Test for string equality. <a href="#a1e5f8ebc49cc189053eb455e500d7e00">More...</a><br /></td></tr> <tr class="separator:a1e5f8ebc49cc189053eb455e500d7e00"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afdf66df6f44297ae6b342127301c9e36"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="rpmstring_8h.html#afdf66df6f44297ae6b342127301c9e36">rstreqn</a> (const char *s1, const char *s2, size_t n)</td></tr> <tr class="memdesc:afdf66df6f44297ae6b342127301c9e36"><td class="mdescLeft"> </td><td class="mdescRight">Test for string equality. <a href="#afdf66df6f44297ae6b342127301c9e36">More...</a><br /></td></tr> <tr class="separator:afdf66df6f44297ae6b342127301c9e36"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6dd6f3c58033734cafc9f54c1ab96b44"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rpmutil_8h.html#aa915ed180c0020d54d080555e1f55d8b">RPM_GNUC_PURE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga6dd6f3c58033734cafc9f54c1ab96b44">rstrcasecmp</a> (const char *s1, const char *s2)</td></tr> <tr class="memdesc:ga6dd6f3c58033734cafc9f54c1ab96b44"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive strcasecmp(3). <a href="group__rpmstring.html#ga6dd6f3c58033734cafc9f54c1ab96b44">More...</a><br /></td></tr> <tr class="separator:ga6dd6f3c58033734cafc9f54c1ab96b44"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae228682d8efd91160c7c4caaecc29a4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rpmutil_8h.html#aa915ed180c0020d54d080555e1f55d8b">RPM_GNUC_PURE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gae228682d8efd91160c7c4caaecc29a4e">rstrncasecmp</a> (const char *s1, const char *s2, size_t n)</td></tr> <tr class="memdesc:gae228682d8efd91160c7c4caaecc29a4e"><td class="mdescLeft"> </td><td class="mdescRight">Locale insensitive strncasecmp(3). <a href="group__rpmstring.html#gae228682d8efd91160c7c4caaecc29a4e">More...</a><br /></td></tr> <tr class="separator:gae228682d8efd91160c7c4caaecc29a4e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaef54821b6f5090df66cb7e99e1e8e3c8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gaef54821b6f5090df66cb7e99e1e8e3c8">rasprintf</a> (char **strp, const char *fmt,...) <a class="el" href="rpmutil_8h.html#afa56337204e88d492c1d951424b0bea5">RPM_GNUC_PRINTF</a>(2</td></tr> <tr class="memdesc:gaef54821b6f5090df66cb7e99e1e8e3c8"><td class="mdescLeft"> </td><td class="mdescRight">asprintf() clone <a href="group__rpmstring.html#gaef54821b6f5090df66cb7e99e1e8e3c8">More...</a><br /></td></tr> <tr class="separator:gaef54821b6f5090df66cb7e99e1e8e3c8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4ca948f1b9855baa0b62aa630d532095"><td class="memItemLeft" align="right" valign="top">int char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga4ca948f1b9855baa0b62aa630d532095">rstrcat</a> (char **dest, const char *src)</td></tr> <tr class="memdesc:ga4ca948f1b9855baa0b62aa630d532095"><td class="mdescLeft"> </td><td class="mdescRight">Concatenate two strings with dynamically (re)allocated memory. <a href="group__rpmstring.html#ga4ca948f1b9855baa0b62aa630d532095">More...</a><br /></td></tr> <tr class="separator:ga4ca948f1b9855baa0b62aa630d532095"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae110db3befa40c8fcd2a15f61786b88b"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gae110db3befa40c8fcd2a15f61786b88b">rstrscat</a> (char **dest, const char *arg,...) <a class="el" href="rpmutil_8h.html#ab20b5f4a77194dc7171b2311853db5cd">RPM_GNUC_NULL_TERMINATED</a></td></tr> <tr class="memdesc:gae110db3befa40c8fcd2a15f61786b88b"><td class="mdescLeft"> </td><td class="mdescRight">Concatenate multiple strings with dynamically (re)allocated memory. <a href="group__rpmstring.html#gae110db3befa40c8fcd2a15f61786b88b">More...</a><br /></td></tr> <tr class="separator:gae110db3befa40c8fcd2a15f61786b88b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab3e83839ca93d0b6d91327881b0658d8"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#gab3e83839ca93d0b6d91327881b0658d8">rstrlcpy</a> (char *dest, const char *src, size_t n)</td></tr> <tr class="memdesc:gab3e83839ca93d0b6d91327881b0658d8"><td class="mdescLeft"> </td><td class="mdescRight">strlcpy() clone: Copy src to string dest of size n. <a href="group__rpmstring.html#gab3e83839ca93d0b6d91327881b0658d8">More...</a><br /></td></tr> <tr class="separator:gab3e83839ca93d0b6d91327881b0658d8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0616218199703e0f8219f409fc9584d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rpmutil_8h.html#aa915ed180c0020d54d080555e1f55d8b">RPM_GNUC_PURE</a> unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__rpmstring.html#ga0616218199703e0f8219f409fc9584d7">rstrhash</a> (const char *string)</td></tr> <tr class="memdesc:ga0616218199703e0f8219f409fc9584d7"><td class="mdescLeft"> </td><td class="mdescRight">String hashing function. <a href="group__rpmstring.html#ga0616218199703e0f8219f409fc9584d7">More...</a><br /></td></tr> <tr class="separator:ga0616218199703e0f8219f409fc9584d7"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>String manipulation helper functions. </p> <p class="definition">Definition in file <a class="el" href="rpmstring_8h_source.html">rpmstring.h</a>.</p> </div><h2 class="groupheader">Function Documentation</h2> <a id="a3b25bcce64eb38e449be58640169c209"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3b25bcce64eb38e449be58640169c209">◆ </a></span>rnibble()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="rpmutil_8h.html#a42bc7874ff5074aa0aa528838e0bfd91">RPM_GNUC_CONST</a> unsigned char rnibble </td> <td>(</td> <td class="paramtype">char </td> <td class="paramname"><em>c</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Convert hex to binary nibble. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">c</td><td>hex character </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>binary nibble </dd></dl> <p class="definition">Definition at line <a class="el" href="rpmstring_8h_source.html#l00096">96</a> of file <a class="el" href="rpmstring_8h_source.html">rpmstring.h</a>.</p> </div> </div> <a id="a1e5f8ebc49cc189053eb455e500d7e00"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1e5f8ebc49cc189053eb455e500d7e00">◆ </a></span>rstreq()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static int rstreq </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>s1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>s2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Test for string equality. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">s1</td><td>string 1 </td></tr> <tr><td class="paramname">s2</td><td>string 2 </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 if strings differ, 1 if equal </dd></dl> <p class="definition">Definition at line <a class="el" href="rpmstring_8h_source.html#l00113">113</a> of file <a class="el" href="rpmstring_8h_source.html">rpmstring.h</a>.</p> </div> </div> <a id="afdf66df6f44297ae6b342127301c9e36"></a> <h2 class="memtitle"><span class="permalink"><a href="#afdf66df6f44297ae6b342127301c9e36">◆ </a></span>rstreqn()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static int rstreqn </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>s1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>s2</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>n</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Test for string equality. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">s1</td><td>string 1 </td></tr> <tr><td class="paramname">s2</td><td>string 2 </td></tr> <tr><td class="paramname">n</td><td>compare at most n characters </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 if strings differ, 1 if equal </dd></dl> <p class="definition">Definition at line <a class="el" href="rpmstring_8h_source.html#l00125">125</a> of file <a class="el" href="rpmstring_8h_source.html">rpmstring.h</a>.</p> <p class="reference">References <a class="el" href="group__rpmstring.html#gaef54821b6f5090df66cb7e99e1e8e3c8">rasprintf()</a>, <a class="el" href="rpmutil_8h_source.html#l00048">RPM_GNUC_NULL_TERMINATED</a>, <a class="el" href="rpmutil_8h_source.html#l00067">RPM_GNUC_PRINTF</a>, <a class="el" href="rpmutil_8h_source.html#l00033">RPM_GNUC_PURE</a>, <a class="el" href="group__rpmstring.html#ga6dd6f3c58033734cafc9f54c1ab96b44">rstrcasecmp()</a>, <a class="el" href="group__rpmstring.html#ga4ca948f1b9855baa0b62aa630d532095">rstrcat()</a>, <a class="el" href="group__rpmstring.html#ga0616218199703e0f8219f409fc9584d7">rstrhash()</a>, <a class="el" href="group__rpmstring.html#gab3e83839ca93d0b6d91327881b0658d8">rstrlcpy()</a>, <a class="el" href="group__rpmstring.html#gae228682d8efd91160c7c4caaecc29a4e">rstrncasecmp()</a>, and <a class="el" href="group__rpmstring.html#gae110db3befa40c8fcd2a15f61786b88b">rstrscat()</a>.</p> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.13 </small></address> </body> </html>