namespacegrpc_1_1internal.html 68 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  6. <meta name="generator" content="Doxygen 1.8.17"/>
  7. <meta name="viewport" content="width=device-width, initial-scale=1"/>
  8. <title>GRPC C++: grpc::internal Namespace Reference</title>
  9. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  10. <script type="text/javascript" src="jquery.js"></script>
  11. <script type="text/javascript" src="dynsections.js"></script>
  12. <link href="search/search.css" rel="stylesheet" type="text/css"/>
  13. <script type="text/javascript" src="search/searchdata.js"></script>
  14. <script type="text/javascript" src="search/search.js"></script>
  15. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  16. </head>
  17. <body>
  18. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  19. <div id="titlearea">
  20. <table cellspacing="0" cellpadding="0">
  21. <tbody>
  22. <tr style="height: 56px;">
  23. <td id="projectalign" style="padding-left: 0.5em;">
  24. <div id="projectname">GRPC C++
  25. &#160;<span id="projectnumber">1.36.1</span>
  26. </div>
  27. </td>
  28. </tr>
  29. </tbody>
  30. </table>
  31. </div>
  32. <!-- end header part -->
  33. <!-- Generated by Doxygen 1.8.17 -->
  34. <script type="text/javascript">
  35. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  36. var searchBox = new SearchBox("searchBox", "search",false,'Search');
  37. /* @license-end */
  38. </script>
  39. <script type="text/javascript" src="menudata.js"></script>
  40. <script type="text/javascript" src="menu.js"></script>
  41. <script type="text/javascript">
  42. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  43. $(function() {
  44. initMenu('',true,false,'search.php','Search');
  45. $(document).ready(function() { init_search(); });
  46. });
  47. /* @license-end */</script>
  48. <div id="main-nav"></div>
  49. <!-- window showing the filter options -->
  50. <div id="MSearchSelectWindow"
  51. onmouseover="return searchBox.OnSearchSelectShow()"
  52. onmouseout="return searchBox.OnSearchSelectHide()"
  53. onkeydown="return searchBox.OnSearchSelectKey(event)">
  54. </div>
  55. <!-- iframe showing the search results (closed by default) -->
  56. <div id="MSearchResultsWindow">
  57. <iframe src="javascript:void(0)" frameborder="0"
  58. name="MSearchResults" id="MSearchResults">
  59. </iframe>
  60. </div>
  61. <div id="nav-path" class="navpath">
  62. <ul>
  63. <li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1internal.html">internal</a></li> </ul>
  64. </div>
  65. </div><!-- top -->
  66. <div class="header">
  67. <div class="summary">
  68. <a href="#nested-classes">Data Structures</a> &#124;
  69. <a href="#typedef-members">Typedefs</a> &#124;
  70. <a href="#func-members">Functions</a> &#124;
  71. <a href="#var-members">Variables</a> </div>
  72. <div class="headertitle">
  73. <div class="title">grpc::internal Namespace Reference</div> </div>
  74. </div><!--header-->
  75. <div class="contents">
  76. <p>Models a gRPC server.
  77. <a href="namespacegrpc_1_1internal.html#details">More...</a></p>
  78. <table class="memberdecls">
  79. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
  80. Data Structures</h2></td></tr>
  81. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_async_reader_interface.html">AsyncReaderInterface</a></td></tr>
  82. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An interface that yields a sequence of messages of type <em>R</em>. <a href="classgrpc_1_1internal_1_1_async_reader_interface.html#details">More...</a><br /></td></tr>
  83. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  84. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_async_writer_interface.html">AsyncWriterInterface</a></td></tr>
  85. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An interface that can be fed a sequence of messages of type <em>W</em>. <a href="classgrpc_1_1internal_1_1_async_writer_interface.html#details">More...</a><br /></td></tr>
  86. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  87. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a></td></tr>
  88. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  89. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_blocking_unary_call_impl.html">BlockingUnaryCallImpl</a></td></tr>
  90. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  91. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call.html">Call</a></td></tr>
  92. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Straightforward wrapping of the C call object. <a href="classgrpc_1_1internal_1_1_call.html#details">More...</a><br /></td></tr>
  93. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  94. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_callback_bidi_handler.html">CallbackBidiHandler</a></td></tr>
  95. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  96. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_callback_client_streaming_handler.html">CallbackClientStreamingHandler</a></td></tr>
  97. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  98. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_callback_server_streaming_handler.html">CallbackServerStreamingHandler</a></td></tr>
  99. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  100. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_callback_unary_call_impl.html">CallbackUnaryCallImpl</a></td></tr>
  101. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  102. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_callback_unary_handler.html">CallbackUnaryHandler</a></td></tr>
  103. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  104. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_callback_with_status_tag.html">CallbackWithStatusTag</a></td></tr>
  105. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  106. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_callback_with_success_tag.html">CallbackWithSuccessTag</a></td></tr>
  107. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classgrpc_1_1internal_1_1_callback_with_success_tag.html" title="CallbackWithSuccessTag can be reused multiple times, and will be used in this fashion for streaming o...">CallbackWithSuccessTag</a> can be reused multiple times, and will be used in this fashion for streaming operations. <a href="classgrpc_1_1internal_1_1_callback_with_success_tag.html#details">More...</a><br /></td></tr>
  108. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  109. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_hook.html">CallHook</a></td></tr>
  110. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is an interface that <a class="el" href="classgrpc_1_1_channel.html" title="Channels represent a connection to an endpoint. Created by CreateChannel.">Channel</a> and <a class="el" href="classgrpc_1_1_server.html" title="Represents a gRPC server.">Server</a> implement to allow them to hook performing ops. <a href="classgrpc_1_1internal_1_1_call_hook.html#details">More...</a><br /></td></tr>
  111. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  112. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_no_op.html">CallNoOp</a></td></tr>
  113. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default argument for <a class="el" href="classgrpc_1_1internal_1_1_call_op_set.html" title="Primary implementation of CallOpSetInterface.">CallOpSet</a>. <a href="classgrpc_1_1internal_1_1_call_no_op.html#details">More...</a><br /></td></tr>
  114. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  115. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a></td></tr>
  116. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  117. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_client_send_close.html">CallOpClientSendClose</a></td></tr>
  118. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  119. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_generic_recv_message.html">CallOpGenericRecvMessage</a></td></tr>
  120. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  121. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a></td></tr>
  122. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  123. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_recv_message.html">CallOpRecvMessage</a></td></tr>
  124. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  125. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a></td></tr>
  126. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  127. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_send_message.html">CallOpSendMessage</a></td></tr>
  128. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  129. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_server_send_status.html">CallOpServerSendStatus</a></td></tr>
  130. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  131. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_set.html">CallOpSet</a></td></tr>
  132. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Primary implementation of <a class="el" href="classgrpc_1_1internal_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a>. <a href="classgrpc_1_1internal_1_1_call_op_set.html#details">More...</a><br /></td></tr>
  133. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  134. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_op_set_interface.html">CallOpSetInterface</a></td></tr>
  135. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the lower layers, and as it is-a <a class="el" href="classgrpc_1_1internal_1_1_completion_queue_tag.html" title="An interface allowing implementors to process and filter event tags.">CompletionQueueTag</a>, also massages the final completion into the correct form for consumption in the C++ API. <a href="classgrpc_1_1internal_1_1_call_op_set_interface.html#details">More...</a><br /></td></tr>
  136. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  137. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_cancel_interceptor_batch_methods.html">CancelInterceptorBatchMethods</a></td></tr>
  138. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  139. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_async_reader_factory.html">ClientAsyncReaderFactory</a></td></tr>
  140. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  141. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_async_reader_writer_factory.html">ClientAsyncReaderWriterFactory</a></td></tr>
  142. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  143. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_async_response_reader_factory.html">ClientAsyncResponseReaderFactory</a></td></tr>
  144. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  145. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_async_response_reader_helper.html">ClientAsyncResponseReaderHelper</a></td></tr>
  146. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  147. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a></td></tr>
  148. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all client side asynchronous streaming. <a href="classgrpc_1_1internal_1_1_client_async_streaming_interface.html#details">More...</a><br /></td></tr>
  149. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  150. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_async_writer_factory.html">ClientAsyncWriterFactory</a></td></tr>
  151. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  152. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_reader_factory.html">ClientCallbackReaderFactory</a></td></tr>
  153. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  154. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_reader_impl.html">ClientCallbackReaderImpl</a></td></tr>
  155. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  156. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_reader_writer_factory.html">ClientCallbackReaderWriterFactory</a></td></tr>
  157. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  158. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_reader_writer_impl.html">ClientCallbackReaderWriterImpl</a></td></tr>
  159. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  160. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_unary_factory.html">ClientCallbackUnaryFactory</a></td></tr>
  161. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  162. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_unary_impl.html">ClientCallbackUnaryImpl</a></td></tr>
  163. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  164. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_writer_factory.html">ClientCallbackWriterFactory</a></td></tr>
  165. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  166. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_callback_writer_impl.html">ClientCallbackWriterImpl</a></td></tr>
  167. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  168. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_reactor.html">ClientReactor</a></td></tr>
  169. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  170. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_reader_factory.html">ClientReaderFactory</a></td></tr>
  171. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  172. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_reader_writer_factory.html">ClientReaderWriterFactory</a></td></tr>
  173. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  174. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_streaming_handler.html">ClientStreamingHandler</a></td></tr>
  175. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A wrapper class of an application provided client streaming handler. <a href="classgrpc_1_1internal_1_1_client_streaming_handler.html#details">More...</a><br /></td></tr>
  176. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  177. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_streaming_interface.html">ClientStreamingInterface</a></td></tr>
  178. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all synchronous client side streaming. <a href="classgrpc_1_1internal_1_1_client_streaming_interface.html#details">More...</a><br /></td></tr>
  179. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  180. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_client_writer_factory.html">ClientWriterFactory</a></td></tr>
  181. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  182. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_completion_queue_tag.html">CompletionQueueTag</a></td></tr>
  183. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An interface allowing implementors to process and filter event tags. <a href="classgrpc_1_1internal_1_1_completion_queue_tag.html#details">More...</a><br /></td></tr>
  184. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  185. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_cond_var.html">CondVar</a></td></tr>
  186. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  187. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_default_message_holder.html">DefaultMessageHolder</a></td></tr>
  188. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  189. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_deserialize_func.html">DeserializeFunc</a></td></tr>
  190. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  191. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_deserialize_func_type.html">DeserializeFuncType</a></td></tr>
  192. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  193. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_error_method_handler.html">ErrorMethodHandler</a></td></tr>
  194. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">General method handler class for errors that prevent real method use e.g., handle unknown method by returning UNIMPLEMENTED error. <a href="classgrpc_1_1internal_1_1_error_method_handler.html#details">More...</a><br /></td></tr>
  195. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  196. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a></td></tr>
  197. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  198. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_grpc_library.html">GrpcLibrary</a></td></tr>
  199. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  200. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_grpc_library_initializer.html">GrpcLibraryInitializer</a></td></tr>
  201. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Instantiating this class ensures the proper initialization of gRPC. <a href="classgrpc_1_1internal_1_1_grpc_library_initializer.html#details">More...</a><br /></td></tr>
  202. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  203. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_intercepted_channel.html">InterceptedChannel</a></td></tr>
  204. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An <a class="el" href="classgrpc_1_1internal_1_1_intercepted_channel.html" title="An InterceptedChannel is available to client Interceptors.">InterceptedChannel</a> is available to client Interceptors. <a href="classgrpc_1_1internal_1_1_intercepted_channel.html#details">More...</a><br /></td></tr>
  205. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  206. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_interceptor_batch_methods_impl.html">InterceptorBatchMethodsImpl</a></td></tr>
  207. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  208. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_metadata_map.html">MetadataMap</a></td></tr>
  209. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  210. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_method_handler.html">MethodHandler</a></td></tr>
  211. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base class for running an RPC handler. <a href="classgrpc_1_1internal_1_1_method_handler.html#details">More...</a><br /></td></tr>
  212. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  213. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_mutex.html">Mutex</a></td></tr>
  214. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  215. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_mutex_lock.html">MutexLock</a></td></tr>
  216. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  217. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_reader_interface.html">ReaderInterface</a></td></tr>
  218. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An interface that yields a sequence of messages of type <em>R</em>. <a href="classgrpc_1_1internal_1_1_reader_interface.html#details">More...</a><br /></td></tr>
  219. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  220. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_releasable_mutex_lock.html">ReleasableMutexLock</a></td></tr>
  221. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  222. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_rpc_method.html">RpcMethod</a></td></tr>
  223. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Descriptor of an RPC method. <a href="classgrpc_1_1internal_1_1_rpc_method.html#details">More...</a><br /></td></tr>
  224. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  225. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_rpc_method_handler.html">RpcMethodHandler</a></td></tr>
  226. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A wrapper class of an application provided rpc method handler. <a href="classgrpc_1_1internal_1_1_rpc_method_handler.html#details">More...</a><br /></td></tr>
  227. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  228. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_rpc_service_method.html">RpcServiceMethod</a></td></tr>
  229. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classgrpc_1_1_server.html" title="Represents a gRPC server.">Server</a> side rpc method class. <a href="classgrpc_1_1internal_1_1_rpc_service_method.html#details">More...</a><br /></td></tr>
  230. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  231. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a></td></tr>
  232. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  233. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_server_callback_call.html">ServerCallbackCall</a></td></tr>
  234. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base class of <a class="el" href="classgrpc_1_1_server_callback_unary.html">ServerCallbackUnary</a> etc. <a href="classgrpc_1_1internal_1_1_server_callback_call.html#details">More...</a><br /></td></tr>
  235. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  236. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_server_reactor.html">ServerReactor</a></td></tr>
  237. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  238. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_server_reader_writer_body.html">ServerReaderWriterBody</a></td></tr>
  239. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  240. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_server_streaming_handler.html">ServerStreamingHandler</a></td></tr>
  241. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A wrapper class of an application provided server streaming handler. <a href="classgrpc_1_1internal_1_1_server_streaming_handler.html#details">More...</a><br /></td></tr>
  242. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  243. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_server_streaming_interface.html">ServerStreamingInterface</a></td></tr>
  244. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common interface for all synchronous server side streaming. <a href="classgrpc_1_1internal_1_1_server_streaming_interface.html#details">More...</a><br /></td></tr>
  245. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  246. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_split_server_streaming_handler.html">SplitServerStreamingHandler</a></td></tr>
  247. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  248. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_streamed_unary_handler.html">StreamedUnaryHandler</a></td></tr>
  249. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  250. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_templated_bidi_streaming_handler.html">TemplatedBidiStreamingHandler</a></td></tr>
  251. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A wrapper class of an application provided bidi-streaming handler. <a href="classgrpc_1_1internal_1_1_templated_bidi_streaming_handler.html#details">More...</a><br /></td></tr>
  252. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  253. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_writer_interface.html">WriterInterface</a></td></tr>
  254. <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An interface that can be fed a sequence of messages of type <em>W</em>. <a href="classgrpc_1_1internal_1_1_writer_interface.html#details">More...</a><br /></td></tr>
  255. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  256. </table><table class="memberdecls">
  257. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
  258. Typedefs</h2></td></tr>
  259. <tr class="memitem:a3250c63a838f38ab83d0eb58160a916f"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classgrpc_1_1internal_1_1_error_method_handler.html">ErrorMethodHandler</a>&lt;::grpc::StatusCode::UNIMPLEMENTED &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a3250c63a838f38ab83d0eb58160a916f">UnknownMethodHandler</a></td></tr>
  260. <tr class="separator:a3250c63a838f38ab83d0eb58160a916f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  261. <tr class="memitem:a163cdb9d1724e049f3370a4501475938"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classgrpc_1_1internal_1_1_error_method_handler.html">ErrorMethodHandler</a>&lt;::grpc::StatusCode::RESOURCE_EXHAUSTED &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a163cdb9d1724e049f3370a4501475938">ResourceExhaustedHandler</a></td></tr>
  262. <tr class="separator:a163cdb9d1724e049f3370a4501475938"><td class="memSeparator" colspan="2">&#160;</td></tr>
  263. <tr class="memitem:ae958c1306bc082dacba2f7751337132d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#ae958c1306bc082dacba2f7751337132d">UnimplementedUnaryReactor</a> = <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt; <a class="el" href="classgrpc_1_1_server_unary_reactor.html">ServerUnaryReactor</a> &gt;</td></tr>
  264. <tr class="separator:ae958c1306bc082dacba2f7751337132d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  265. <tr class="memitem:a5bdf276614c32502b64604f94c06fd6f"><td class="memTemplParams" colspan="2">template&lt;class Request &gt; </td></tr>
  266. <tr class="memitem:a5bdf276614c32502b64604f94c06fd6f"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a5bdf276614c32502b64604f94c06fd6f">UnimplementedReadReactor</a> = <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt; <a class="el" href="classgrpc_1_1_server_read_reactor.html">ServerReadReactor</a>&lt; Request &gt; &gt;</td></tr>
  267. <tr class="separator:a5bdf276614c32502b64604f94c06fd6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  268. <tr class="memitem:ae544287ea3c93d523d21dfa3320ed46d"><td class="memTemplParams" colspan="2">template&lt;class Response &gt; </td></tr>
  269. <tr class="memitem:ae544287ea3c93d523d21dfa3320ed46d"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#ae544287ea3c93d523d21dfa3320ed46d">UnimplementedWriteReactor</a> = <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt; <a class="el" href="classgrpc_1_1_server_write_reactor.html">ServerWriteReactor</a>&lt; Response &gt; &gt;</td></tr>
  270. <tr class="separator:ae544287ea3c93d523d21dfa3320ed46d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  271. <tr class="memitem:a8460a0e2c6892295a5510e9d285297a7"><td class="memTemplParams" colspan="2">template&lt;class Request , class Response &gt; </td></tr>
  272. <tr class="memitem:a8460a0e2c6892295a5510e9d285297a7"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a8460a0e2c6892295a5510e9d285297a7">UnimplementedBidiReactor</a> = <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt; <a class="el" href="classgrpc_1_1_server_bidi_reactor.html">ServerBidiReactor</a>&lt; Request, Response &gt; &gt;</td></tr>
  273. <tr class="separator:a8460a0e2c6892295a5510e9d285297a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  274. </table><table class="memberdecls">
  275. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
  276. Functions</h2></td></tr>
  277. <tr class="memitem:a880688aa33263954a48b10e1b6b7d531"><td class="memTemplParams" colspan="2">template&lt;class RequestType &gt; </td></tr>
  278. <tr class="memitem:a880688aa33263954a48b10e1b6b7d531"><td class="memTemplItemLeft" align="right" valign="top">void *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a880688aa33263954a48b10e1b6b7d531">UnaryDeserializeHelper</a> (<a class="el" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call, <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *req, ::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a> *status, RequestType *request)</td></tr>
  279. <tr class="memdesc:a880688aa33263954a48b10e1b6b7d531"><td class="mdescLeft">&#160;</td><td class="mdescRight">A helper function with reduced templating to do deserializing. <a href="namespacegrpc_1_1internal.html#a880688aa33263954a48b10e1b6b7d531">More...</a><br /></td></tr>
  280. <tr class="separator:a880688aa33263954a48b10e1b6b7d531"><td class="memSeparator" colspan="2">&#160;</td></tr>
  281. <tr class="memitem:afe335baaab1295b3bcab679d94cc3b1f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__metadata.html">grpc_metadata</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#afe335baaab1295b3bcab679d94cc3b1f">FillMetadataArray</a> (const std::multimap&lt; std::string, std::string &gt; &amp;metadata, size_t *metadata_count, const std::string &amp;optional_error_details)</td></tr>
  282. <tr class="separator:afe335baaab1295b3bcab679d94cc3b1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  283. <tr class="memitem:a161ad876dc2d4fea93dd8260a7b9b0ae"><td class="memTemplParams" colspan="2">template&lt;class Func , class... Args&gt; </td></tr>
  284. <tr class="memitem:a161ad876dc2d4fea93dd8260a7b9b0ae"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a161ad876dc2d4fea93dd8260a7b9b0ae">CatchingCallback</a> (Func &amp;&amp;func, Args &amp;&amp;... args)</td></tr>
  285. <tr class="memdesc:a161ad876dc2d4fea93dd8260a7b9b0ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">An exception-safe way of invoking a user-specified callback function. <a href="namespacegrpc_1_1internal.html#a161ad876dc2d4fea93dd8260a7b9b0ae">More...</a><br /></td></tr>
  286. <tr class="separator:a161ad876dc2d4fea93dd8260a7b9b0ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
  287. <tr class="memitem:a7015d612ccec586d33e7afb77e8e515e"><td class="memTemplParams" colspan="2">template&lt;class Reactor , class Func , class... Args&gt; </td></tr>
  288. <tr class="memitem:a7015d612ccec586d33e7afb77e8e515e"><td class="memTemplItemLeft" align="right" valign="top">Reactor *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a7015d612ccec586d33e7afb77e8e515e">CatchingReactorGetter</a> (Func &amp;&amp;func, Args &amp;&amp;... args)</td></tr>
  289. <tr class="separator:a7015d612ccec586d33e7afb77e8e515e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  290. <tr class="memitem:a735b6dbd062f455fc2c571e7ef49852d"><td class="memTemplParams" colspan="2">template&lt;class InputMessage , class OutputMessage , class BaseInputMessage = InputMessage, class BaseOutputMessage = OutputMessage&gt; </td></tr>
  291. <tr class="memitem:a735b6dbd062f455fc2c571e7ef49852d"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a735b6dbd062f455fc2c571e7ef49852d">CallbackUnaryCall</a> (::<a class="el" href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a> *channel, const ::<a class="el" href="classgrpc_1_1internal_1_1_rpc_method.html">grpc::internal::RpcMethod</a> &amp;method, ::<a class="el" href="classgrpc_1_1_client_context.html">grpc::ClientContext</a> *context, const InputMessage *request, OutputMessage *result, std::function&lt; void(::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a>)&gt; on_completion)</td></tr>
  292. <tr class="memdesc:a735b6dbd062f455fc2c571e7ef49852d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform a callback-based unary call. <a href="namespacegrpc_1_1internal.html#a735b6dbd062f455fc2c571e7ef49852d">More...</a><br /></td></tr>
  293. <tr class="separator:a735b6dbd062f455fc2c571e7ef49852d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  294. <tr class="memitem:a997ff44cb7bf8240626c3da1a1ddd7c9"><td class="memTemplParams" colspan="2">template&lt;class InputMessage , class OutputMessage , class BaseInputMessage = InputMessage, class BaseOutputMessage = OutputMessage&gt; </td></tr>
  295. <tr class="memitem:a997ff44cb7bf8240626c3da1a1ddd7c9"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a997ff44cb7bf8240626c3da1a1ddd7c9">BlockingUnaryCall</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, const <a class="el" href="classgrpc_1_1internal_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">grpc::ClientContext</a> *context, const InputMessage &amp;request, OutputMessage *result)</td></tr>
  296. <tr class="memdesc:a997ff44cb7bf8240626c3da1a1ddd7c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrapper that performs a blocking unary call. <a href="namespacegrpc_1_1internal.html#a997ff44cb7bf8240626c3da1a1ddd7c9">More...</a><br /></td></tr>
  297. <tr class="separator:a997ff44cb7bf8240626c3da1a1ddd7c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  298. <tr class="memitem:ada25a94a916a04aa100b5f4bea4996e7"><td class="memTemplParams" colspan="2">template&lt;class ResponseType &gt; </td></tr>
  299. <tr class="memitem:ada25a94a916a04aa100b5f4bea4996e7"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#ada25a94a916a04aa100b5f4bea4996e7">UnaryRunHandlerHelper</a> (const ::<a class="el" href="structgrpc_1_1internal_1_1_method_handler_1_1_handler_parameter.html">grpc::internal::MethodHandler::HandlerParameter</a> &amp;, ResponseType *, ::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a> &amp;)</td></tr>
  300. <tr class="separator:ada25a94a916a04aa100b5f4bea4996e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  301. <tr class="memitem:ad4821faf2ca99439a11458d52ce9717d"><td class="memTemplParams" colspan="2">template&lt;class Callable &gt; </td></tr>
  302. <tr class="memitem:ad4821faf2ca99439a11458d52ce9717d"><td class="memTemplItemLeft" align="right" valign="top">::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#ad4821faf2ca99439a11458d52ce9717d">CatchingFunctionHandler</a> (Callable &amp;&amp;handler)</td></tr>
  303. <tr class="separator:ad4821faf2ca99439a11458d52ce9717d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  304. <tr class="memitem:a0b8ec49b9281d00bf216512eef67aced"><td class="memTemplParams" colspan="2">template&lt;class ResponseType &gt; </td></tr>
  305. <tr class="memitem:a0b8ec49b9281d00bf216512eef67aced"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a0b8ec49b9281d00bf216512eef67aced">UnaryRunHandlerHelper</a> (const <a class="el" href="structgrpc_1_1internal_1_1_method_handler_1_1_handler_parameter.html">MethodHandler::HandlerParameter</a> &amp;param, ResponseType *rsp, ::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a> &amp;status)</td></tr>
  306. <tr class="memdesc:a0b8ec49b9281d00bf216512eef67aced"><td class="mdescLeft">&#160;</td><td class="mdescRight">A helper function with reduced templating to do the common work needed to actually send the server response. <a href="namespacegrpc_1_1internal.html#a0b8ec49b9281d00bf216512eef67aced">More...</a><br /></td></tr>
  307. <tr class="separator:a0b8ec49b9281d00bf216512eef67aced"><td class="memSeparator" colspan="2">&#160;</td></tr>
  308. <tr class="memitem:a3a0fef6f7e41c25a02c5e1ac32e6cc13"><td class="memTemplParams" colspan="2">template&lt;class ResponseType &gt; </td></tr>
  309. <tr class="memitem:a3a0fef6f7e41c25a02c5e1ac32e6cc13"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a3a0fef6f7e41c25a02c5e1ac32e6cc13">UnaryRunHandlerHelper</a> (const <a class="el" href="structgrpc_1_1internal_1_1_method_handler_1_1_handler_parameter.html">MethodHandler::HandlerParameter</a> &amp;, ResponseType *, <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;)</td></tr>
  310. <tr class="separator:a3a0fef6f7e41c25a02c5e1ac32e6cc13"><td class="memSeparator" colspan="2">&#160;</td></tr>
  311. </table><table class="memberdecls">
  312. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
  313. Variables</h2></td></tr>
  314. <tr class="memitem:a6d0efed83b2ed7bd6f5b07e44ea3689e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1experimental_1_1_client_interceptor_factory_interface.html">experimental::ClientInterceptorFactoryInterface</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a6d0efed83b2ed7bd6f5b07e44ea3689e">g_global_client_interceptor_factory</a></td></tr>
  315. <tr class="separator:a6d0efed83b2ed7bd6f5b07e44ea3689e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  316. <tr class="memitem:a03c479d490933087ab7058153a50c4d8"><td class="memItemLeft" align="right" valign="top">const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1internal.html#a03c479d490933087ab7058153a50c4d8">kBinaryErrorDetailsKey</a> [] = &quot;grpc-status-details-bin&quot;</td></tr>
  317. <tr class="separator:a03c479d490933087ab7058153a50c4d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  318. </table>
  319. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  320. <div class="textblock"><p>Models a gRPC server. </p>
  321. <p>Actual implementation of bi-directional streaming.</p>
  322. <p>Servers are configured and started via <em><a class="el" href="classgrpc_1_1_server_builder.html" title="A builder class for the creation and startup of grpc::Server instances.">grpc::ServerBuilder</a></em>. </p>
  323. </div><h2 class="groupheader">Typedef Documentation</h2>
  324. <a id="a163cdb9d1724e049f3370a4501475938"></a>
  325. <h2 class="memtitle"><span class="permalink"><a href="#a163cdb9d1724e049f3370a4501475938">&#9670;&nbsp;</a></span>ResourceExhaustedHandler</h2>
  326. <div class="memitem">
  327. <div class="memproto">
  328. <table class="memname">
  329. <tr>
  330. <td class="memname">typedef <a class="el" href="classgrpc_1_1internal_1_1_error_method_handler.html">ErrorMethodHandler</a>&lt;::grpc::StatusCode::RESOURCE_EXHAUSTED&gt; <a class="el" href="namespacegrpc_1_1internal.html#a163cdb9d1724e049f3370a4501475938">grpc::internal::ResourceExhaustedHandler</a></td>
  331. </tr>
  332. </table>
  333. </div><div class="memdoc">
  334. </div>
  335. </div>
  336. <a id="a8460a0e2c6892295a5510e9d285297a7"></a>
  337. <h2 class="memtitle"><span class="permalink"><a href="#a8460a0e2c6892295a5510e9d285297a7">&#9670;&nbsp;</a></span>UnimplementedBidiReactor</h2>
  338. <div class="memitem">
  339. <div class="memproto">
  340. <div class="memtemplate">
  341. template&lt;class Request , class Response &gt; </div>
  342. <table class="memname">
  343. <tr>
  344. <td class="memname">using <a class="el" href="namespacegrpc_1_1internal.html#a8460a0e2c6892295a5510e9d285297a7">grpc::internal::UnimplementedBidiReactor</a> = typedef <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt;<a class="el" href="classgrpc_1_1_server_bidi_reactor.html">ServerBidiReactor</a>&lt;Request, Response&gt; &gt;</td>
  345. </tr>
  346. </table>
  347. </div><div class="memdoc">
  348. </div>
  349. </div>
  350. <a id="a5bdf276614c32502b64604f94c06fd6f"></a>
  351. <h2 class="memtitle"><span class="permalink"><a href="#a5bdf276614c32502b64604f94c06fd6f">&#9670;&nbsp;</a></span>UnimplementedReadReactor</h2>
  352. <div class="memitem">
  353. <div class="memproto">
  354. <div class="memtemplate">
  355. template&lt;class Request &gt; </div>
  356. <table class="memname">
  357. <tr>
  358. <td class="memname">using <a class="el" href="namespacegrpc_1_1internal.html#a5bdf276614c32502b64604f94c06fd6f">grpc::internal::UnimplementedReadReactor</a> = typedef <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt;<a class="el" href="classgrpc_1_1_server_read_reactor.html">ServerReadReactor</a>&lt;Request&gt; &gt;</td>
  359. </tr>
  360. </table>
  361. </div><div class="memdoc">
  362. </div>
  363. </div>
  364. <a id="ae958c1306bc082dacba2f7751337132d"></a>
  365. <h2 class="memtitle"><span class="permalink"><a href="#ae958c1306bc082dacba2f7751337132d">&#9670;&nbsp;</a></span>UnimplementedUnaryReactor</h2>
  366. <div class="memitem">
  367. <div class="memproto">
  368. <table class="memname">
  369. <tr>
  370. <td class="memname">using <a class="el" href="namespacegrpc_1_1internal.html#ae958c1306bc082dacba2f7751337132d">grpc::internal::UnimplementedUnaryReactor</a> = typedef <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt;<a class="el" href="classgrpc_1_1_server_unary_reactor.html">ServerUnaryReactor</a>&gt;</td>
  371. </tr>
  372. </table>
  373. </div><div class="memdoc">
  374. </div>
  375. </div>
  376. <a id="ae544287ea3c93d523d21dfa3320ed46d"></a>
  377. <h2 class="memtitle"><span class="permalink"><a href="#ae544287ea3c93d523d21dfa3320ed46d">&#9670;&nbsp;</a></span>UnimplementedWriteReactor</h2>
  378. <div class="memitem">
  379. <div class="memproto">
  380. <div class="memtemplate">
  381. template&lt;class Response &gt; </div>
  382. <table class="memname">
  383. <tr>
  384. <td class="memname">using <a class="el" href="namespacegrpc_1_1internal.html#ae544287ea3c93d523d21dfa3320ed46d">grpc::internal::UnimplementedWriteReactor</a> = typedef <a class="el" href="classgrpc_1_1internal_1_1_finish_only_reactor.html">FinishOnlyReactor</a>&lt;<a class="el" href="classgrpc_1_1_server_write_reactor.html">ServerWriteReactor</a>&lt;Response&gt; &gt;</td>
  385. </tr>
  386. </table>
  387. </div><div class="memdoc">
  388. </div>
  389. </div>
  390. <a id="a3250c63a838f38ab83d0eb58160a916f"></a>
  391. <h2 class="memtitle"><span class="permalink"><a href="#a3250c63a838f38ab83d0eb58160a916f">&#9670;&nbsp;</a></span>UnknownMethodHandler</h2>
  392. <div class="memitem">
  393. <div class="memproto">
  394. <table class="memname">
  395. <tr>
  396. <td class="memname">typedef <a class="el" href="classgrpc_1_1internal_1_1_error_method_handler.html">ErrorMethodHandler</a>&lt;::grpc::StatusCode::UNIMPLEMENTED&gt; <a class="el" href="namespacegrpc_1_1internal.html#a3250c63a838f38ab83d0eb58160a916f">grpc::internal::UnknownMethodHandler</a></td>
  397. </tr>
  398. </table>
  399. </div><div class="memdoc">
  400. </div>
  401. </div>
  402. <h2 class="groupheader">Function Documentation</h2>
  403. <a id="a997ff44cb7bf8240626c3da1a1ddd7c9"></a>
  404. <h2 class="memtitle"><span class="permalink"><a href="#a997ff44cb7bf8240626c3da1a1ddd7c9">&#9670;&nbsp;</a></span>BlockingUnaryCall()</h2>
  405. <div class="memitem">
  406. <div class="memproto">
  407. <div class="memtemplate">
  408. template&lt;class InputMessage , class OutputMessage , class BaseInputMessage = InputMessage, class BaseOutputMessage = OutputMessage&gt; </div>
  409. <table class="memname">
  410. <tr>
  411. <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::internal::BlockingUnaryCall </td>
  412. <td>(</td>
  413. <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
  414. <td class="paramname"><em>channel</em>, </td>
  415. </tr>
  416. <tr>
  417. <td class="paramkey"></td>
  418. <td></td>
  419. <td class="paramtype">const <a class="el" href="classgrpc_1_1internal_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
  420. <td class="paramname"><em>method</em>, </td>
  421. </tr>
  422. <tr>
  423. <td class="paramkey"></td>
  424. <td></td>
  425. <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">grpc::ClientContext</a> *&#160;</td>
  426. <td class="paramname"><em>context</em>, </td>
  427. </tr>
  428. <tr>
  429. <td class="paramkey"></td>
  430. <td></td>
  431. <td class="paramtype">const InputMessage &amp;&#160;</td>
  432. <td class="paramname"><em>request</em>, </td>
  433. </tr>
  434. <tr>
  435. <td class="paramkey"></td>
  436. <td></td>
  437. <td class="paramtype">OutputMessage *&#160;</td>
  438. <td class="paramname"><em>result</em>&#160;</td>
  439. </tr>
  440. <tr>
  441. <td></td>
  442. <td>)</td>
  443. <td></td><td></td>
  444. </tr>
  445. </table>
  446. </div><div class="memdoc">
  447. <p>Wrapper that performs a blocking unary call. </p>
  448. <p>May optionally specify the base class of the Request and Response so that the internal calls and structures below this may be based on those base classes and thus achieve code reuse across different RPCs (e.g., for protobuf, MessageLite would be a base class). </p>
  449. </div>
  450. </div>
  451. <a id="a735b6dbd062f455fc2c571e7ef49852d"></a>
  452. <h2 class="memtitle"><span class="permalink"><a href="#a735b6dbd062f455fc2c571e7ef49852d">&#9670;&nbsp;</a></span>CallbackUnaryCall()</h2>
  453. <div class="memitem">
  454. <div class="memproto">
  455. <div class="memtemplate">
  456. template&lt;class InputMessage , class OutputMessage , class BaseInputMessage = InputMessage, class BaseOutputMessage = OutputMessage&gt; </div>
  457. <table class="memname">
  458. <tr>
  459. <td class="memname">void grpc::internal::CallbackUnaryCall </td>
  460. <td>(</td>
  461. <td class="paramtype">::<a class="el" href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a> *&#160;</td>
  462. <td class="paramname"><em>channel</em>, </td>
  463. </tr>
  464. <tr>
  465. <td class="paramkey"></td>
  466. <td></td>
  467. <td class="paramtype">const ::<a class="el" href="classgrpc_1_1internal_1_1_rpc_method.html">grpc::internal::RpcMethod</a> &amp;&#160;</td>
  468. <td class="paramname"><em>method</em>, </td>
  469. </tr>
  470. <tr>
  471. <td class="paramkey"></td>
  472. <td></td>
  473. <td class="paramtype">::<a class="el" href="classgrpc_1_1_client_context.html">grpc::ClientContext</a> *&#160;</td>
  474. <td class="paramname"><em>context</em>, </td>
  475. </tr>
  476. <tr>
  477. <td class="paramkey"></td>
  478. <td></td>
  479. <td class="paramtype">const InputMessage *&#160;</td>
  480. <td class="paramname"><em>request</em>, </td>
  481. </tr>
  482. <tr>
  483. <td class="paramkey"></td>
  484. <td></td>
  485. <td class="paramtype">OutputMessage *&#160;</td>
  486. <td class="paramname"><em>result</em>, </td>
  487. </tr>
  488. <tr>
  489. <td class="paramkey"></td>
  490. <td></td>
  491. <td class="paramtype">std::function&lt; void(::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a>)&gt;&#160;</td>
  492. <td class="paramname"><em>on_completion</em>&#160;</td>
  493. </tr>
  494. <tr>
  495. <td></td>
  496. <td>)</td>
  497. <td></td><td></td>
  498. </tr>
  499. </table>
  500. </div><div class="memdoc">
  501. <p>Perform a callback-based unary call. </p>
  502. <p>May optionally specify the base class of the Request and Response so that the internal calls and structures below this may be based on those base classes and thus achieve code reuse across different RPCs (e.g., for protobuf, MessageLite would be a base class). TODO(vjpai): Combine as much as possible with the blocking unary call code </p>
  503. </div>
  504. </div>
  505. <a id="a161ad876dc2d4fea93dd8260a7b9b0ae"></a>
  506. <h2 class="memtitle"><span class="permalink"><a href="#a161ad876dc2d4fea93dd8260a7b9b0ae">&#9670;&nbsp;</a></span>CatchingCallback()</h2>
  507. <div class="memitem">
  508. <div class="memproto">
  509. <div class="memtemplate">
  510. template&lt;class Func , class... Args&gt; </div>
  511. <table class="memname">
  512. <tr>
  513. <td class="memname">void grpc::internal::CatchingCallback </td>
  514. <td>(</td>
  515. <td class="paramtype">Func &amp;&amp;&#160;</td>
  516. <td class="paramname"><em>func</em>, </td>
  517. </tr>
  518. <tr>
  519. <td class="paramkey"></td>
  520. <td></td>
  521. <td class="paramtype">Args &amp;&amp;...&#160;</td>
  522. <td class="paramname"><em>args</em>&#160;</td>
  523. </tr>
  524. <tr>
  525. <td></td>
  526. <td>)</td>
  527. <td></td><td></td>
  528. </tr>
  529. </table>
  530. </div><div class="memdoc">
  531. <p>An exception-safe way of invoking a user-specified callback function. </p>
  532. </div>
  533. </div>
  534. <a id="ad4821faf2ca99439a11458d52ce9717d"></a>
  535. <h2 class="memtitle"><span class="permalink"><a href="#ad4821faf2ca99439a11458d52ce9717d">&#9670;&nbsp;</a></span>CatchingFunctionHandler()</h2>
  536. <div class="memitem">
  537. <div class="memproto">
  538. <div class="memtemplate">
  539. template&lt;class Callable &gt; </div>
  540. <table class="memname">
  541. <tr>
  542. <td class="memname">::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a> grpc::internal::CatchingFunctionHandler </td>
  543. <td>(</td>
  544. <td class="paramtype">Callable &amp;&amp;&#160;</td>
  545. <td class="paramname"><em>handler</em></td><td>)</td>
  546. <td></td>
  547. </tr>
  548. </table>
  549. </div><div class="memdoc">
  550. </div>
  551. </div>
  552. <a id="a7015d612ccec586d33e7afb77e8e515e"></a>
  553. <h2 class="memtitle"><span class="permalink"><a href="#a7015d612ccec586d33e7afb77e8e515e">&#9670;&nbsp;</a></span>CatchingReactorGetter()</h2>
  554. <div class="memitem">
  555. <div class="memproto">
  556. <div class="memtemplate">
  557. template&lt;class Reactor , class Func , class... Args&gt; </div>
  558. <table class="memname">
  559. <tr>
  560. <td class="memname">Reactor* grpc::internal::CatchingReactorGetter </td>
  561. <td>(</td>
  562. <td class="paramtype">Func &amp;&amp;&#160;</td>
  563. <td class="paramname"><em>func</em>, </td>
  564. </tr>
  565. <tr>
  566. <td class="paramkey"></td>
  567. <td></td>
  568. <td class="paramtype">Args &amp;&amp;...&#160;</td>
  569. <td class="paramname"><em>args</em>&#160;</td>
  570. </tr>
  571. <tr>
  572. <td></td>
  573. <td>)</td>
  574. <td></td><td></td>
  575. </tr>
  576. </table>
  577. </div><div class="memdoc">
  578. </div>
  579. </div>
  580. <a id="afe335baaab1295b3bcab679d94cc3b1f"></a>
  581. <h2 class="memtitle"><span class="permalink"><a href="#afe335baaab1295b3bcab679d94cc3b1f">&#9670;&nbsp;</a></span>FillMetadataArray()</h2>
  582. <div class="memitem">
  583. <div class="memproto">
  584. <table class="mlabels">
  585. <tr>
  586. <td class="mlabels-left">
  587. <table class="memname">
  588. <tr>
  589. <td class="memname"><a class="el" href="structgrpc__metadata.html">grpc_metadata</a>* grpc::internal::FillMetadataArray </td>
  590. <td>(</td>
  591. <td class="paramtype">const std::multimap&lt; std::string, std::string &gt; &amp;&#160;</td>
  592. <td class="paramname"><em>metadata</em>, </td>
  593. </tr>
  594. <tr>
  595. <td class="paramkey"></td>
  596. <td></td>
  597. <td class="paramtype">size_t *&#160;</td>
  598. <td class="paramname"><em>metadata_count</em>, </td>
  599. </tr>
  600. <tr>
  601. <td class="paramkey"></td>
  602. <td></td>
  603. <td class="paramtype">const std::string &amp;&#160;</td>
  604. <td class="paramname"><em>optional_error_details</em>&#160;</td>
  605. </tr>
  606. <tr>
  607. <td></td>
  608. <td>)</td>
  609. <td></td><td></td>
  610. </tr>
  611. </table>
  612. </td>
  613. <td class="mlabels-right">
  614. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  615. </tr>
  616. </table>
  617. </div><div class="memdoc">
  618. </div>
  619. </div>
  620. <a id="a880688aa33263954a48b10e1b6b7d531"></a>
  621. <h2 class="memtitle"><span class="permalink"><a href="#a880688aa33263954a48b10e1b6b7d531">&#9670;&nbsp;</a></span>UnaryDeserializeHelper()</h2>
  622. <div class="memitem">
  623. <div class="memproto">
  624. <div class="memtemplate">
  625. template&lt;class RequestType &gt; </div>
  626. <table class="memname">
  627. <tr>
  628. <td class="memname">void * grpc::internal::UnaryDeserializeHelper </td>
  629. <td>(</td>
  630. <td class="paramtype"><a class="el" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *&#160;</td>
  631. <td class="paramname"><em>call</em>, </td>
  632. </tr>
  633. <tr>
  634. <td class="paramkey"></td>
  635. <td></td>
  636. <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
  637. <td class="paramname"><em>req</em>, </td>
  638. </tr>
  639. <tr>
  640. <td class="paramkey"></td>
  641. <td></td>
  642. <td class="paramtype">::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a> *&#160;</td>
  643. <td class="paramname"><em>status</em>, </td>
  644. </tr>
  645. <tr>
  646. <td class="paramkey"></td>
  647. <td></td>
  648. <td class="paramtype">RequestType *&#160;</td>
  649. <td class="paramname"><em>request</em>&#160;</td>
  650. </tr>
  651. <tr>
  652. <td></td>
  653. <td>)</td>
  654. <td></td><td></td>
  655. </tr>
  656. </table>
  657. </div><div class="memdoc">
  658. <p>A helper function with reduced templating to do deserializing. </p>
  659. </div>
  660. </div>
  661. <a id="ada25a94a916a04aa100b5f4bea4996e7"></a>
  662. <h2 class="memtitle"><span class="permalink"><a href="#ada25a94a916a04aa100b5f4bea4996e7">&#9670;&nbsp;</a></span>UnaryRunHandlerHelper() <span class="overload">[1/3]</span></h2>
  663. <div class="memitem">
  664. <div class="memproto">
  665. <div class="memtemplate">
  666. template&lt;class ResponseType &gt; </div>
  667. <table class="memname">
  668. <tr>
  669. <td class="memname">void grpc::internal::UnaryRunHandlerHelper </td>
  670. <td>(</td>
  671. <td class="paramtype">const ::<a class="el" href="structgrpc_1_1internal_1_1_method_handler_1_1_handler_parameter.html">grpc::internal::MethodHandler::HandlerParameter</a> &amp;&#160;</td>
  672. <td class="paramname">, </td>
  673. </tr>
  674. <tr>
  675. <td class="paramkey"></td>
  676. <td></td>
  677. <td class="paramtype">ResponseType *&#160;</td>
  678. <td class="paramname">, </td>
  679. </tr>
  680. <tr>
  681. <td class="paramkey"></td>
  682. <td></td>
  683. <td class="paramtype">::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a> &amp;&#160;</td>
  684. <td class="paramname">&#160;</td>
  685. </tr>
  686. <tr>
  687. <td></td>
  688. <td>)</td>
  689. <td></td><td></td>
  690. </tr>
  691. </table>
  692. </div><div class="memdoc">
  693. </div>
  694. </div>
  695. <a id="a3a0fef6f7e41c25a02c5e1ac32e6cc13"></a>
  696. <h2 class="memtitle"><span class="permalink"><a href="#a3a0fef6f7e41c25a02c5e1ac32e6cc13">&#9670;&nbsp;</a></span>UnaryRunHandlerHelper() <span class="overload">[2/3]</span></h2>
  697. <div class="memitem">
  698. <div class="memproto">
  699. <div class="memtemplate">
  700. template&lt;class ResponseType &gt; </div>
  701. <table class="memname">
  702. <tr>
  703. <td class="memname">void grpc::internal::UnaryRunHandlerHelper </td>
  704. <td>(</td>
  705. <td class="paramtype">const <a class="el" href="structgrpc_1_1internal_1_1_method_handler_1_1_handler_parameter.html">MethodHandler::HandlerParameter</a> &amp;&#160;</td>
  706. <td class="paramname">, </td>
  707. </tr>
  708. <tr>
  709. <td class="paramkey"></td>
  710. <td></td>
  711. <td class="paramtype">ResponseType *&#160;</td>
  712. <td class="paramname">, </td>
  713. </tr>
  714. <tr>
  715. <td class="paramkey"></td>
  716. <td></td>
  717. <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
  718. <td class="paramname">&#160;</td>
  719. </tr>
  720. <tr>
  721. <td></td>
  722. <td>)</td>
  723. <td></td><td></td>
  724. </tr>
  725. </table>
  726. </div><div class="memdoc">
  727. </div>
  728. </div>
  729. <a id="a0b8ec49b9281d00bf216512eef67aced"></a>
  730. <h2 class="memtitle"><span class="permalink"><a href="#a0b8ec49b9281d00bf216512eef67aced">&#9670;&nbsp;</a></span>UnaryRunHandlerHelper() <span class="overload">[3/3]</span></h2>
  731. <div class="memitem">
  732. <div class="memproto">
  733. <div class="memtemplate">
  734. template&lt;class ResponseType &gt; </div>
  735. <table class="memname">
  736. <tr>
  737. <td class="memname">void grpc::internal::UnaryRunHandlerHelper </td>
  738. <td>(</td>
  739. <td class="paramtype">const <a class="el" href="structgrpc_1_1internal_1_1_method_handler_1_1_handler_parameter.html">MethodHandler::HandlerParameter</a> &amp;&#160;</td>
  740. <td class="paramname"><em>param</em>, </td>
  741. </tr>
  742. <tr>
  743. <td class="paramkey"></td>
  744. <td></td>
  745. <td class="paramtype">ResponseType *&#160;</td>
  746. <td class="paramname"><em>rsp</em>, </td>
  747. </tr>
  748. <tr>
  749. <td class="paramkey"></td>
  750. <td></td>
  751. <td class="paramtype">::<a class="el" href="classgrpc_1_1_status.html">grpc::Status</a> &amp;&#160;</td>
  752. <td class="paramname"><em>status</em>&#160;</td>
  753. </tr>
  754. <tr>
  755. <td></td>
  756. <td>)</td>
  757. <td></td><td></td>
  758. </tr>
  759. </table>
  760. </div><div class="memdoc">
  761. <p>A helper function with reduced templating to do the common work needed to actually send the server response. </p>
  762. <p>Uses non-const parameter for <a class="el" href="classgrpc_1_1_status.html" title="Did it work? If it didn&#39;t, why?">Status</a> since this should only ever be called from the end of the RunHandler method. </p>
  763. </div>
  764. </div>
  765. <h2 class="groupheader">Variable Documentation</h2>
  766. <a id="a6d0efed83b2ed7bd6f5b07e44ea3689e"></a>
  767. <h2 class="memtitle"><span class="permalink"><a href="#a6d0efed83b2ed7bd6f5b07e44ea3689e">&#9670;&nbsp;</a></span>g_global_client_interceptor_factory</h2>
  768. <div class="memitem">
  769. <div class="memproto">
  770. <table class="memname">
  771. <tr>
  772. <td class="memname"><a class="el" href="classgrpc_1_1experimental_1_1_client_interceptor_factory_interface.html">experimental::ClientInterceptorFactoryInterface</a>* grpc::internal::g_global_client_interceptor_factory</td>
  773. </tr>
  774. </table>
  775. </div><div class="memdoc">
  776. </div>
  777. </div>
  778. <a id="a03c479d490933087ab7058153a50c4d8"></a>
  779. <h2 class="memtitle"><span class="permalink"><a href="#a03c479d490933087ab7058153a50c4d8">&#9670;&nbsp;</a></span>kBinaryErrorDetailsKey</h2>
  780. <div class="memitem">
  781. <div class="memproto">
  782. <table class="memname">
  783. <tr>
  784. <td class="memname">const char grpc::internal::kBinaryErrorDetailsKey[] = &quot;grpc-status-details-bin&quot;</td>
  785. </tr>
  786. </table>
  787. </div><div class="memdoc">
  788. </div>
  789. </div>
  790. </div><!-- contents -->
  791. <!-- start footer part -->
  792. <hr class="footer"/><address class="footer"><small>
  793. Generated on Wed Mar 3 2021 19:17:25 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
  794. <img class="footer" src="doxygen.png" alt="doxygen"/>
  795. </a> 1.8.17
  796. </small></address>
  797. </body>
  798. </html>