123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816 |
- <!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.8.17"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>GRPC C++: grpc::Slice Class 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">GRPC C++
-  <span id="projectnumber">1.36.1</span>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.8.17 -->
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- var searchBox = new SearchBox("searchBox", "search",false,'Search');
- /* @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&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="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_slice.html">Slice</a></li> </ul>
- </div>
- </div><!-- top -->
- <div class="header">
- <div class="summary">
- <a href="#pub-types">Public Types</a> |
- <a href="#pub-methods">Public Member Functions</a> |
- <a href="#friends">Friends</a> </div>
- <div class="headertitle">
- <div class="title">grpc::Slice Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
- </div><!--header-->
- <div class="contents">
- <p>A wrapper around <em><a class="el" href="structgrpc__slice.html" title="A grpc_slice s, if initialized, represents the byte range s.bytes[0..s.length-1].">grpc_slice</a></em>.
- <a href="classgrpc_1_1_slice.html#details">More...</a></p>
- <p><code>#include <<a class="el" href="grpcpp_2impl_2codegen_2slice_8h_source.html">slice.h</a>></code></p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
- Public Types</h2></td></tr>
- <tr class="memitem:ac1e8469bbb6dfa9ab9e646e0b48f5fe2"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a> { <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2">ADD_REF</a>
- }</td></tr>
- <tr class="separator:ac1e8469bbb6dfa9ab9e646e0b48f5fe2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a13fbbec0e9121a8b948d563f9730d75a"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a> { <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7">STEAL_REF</a>
- }</td></tr>
- <tr class="separator:a13fbbec0e9121a8b948d563f9730d75a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a61a6b4f8f10e5b90a99a5d09b8fdc498"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a61a6b4f8f10e5b90a99a5d09b8fdc498">StaticSlice</a> { <a class="el" href="classgrpc_1_1_slice.html#a61a6b4f8f10e5b90a99a5d09b8fdc498a162100d1059f54ba91c6803865effe10">STATIC_SLICE</a>
- }</td></tr>
- <tr class="separator:a61a6b4f8f10e5b90a99a5d09b8fdc498"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr class="memitem:a8c5179cf7a39f66d65887bf298dc548f"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">Slice</a> ()</td></tr>
- <tr class="memdesc:a8c5179cf7a39f66d65887bf298dc548f"><td class="mdescLeft"> </td><td class="mdescRight">Construct an empty slice. <a href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">More...</a><br /></td></tr>
- <tr class="separator:a8c5179cf7a39f66d65887bf298dc548f"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a1f89af608ad9e5bbc2870d4ee7140c94"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94">~Slice</a> ()</td></tr>
- <tr class="memdesc:a1f89af608ad9e5bbc2870d4ee7140c94"><td class="mdescLeft"> </td><td class="mdescRight">Destructor - drops one reference. <a href="classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94">More...</a><br /></td></tr>
- <tr class="separator:a1f89af608ad9e5bbc2870d4ee7140c94"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5e3c4a94b5de9e66f2328039233e3873"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a5e3c4a94b5de9e66f2328039233e3873">Slice</a> (<a class="el" href="structgrpc__slice.html">grpc_slice</a> slice, <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a>)</td></tr>
- <tr class="memdesc:a5e3c4a94b5de9e66f2328039233e3873"><td class="mdescLeft"> </td><td class="mdescRight">Construct a slice from <em>slice</em>, adding a reference. <a href="classgrpc_1_1_slice.html#a5e3c4a94b5de9e66f2328039233e3873">More...</a><br /></td></tr>
- <tr class="separator:a5e3c4a94b5de9e66f2328039233e3873"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af3fece4a2e6c2be33631c295c5ea3418"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#af3fece4a2e6c2be33631c295c5ea3418">Slice</a> (<a class="el" href="structgrpc__slice.html">grpc_slice</a> slice, <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a>)</td></tr>
- <tr class="memdesc:af3fece4a2e6c2be33631c295c5ea3418"><td class="mdescLeft"> </td><td class="mdescRight">Construct a slice from <em>slice</em>, stealing a reference. <a href="classgrpc_1_1_slice.html#af3fece4a2e6c2be33631c295c5ea3418">More...</a><br /></td></tr>
- <tr class="separator:af3fece4a2e6c2be33631c295c5ea3418"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac7fd05a7ad8edb55c163b544e7878bf9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ac7fd05a7ad8edb55c163b544e7878bf9">Slice</a> (size_t len)</td></tr>
- <tr class="memdesc:ac7fd05a7ad8edb55c163b544e7878bf9"><td class="mdescLeft"> </td><td class="mdescRight">Allocate a slice of specified size. <a href="classgrpc_1_1_slice.html#ac7fd05a7ad8edb55c163b544e7878bf9">More...</a><br /></td></tr>
- <tr class="separator:ac7fd05a7ad8edb55c163b544e7878bf9"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad180398d3b0a83a1c8fbff9aed4aff48"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ad180398d3b0a83a1c8fbff9aed4aff48">Slice</a> (const void *buf, size_t len)</td></tr>
- <tr class="memdesc:ad180398d3b0a83a1c8fbff9aed4aff48"><td class="mdescLeft"> </td><td class="mdescRight">Construct a slice from a copied buffer. <a href="classgrpc_1_1_slice.html#ad180398d3b0a83a1c8fbff9aed4aff48">More...</a><br /></td></tr>
- <tr class="separator:ad180398d3b0a83a1c8fbff9aed4aff48"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0fe7abc158b542eae02d1e7b8f76d625"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a0fe7abc158b542eae02d1e7b8f76d625">Slice</a> (const std::string &str)</td></tr>
- <tr class="memdesc:a0fe7abc158b542eae02d1e7b8f76d625"><td class="mdescLeft"> </td><td class="mdescRight">Construct a slice from a copied string. <a href="classgrpc_1_1_slice.html#a0fe7abc158b542eae02d1e7b8f76d625">More...</a><br /></td></tr>
- <tr class="separator:a0fe7abc158b542eae02d1e7b8f76d625"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a4ee777ba961557d8e0bc39c15e749a6e"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a4ee777ba961557d8e0bc39c15e749a6e">Slice</a> (const void *buf, size_t len, <a class="el" href="classgrpc_1_1_slice.html#a61a6b4f8f10e5b90a99a5d09b8fdc498">StaticSlice</a>)</td></tr>
- <tr class="memdesc:a4ee777ba961557d8e0bc39c15e749a6e"><td class="mdescLeft"> </td><td class="mdescRight">Construct a slice from a static buffer. <a href="classgrpc_1_1_slice.html#a4ee777ba961557d8e0bc39c15e749a6e">More...</a><br /></td></tr>
- <tr class="separator:a4ee777ba961557d8e0bc39c15e749a6e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0a6b936d72f7ae35f083d003d3e0c8a3"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a0a6b936d72f7ae35f083d003d3e0c8a3">Slice</a> (const <a class="el" href="classgrpc_1_1_slice.html">Slice</a> &other)</td></tr>
- <tr class="memdesc:a0a6b936d72f7ae35f083d003d3e0c8a3"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor, adds a reference. <a href="classgrpc_1_1_slice.html#a0a6b936d72f7ae35f083d003d3e0c8a3">More...</a><br /></td></tr>
- <tr class="separator:a0a6b936d72f7ae35f083d003d3e0c8a3"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac5a109779239ed4d3fd58e8124abdba1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_slice.html">Slice</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1">operator=</a> (<a class="el" href="classgrpc_1_1_slice.html">Slice</a> other)</td></tr>
- <tr class="memdesc:ac5a109779239ed4d3fd58e8124abdba1"><td class="mdescLeft"> </td><td class="mdescRight">Assignment, reference count is unchanged. <a href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1">More...</a><br /></td></tr>
- <tr class="separator:ac5a109779239ed4d3fd58e8124abdba1"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a4168ed1092cd945f605335ab3081b3d9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a4168ed1092cd945f605335ab3081b3d9">Slice</a> (void *buf, size_t len, void(*destroy)(void *), void *user_data)</td></tr>
- <tr class="memdesc:a4168ed1092cd945f605335ab3081b3d9"><td class="mdescLeft"> </td><td class="mdescRight">Create a slice pointing at some data. <a href="classgrpc_1_1_slice.html#a4168ed1092cd945f605335ab3081b3d9">More...</a><br /></td></tr>
- <tr class="separator:a4168ed1092cd945f605335ab3081b3d9"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:abb151a6538ee47812bbe0e98330c799e"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#abb151a6538ee47812bbe0e98330c799e">Slice</a> (void *buf, size_t len, void(*destroy)(void *))</td></tr>
- <tr class="memdesc:abb151a6538ee47812bbe0e98330c799e"><td class="mdescLeft"> </td><td class="mdescRight">Specialization of above for common case where buf == user_data. <a href="classgrpc_1_1_slice.html#abb151a6538ee47812bbe0e98330c799e">More...</a><br /></td></tr>
- <tr class="separator:abb151a6538ee47812bbe0e98330c799e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa015b3afa75bc3238c5e68147e4e3020"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#aa015b3afa75bc3238c5e68147e4e3020">Slice</a> (void *buf, size_t len, void(*destroy)(void *, size_t))</td></tr>
- <tr class="memdesc:aa015b3afa75bc3238c5e68147e4e3020"><td class="mdescLeft"> </td><td class="mdescRight">Similar to the above but has a destroy that also takes slice length. <a href="classgrpc_1_1_slice.html#aa015b3afa75bc3238c5e68147e4e3020">More...</a><br /></td></tr>
- <tr class="separator:aa015b3afa75bc3238c5e68147e4e3020"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad8f27d67bfd312e1e14852f12b1cc771"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ad8f27d67bfd312e1e14852f12b1cc771">size</a> () const</td></tr>
- <tr class="memdesc:ad8f27d67bfd312e1e14852f12b1cc771"><td class="mdescLeft"> </td><td class="mdescRight">Byte size. <a href="classgrpc_1_1_slice.html#ad8f27d67bfd312e1e14852f12b1cc771">More...</a><br /></td></tr>
- <tr class="separator:ad8f27d67bfd312e1e14852f12b1cc771"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7fa32ed80c3ec50f7d9b4091b76e75a2"><td class="memItemLeft" align="right" valign="top">const uint8_t * </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a7fa32ed80c3ec50f7d9b4091b76e75a2">begin</a> () const</td></tr>
- <tr class="memdesc:a7fa32ed80c3ec50f7d9b4091b76e75a2"><td class="mdescLeft"> </td><td class="mdescRight">Raw pointer to the beginning (first element) of the slice. <a href="classgrpc_1_1_slice.html#a7fa32ed80c3ec50f7d9b4091b76e75a2">More...</a><br /></td></tr>
- <tr class="separator:a7fa32ed80c3ec50f7d9b4091b76e75a2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aef41f22bb05ade877e03eeb713bce638"><td class="memItemLeft" align="right" valign="top">const uint8_t * </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#aef41f22bb05ade877e03eeb713bce638">end</a> () const</td></tr>
- <tr class="memdesc:aef41f22bb05ade877e03eeb713bce638"><td class="mdescLeft"> </td><td class="mdescRight">Raw pointer to the end (one byte <em>past</em> the last element) of the slice. <a href="classgrpc_1_1_slice.html#aef41f22bb05ade877e03eeb713bce638">More...</a><br /></td></tr>
- <tr class="separator:aef41f22bb05ade877e03eeb713bce638"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa9588693e5faffee49e16fd82956f352"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__slice.html">grpc_slice</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#aa9588693e5faffee49e16fd82956f352">c_slice</a> () const</td></tr>
- <tr class="memdesc:aa9588693e5faffee49e16fd82956f352"><td class="mdescLeft"> </td><td class="mdescRight">Raw C slice. Caller needs to call grpc_slice_unref when done. <a href="classgrpc_1_1_slice.html#aa9588693e5faffee49e16fd82956f352">More...</a><br /></td></tr>
- <tr class="separator:aa9588693e5faffee49e16fd82956f352"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
- Friends</h2></td></tr>
- <tr class="memitem:ac6c83f28f4b17ae317094a794e92e99e"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ac6c83f28f4b17ae317094a794e92e99e">ByteBuffer</a></td></tr>
- <tr class="separator:ac6c83f28f4b17ae317094a794e92e99e"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><p>A wrapper around <em><a class="el" href="structgrpc__slice.html" title="A grpc_slice s, if initialized, represents the byte range s.bytes[0..s.length-1].">grpc_slice</a></em>. </p>
- <p>A slice represents a contiguous reference counted array of bytes. It is cheap to take references to a slice, and it is cheap to create a slice pointing to a subset of another slice. </p>
- </div><h2 class="groupheader">Member Enumeration Documentation</h2>
- <a id="ac1e8469bbb6dfa9ab9e646e0b48f5fe2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">◆ </a></span>AddRef</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">enum <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">grpc::Slice::AddRef</a></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <table class="fieldtable">
- <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2"></a>ADD_REF </td><td class="fielddoc"></td></tr>
- </table>
- </div>
- </div>
- <a id="a61a6b4f8f10e5b90a99a5d09b8fdc498"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a61a6b4f8f10e5b90a99a5d09b8fdc498">◆ </a></span>StaticSlice</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">enum <a class="el" href="classgrpc_1_1_slice.html#a61a6b4f8f10e5b90a99a5d09b8fdc498">grpc::Slice::StaticSlice</a></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <table class="fieldtable">
- <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a61a6b4f8f10e5b90a99a5d09b8fdc498a162100d1059f54ba91c6803865effe10"></a>STATIC_SLICE </td><td class="fielddoc"></td></tr>
- </table>
- </div>
- </div>
- <a id="a13fbbec0e9121a8b948d563f9730d75a"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a13fbbec0e9121a8b948d563f9730d75a">◆ </a></span>StealRef</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">enum <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">grpc::Slice::StealRef</a></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <table class="fieldtable">
- <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7"></a>STEAL_REF </td><td class="fielddoc"></td></tr>
- </table>
- </div>
- </div>
- <h2 class="groupheader">Constructor & Destructor Documentation</h2>
- <a id="a8c5179cf7a39f66d65887bf298dc548f"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a8c5179cf7a39f66d65887bf298dc548f">◆ </a></span>Slice() <span class="overload">[1/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Construct an empty slice. </p>
- </div>
- </div>
- <a id="a1f89af608ad9e5bbc2870d4ee7140c94"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a1f89af608ad9e5bbc2870d4ee7140c94">◆ </a></span>~Slice()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::~Slice </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Destructor - drops one reference. </p>
- </div>
- </div>
- <a id="a5e3c4a94b5de9e66f2328039233e3873"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a5e3c4a94b5de9e66f2328039233e3873">◆ </a></span>Slice() <span class="overload">[2/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structgrpc__slice.html">grpc_slice</a> </td>
- <td class="paramname"><em>slice</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a> </td>
- <td class="paramname"> </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> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Construct a slice from <em>slice</em>, adding a reference. </p>
- </div>
- </div>
- <a id="af3fece4a2e6c2be33631c295c5ea3418"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af3fece4a2e6c2be33631c295c5ea3418">◆ </a></span>Slice() <span class="overload">[3/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structgrpc__slice.html">grpc_slice</a> </td>
- <td class="paramname"><em>slice</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a> </td>
- <td class="paramname"> </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> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Construct a slice from <em>slice</em>, stealing a reference. </p>
- </div>
- </div>
- <a id="ac7fd05a7ad8edb55c163b544e7878bf9"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac7fd05a7ad8edb55c163b544e7878bf9">◆ </a></span>Slice() <span class="overload">[4/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>len</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Allocate a slice of specified size. </p>
- </div>
- </div>
- <a id="ad180398d3b0a83a1c8fbff9aed4aff48"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ad180398d3b0a83a1c8fbff9aed4aff48">◆ </a></span>Slice() <span class="overload">[5/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">const void * </td>
- <td class="paramname"><em>buf</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>len</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> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Construct a slice from a copied buffer. </p>
- </div>
- </div>
- <a id="a0fe7abc158b542eae02d1e7b8f76d625"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a0fe7abc158b542eae02d1e7b8f76d625">◆ </a></span>Slice() <span class="overload">[6/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">const std::string & </td>
- <td class="paramname"><em>str</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Construct a slice from a copied string. </p>
- </div>
- </div>
- <a id="a4ee777ba961557d8e0bc39c15e749a6e"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a4ee777ba961557d8e0bc39c15e749a6e">◆ </a></span>Slice() <span class="overload">[7/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">const void * </td>
- <td class="paramname"><em>buf</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>len</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_slice.html#a61a6b4f8f10e5b90a99a5d09b8fdc498">StaticSlice</a> </td>
- <td class="paramname"> </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> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Construct a slice from a static buffer. </p>
- </div>
- </div>
- <a id="a0a6b936d72f7ae35f083d003d3e0c8a3"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a0a6b936d72f7ae35f083d003d3e0c8a3">◆ </a></span>Slice() <span class="overload">[8/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgrpc_1_1_slice.html">Slice</a> & </td>
- <td class="paramname"><em>other</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Copy constructor, adds a reference. </p>
- </div>
- </div>
- <a id="a4168ed1092cd945f605335ab3081b3d9"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a4168ed1092cd945f605335ab3081b3d9">◆ </a></span>Slice() <span class="overload">[9/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>buf</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>len</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">void(*)(void *) </td>
- <td class="paramname"><em>destroy</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>user_data</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> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Create a slice pointing at some data. </p>
- <p>Calls malloc to allocate a refcount for the object, and arranges that destroy will be called with the user data pointer passed in at destruction. Can be the same as buf or different (e.g., if data is part of a larger structure that must be destroyed when the data is no longer needed) </p>
- </div>
- </div>
- <a id="abb151a6538ee47812bbe0e98330c799e"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#abb151a6538ee47812bbe0e98330c799e">◆ </a></span>Slice() <span class="overload">[10/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>buf</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>len</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">void(*)(void *) </td>
- <td class="paramname"><em>destroy</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> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Specialization of above for common case where buf == user_data. </p>
- </div>
- </div>
- <a id="aa015b3afa75bc3238c5e68147e4e3020"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa015b3afa75bc3238c5e68147e4e3020">◆ </a></span>Slice() <span class="overload">[11/11]</span></h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Slice::Slice </td>
- <td>(</td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>buf</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>len</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">void(*)(void *, size_t) </td>
- <td class="paramname"><em>destroy</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> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Similar to the above but has a destroy that also takes slice length. </p>
- </div>
- </div>
- <h2 class="groupheader">Member Function Documentation</h2>
- <a id="a7fa32ed80c3ec50f7d9b4091b76e75a2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a7fa32ed80c3ec50f7d9b4091b76e75a2">◆ </a></span>begin()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">const uint8_t* grpc::Slice::begin </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Raw pointer to the beginning (first element) of the slice. </p>
- </div>
- </div>
- <a id="aa9588693e5faffee49e16fd82956f352"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa9588693e5faffee49e16fd82956f352">◆ </a></span>c_slice()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="structgrpc__slice.html">grpc_slice</a> grpc::Slice::c_slice </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Raw C slice. Caller needs to call grpc_slice_unref when done. </p>
- </div>
- </div>
- <a id="aef41f22bb05ade877e03eeb713bce638"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aef41f22bb05ade877e03eeb713bce638">◆ </a></span>end()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">const uint8_t* grpc::Slice::end </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Raw pointer to the end (one byte <em>past</em> the last element) of the slice. </p>
- </div>
- </div>
- <a id="ac5a109779239ed4d3fd58e8124abdba1"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac5a109779239ed4d3fd58e8124abdba1">◆ </a></span>operator=()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgrpc_1_1_slice.html">Slice</a>& grpc::Slice::operator= </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_slice.html">Slice</a> </td>
- <td class="paramname"><em>other</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Assignment, reference count is unchanged. </p>
- </div>
- </div>
- <a id="ad8f27d67bfd312e1e14852f12b1cc771"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ad8f27d67bfd312e1e14852f12b1cc771">◆ </a></span>size()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">size_t grpc::Slice::size </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Byte size. </p>
- </div>
- </div>
- <h2 class="groupheader">Friends And Related Function Documentation</h2>
- <a id="ac6c83f28f4b17ae317094a794e92e99e"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac6c83f28f4b17ae317094a794e92e99e">◆ </a></span>ByteBuffer</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">friend class <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">friend</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- </div>
- </div>
- <hr/>The documentation for this class was generated from the following file:<ul>
- <li>include/grpcpp/impl/codegen/<a class="el" href="grpcpp_2impl_2codegen_2slice_8h_source.html">slice.h</a></li>
- </ul>
- </div><!-- contents -->
- <!-- start footer part -->
- <hr class="footer"/><address class="footer"><small>
- Generated on Wed Mar 3 2021 19:17:25 for GRPC C++ by  <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/>
- </a> 1.8.17
- </small></address>
- </body>
- </html>
|