Annotation of embedaddon/libxml2/doc/devhelp/libxml2-dict.html, revision 1.1.1.2

1.1       misho       1: <?xml version="1.0" encoding="UTF-8"?>
                      2: <html>
                      3:   <head>
                      4:     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
                      5:     <title>dict: string dictionnary</title>
                      6:     <meta name="generator" content="Libxml2 devhelp stylesheet"/>
                      7:     <link rel="start" href="index.html" title="libxml2 Reference Manual"/>
                      8:     <link rel="up" href="general.html" title="API"/>
                      9:     <link rel="stylesheet" href="style.css" type="text/css"/>
                     10:     <link rel="chapter" href="general.html" title="API"/>
                     11:   </head>
                     12:   <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
                     13:     <table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
                     14:       <tr valign="middle">
                     15:         <td>
                     16:           <a accesskey="p" href="libxml2-debugXML.html">
                     17:             <img src="left.png" width="24" height="24" border="0" alt="Prev"/>
                     18:           </a>
                     19:         </td>
                     20:         <td>
                     21:           <a accesskey="u" href="general.html">
                     22:             <img src="up.png" width="24" height="24" border="0" alt="Up"/>
                     23:           </a>
                     24:         </td>
                     25:         <td>
                     26:           <a accesskey="h" href="index.html">
                     27:             <img src="home.png" width="24" height="24" border="0" alt="Home"/>
                     28:           </a>
                     29:         </td>
                     30:         <td>
                     31:           <a accesskey="n" href="libxml2-encoding.html">
                     32:             <img src="right.png" width="24" height="24" border="0" alt="Next"/>
                     33:           </a>
                     34:         </td>
                     35:         <th width="100%" align="center">libxml2 Reference Manual</th>
                     36:       </tr>
                     37:     </table>
                     38:     <h2>
                     39:       <span class="refentrytitle">dict</span>
                     40:     </h2>
                     41:     <p>dict - string dictionnary</p>
                     42:     <p>dictionary of reusable strings, just used to avoid allocation and freeing operations. </p>
                     43:     <p>Author(s): Daniel Veillard </p>
                     44:     <div class="refsynopsisdiv">
                     45:       <h2>Synopsis</h2>
                     46:       <pre class="synopsis">typedef struct _xmlDict <a href="#xmlDict">xmlDict</a>;
                     47: typedef <a href="libxml2-dict.html#xmlDict">xmlDict</a> * <a href="#xmlDictPtr">xmlDictPtr</a>;
                     48: int    <a href="#xmlDictReference">xmlDictReference</a>                (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict);
                     49: void   <a href="#xmlDictCleanup">xmlDictCleanup</a>                    (void);
                     50: int    <a href="#xmlDictSize">xmlDictSize</a>                  (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict);
                     51: const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *   <a href="#xmlDictExists">xmlDictExists</a>              (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/>                                        int len);
                     52: int    <a href="#xmlDictOwns">xmlDictOwns</a>                  (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str);
                     53: const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *   <a href="#xmlDictQLookup">xmlDictQLookup</a>            (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br/>                                      const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
1.1.1.2 ! misho      54: int    <a href="#xmlInitializeDict">xmlInitializeDict</a>              (void);
1.1       misho      55: <a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a>  <a href="#xmlDictCreateSub">xmlDictCreateSub</a>        (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> sub);
                     56: void   <a href="#xmlDictFree">xmlDictFree</a>                  (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict);
                     57: const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *   <a href="#xmlDictLookup">xmlDictLookup</a>              (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/>                                        int len);
                     58: <a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a>  <a href="#xmlDictCreate">xmlDictCreate</a>              (void);
                     59: </pre>
                     60:     </div>
                     61:     <div class="refsect1" lang="en">
                     62:       <h2>Description</h2>
                     63:     </div>
                     64:     <div class="refsect1" lang="en">
                     65:       <h2>Details</h2>
                     66:       <div class="refsect2" lang="en">
                     67:         <div class="refsect2" lang="en"><h3><a name="xmlDict">Structure </a>xmlDict</h3><pre class="programlisting">struct _xmlDict {
                     68: The content of this structure is not made public by the API.
                     69: } xmlDict;
                     70: </pre><p/>
                     71: </div>
                     72:         <hr/>
                     73:         <div class="refsect2" lang="en"><h3><a name="xmlDictPtr">Typedef </a>xmlDictPtr</h3><pre class="programlisting"><a href="libxml2-dict.html#xmlDict">xmlDict</a> * xmlDictPtr;
                     74: </pre><p/>
                     75: </div>
                     76:         <hr/>
                     77:         <div class="refsect2" lang="en"><h3><a name="xmlDictCleanup"/>xmlDictCleanup ()</h3><pre class="programlisting">void   xmlDictCleanup                  (void)<br/>
1.1.1.2 ! misho      78: </pre><p>Free the dictionary mutex. Do not call unless sure the library is not in use anymore !</p>
1.1       misho      79: </div>
                     80:         <hr/>
                     81:         <div class="refsect2" lang="en"><h3><a name="xmlDictCreate"/>xmlDictCreate ()</h3><pre class="programlisting"><a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a>    xmlDictCreate           (void)<br/>
                     82: </pre><p>Create a new dictionary</p>
                     83: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionnary, or NULL if an error occured.</td></tr></tbody></table></div></div>
                     84:         <hr/>
                     85:         <div class="refsect2" lang="en"><h3><a name="xmlDictCreateSub"/>xmlDictCreateSub ()</h3><pre class="programlisting"><a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a>      xmlDictCreateSub        (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> sub)<br/>
                     86: </pre><p>Create a new dictionary, inheriting strings from the read-only dictionnary @sub. On lookup, strings are first searched in the new dictionnary, then in @sub, and if not found are created in the new dictionnary.</p>
                     87: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>sub</tt></i>:</span></td><td>an existing dictionnary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionnary, or NULL if an error occured.</td></tr></tbody></table></div></div>
                     88:         <hr/>
                     89:         <div class="refsect2" lang="en"><h3><a name="xmlDictExists"/>xmlDictExists ()</h3><pre class="programlisting">const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *     xmlDictExists           (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/>                                        int len)<br/>
                     90: </pre><p>Check if the @name exists in the dictionnary @dict.</p>
                     91: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the name, if -1 it is recomputed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the name or NULL if not found.</td></tr></tbody></table></div></div>
                     92:         <hr/>
                     93:         <div class="refsect2" lang="en"><h3><a name="xmlDictFree"/>xmlDictFree ()</h3><pre class="programlisting">void xmlDictFree                     (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br/>
                     94: </pre><p>Free the hash @dict and its contents. The userdata is deallocated with @f if provided.</p>
                     95: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr></tbody></table></div></div>
                     96:         <hr/>
                     97:         <div class="refsect2" lang="en"><h3><a name="xmlDictLookup"/>xmlDictLookup ()</h3><pre class="programlisting">const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *     xmlDictLookup           (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/>                                        int len)<br/>
                     98: </pre><p>Add the @name to the dictionnary @dict if not present.</p>
                     99: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the name, if -1 it is recomputed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the name or NULL in case of internal error</td></tr></tbody></table></div></div>
                    100:         <hr/>
                    101:         <div class="refsect2" lang="en"><h3><a name="xmlDictOwns"/>xmlDictOwns ()</h3><pre class="programlisting">int  xmlDictOwns                     (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str)<br/>
                    102: </pre><p>check if a string is owned by the disctionary</p>
                    103: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false and -1 in case of error -1 in case of error</td></tr></tbody></table></div></div>
                    104:         <hr/>
                    105:         <div class="refsect2" lang="en"><h3><a name="xmlDictQLookup"/>xmlDictQLookup ()</h3><pre class="programlisting">const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *   xmlDictQLookup          (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/>                                       const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br/>                                      const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
                    106: </pre><p>Add the QName @prefix:@name to the hash @dict if not present.</p>
                    107: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the QName or NULL in case of internal error</td></tr></tbody></table></div></div>
                    108:         <hr/>
                    109:         <div class="refsect2" lang="en"><h3><a name="xmlDictReference"/>xmlDictReference ()</h3><pre class="programlisting">int        xmlDictReference                (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br/>
                    110: </pre><p>Increment the <a href="libxml2-SAX.html#reference">reference</a> counter of a dictionary</p>
                    111: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div></div>
                    112:         <hr/>
                    113:         <div class="refsect2" lang="en"><h3><a name="xmlDictSize"/>xmlDictSize ()</h3><pre class="programlisting">int  xmlDictSize                     (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br/>
                    114: </pre><p>Query the number of elements installed in the hash @dict.</p>
                    115: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements in the dictionnary or -1 in case of error</td></tr></tbody></table></div></div>
                    116:         <hr/>
1.1.1.2 ! misho     117:         <div class="refsect2" lang="en"><h3><a name="xmlInitializeDict"/>xmlInitializeDict ()</h3><pre class="programlisting">int      xmlInitializeDict               (void)<br/>
        !           118: </pre><p>Do the dictionary mutex initialization. this function is not thread safe, initialization should preferably be done once at startup</p>
        !           119: <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if initialization was already done, and 1 if that call led to the initialization</td></tr></tbody></table></div></div>
        !           120:         <hr/>
1.1       misho     121:       </div>
                    122:     </div>
                    123:   </body>
                    124: </html>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>